diff --git a/eng/versioning/version_client.txt b/eng/versioning/version_client.txt
index 694297710069..d4ddc5355d29 100644
--- a/eng/versioning/version_client.txt
+++ b/eng/versioning/version_client.txt
@@ -280,7 +280,7 @@ com.azure.resourcemanager:azure-resourcemanager-appplatform;2.51.0;2.52.0-beta.1
com.azure.resourcemanager:azure-resourcemanager-appservice;2.56.0;2.57.0-beta.1
com.azure.resourcemanager:azure-resourcemanager-authorization;2.53.11;2.54.0-beta.2
com.azure.resourcemanager:azure-resourcemanager-cdn;2.53.9;2.54.0-beta.1
-com.azure.resourcemanager:azure-resourcemanager-compute;2.59.0;2.60.0-beta.1
+com.azure.resourcemanager:azure-resourcemanager-compute;2.59.0;2.60.0
com.azure.resourcemanager:azure-resourcemanager-containerinstance;2.53.12;2.54.0-beta.1
com.azure.resourcemanager:azure-resourcemanager-containerregistry;2.55.3;2.56.0-beta.3
com.azure.resourcemanager:azure-resourcemanager-containerservice;2.62.0;2.63.0-beta.2
diff --git a/sdk/compute/azure-resourcemanager-compute/CHANGELOG.md b/sdk/compute/azure-resourcemanager-compute/CHANGELOG.md
index 4ba7944d10a9..9840e4dd1aee 100644
--- a/sdk/compute/azure-resourcemanager-compute/CHANGELOG.md
+++ b/sdk/compute/azure-resourcemanager-compute/CHANGELOG.md
@@ -1,14 +1,125 @@
# Release History
-## 2.60.0-beta.1 (Unreleased)
+## 2.60.0 (2026-08-12)
+
+- Package api-version Compute: 2026-04-01, ComputeDisk: 2026-03-02, ComputeGallery: 2025-12-03, ComputeSku: 2021-07-01.
### Features Added
-### Breaking Changes
+* `models.CapacityReservationType` was added
-### Bugs Fixed
+* `models.UrgencyLevel` was added
-### Other Changes
+* `models.CapacityReservationStateInfo` was added
+
+* `models.DiskAvailabilityPolicy` was added
+
+* `models.ExtensionFeatureTag` was added
+
+* `models.MigrateVMAvailabilityZoneInput` was added
+
+* `models.ExtensionFeatureMetadata` was added
+
+* `models.VirtualMachineDiskNetworkAccessPolicy` was added
+
+* `models.ListVersionsExpandOptions` was added
+
+* `models.VirtualMachineDiskProperties` was added
+
+* `models.ReservationState` was added
+
+* `models.ProcessorMode` was added
+
+* `models.RunProfile` was added
+
+* `models.VirtualMachineDiskDelayAction` was added
+
+* `models.DiskApiVersion` was added
+
+* `models.ReleaseCategory` was added
+
+* `models.AdditionalDiskProperties` was added
+
+#### `models.VirtualMachineScaleSetStorageProfile` was modified
+
+* `diskApiVersion()` was added
+* `withDiskApiVersion(models.DiskApiVersion)` was added
+
+#### `models.ScheduleProfile` was modified
+
+* `withMinimumCommitmentDays(java.lang.Integer)` was added
+* `modifiableUntil()` was added
+* `minimumCommitmentDays()` was added
+
+#### `models.VirtualMachineScaleSetHardwareProfile` was modified
+
+* `processorMode()` was added
+* `withProcessorMode(models.ProcessorMode)` was added
+
+#### `models.VirtualMachinePriorityTypes` was modified
+
+* `SPOT_PLUS` was added
+
+#### `models.StorageProfile` was modified
+
+* `diskApiVersion()` was added
+* `withDiskApiVersion(models.DiskApiVersion)` was added
+
+#### `models.VirtualMachineScaleSetIpTag` was modified
+
+* `withFirstPartyServiceTagId(java.lang.String)` was added
+* `firstPartyServiceTagId()` was added
+
+#### `models.VirtualMachineScaleSetUpdateStorageProfile` was modified
+
+* `diskApiVersion()` was added
+* `withDiskApiVersion(models.DiskApiVersion)` was added
+
+#### `models.CapacityReservationInstanceViewWithName` was modified
+
+* `reservationStateInfo()` was added
+
+#### `models.HostEndpointSettings` was modified
+
+* `withUseLocalFileRules(java.lang.Boolean)` was added
+* `useLocalFileRules()` was added
+
+#### `models.CapacityReservationProfile` was modified
+
+* `disableCapacityReservationAssignment()` was added
+* `withDisableCapacityReservationAssignment(java.lang.Boolean)` was added
+
+#### `models.CapacityReservationInstanceView` was modified
+
+* `reservationStateInfo()` was added
+
+#### `models.VirtualMachineScaleSetManagedDiskParameters` was modified
+
+* `additionalDiskProperties()` was added
+* `withAdditionalDiskProperties(models.AdditionalDiskProperties)` was added
+
+#### `models.ReservationType` was modified
+
+* `OPEN` was added
+
+#### `models.VirtualMachineIpTag` was modified
+
+* `firstPartyServiceTagId()` was added
+* `withFirstPartyServiceTagId(java.lang.String)` was added
+
+#### `models.CapacityReservationUtilization` was modified
+
+* `usedReservedCountBySubscription()` was added
+
+#### `models.ManagedDiskParameters` was modified
+
+* `additionalDiskProperties()` was added
+* `withAdditionalDiskProperties(models.AdditionalDiskProperties)` was added
+
+#### `models.HardwareProfile` was modified
+
+* `withProcessorMode(models.ProcessorMode)` was added
+* `processorMode()` was added
## 2.59.0 (2026-07-15)
diff --git a/sdk/compute/azure-resourcemanager-compute/README.md b/sdk/compute/azure-resourcemanager-compute/README.md
index 95e797d5b687..704d6dea48d7 100644
--- a/sdk/compute/azure-resourcemanager-compute/README.md
+++ b/sdk/compute/azure-resourcemanager-compute/README.md
@@ -18,7 +18,7 @@ For documentation on how to use this package, please see [Azure Management Libra
com.azure.resourcemanager
azure-resourcemanager-compute
- 2.59.0
+ 2.60.0
```
[//]: # ({x-version-update-end})
diff --git a/sdk/compute/azure-resourcemanager-compute/pom.xml b/sdk/compute/azure-resourcemanager-compute/pom.xml
index dcb8f06b654b..ab84d8edcfe4 100644
--- a/sdk/compute/azure-resourcemanager-compute/pom.xml
+++ b/sdk/compute/azure-resourcemanager-compute/pom.xml
@@ -14,7 +14,7 @@
com.azure.resourcemanager
azure-resourcemanager-compute
- 2.60.0-beta.1
+ 2.60.0
jar
Microsoft Azure SDK for Compute Management
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/CapacityReservationsClient.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/CapacityReservationsClient.java
index 4bac994a8ebd..99494fb3191b 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/CapacityReservationsClient.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/CapacityReservationsClient.java
@@ -339,8 +339,11 @@ CapacityReservationInner update(String resourceGroupName, String capacityReserva
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -357,8 +360,11 @@ Mono>> deleteWithResponseAsync(String resourceGroupNam
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -375,8 +381,11 @@ PollerFlux, Void> beginDeleteAsync(String resourceGroupName, St
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -393,8 +402,11 @@ SyncPoller, Void> beginDelete(String resourceGroupName, String
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -412,8 +424,11 @@ SyncPoller, Void> beginDelete(String resourceGroupName, String
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -430,8 +445,11 @@ Mono deleteAsync(String resourceGroupName, String capacityReservationGroup
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -446,8 +464,11 @@ Mono deleteAsync(String resourceGroupName, String capacityReservationGroup
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/ComputeManagementClient.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/ComputeManagementClient.java
index be77de2726aa..17bc1efcd1d3 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/ComputeManagementClient.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/ComputeManagementClient.java
@@ -179,6 +179,20 @@ public interface ComputeManagementClient {
*/
VirtualMachineScaleSetVMRunCommandsClient getVirtualMachineScaleSetVMRunCommands();
+ /**
+ * Gets the VirtualMachineDiagnosticRunCommandsClient object to access its operations.
+ *
+ * @return the VirtualMachineDiagnosticRunCommandsClient object.
+ */
+ VirtualMachineDiagnosticRunCommandsClient getVirtualMachineDiagnosticRunCommands();
+
+ /**
+ * Gets the VirtualMachineScaleSetVMDiagnosticRunCommandsClient object to access its operations.
+ *
+ * @return the VirtualMachineScaleSetVMDiagnosticRunCommandsClient object.
+ */
+ VirtualMachineScaleSetVMDiagnosticRunCommandsClient getVirtualMachineScaleSetVMDiagnosticRunCommands();
+
/**
* Gets the DisksClient object to access its operations.
*
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineDiagnosticRunCommandsClient.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineDiagnosticRunCommandsClient.java
new file mode 100644
index 000000000000..3fb70434468a
--- /dev/null
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineDiagnosticRunCommandsClient.java
@@ -0,0 +1,474 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.compute.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.compute.fluent.models.VirtualMachineDiagnosticRunCommandInner;
+import com.azure.resourcemanager.compute.models.VirtualMachineRunCommandUpdate;
+import java.nio.ByteBuffer;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+
+/**
+ * An instance of this class provides access to all the operations defined in VirtualMachineDiagnosticRunCommandsClient.
+ */
+public interface VirtualMachineDiagnosticRunCommandsClient {
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param expand The expand expression to apply on the operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono> getByVirtualMachineWithResponseAsync(
+ String resourceGroupName, String vmName, String runCommandName, String expand);
+
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono getByVirtualMachineAsync(String resourceGroupName, String vmName,
+ String runCommandName);
+
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param expand The expand expression to apply on the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByVirtualMachineWithResponse(String resourceGroupName,
+ String vmName, String runCommandName, String expand, Context context);
+
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VirtualMachineDiagnosticRunCommandInner getByVirtualMachine(String resourceGroupName, String vmName,
+ String runCommandName);
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> createOrUpdateWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginCreateOrUpdateAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginCreateOrUpdate(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginCreateOrUpdate(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand, Context context);
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono createOrUpdateAsync(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void createOrUpdate(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void createOrUpdate(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand, Context context);
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> updateWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginUpdateAsync(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand, Context context);
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono updateAsync(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void update(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void update(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand, Context context);
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> deleteWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName);
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String vmName, String runCommandName);
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String vmName, String runCommandName);
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String vmName, String runCommandName,
+ Context context);
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono deleteAsync(String resourceGroupName, String vmName, String runCommandName);
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String vmName, String runCommandName);
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String vmName, String runCommandName, Context context);
+
+ /**
+ * The operation to get all diagnostic run commands of a Virtual Machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param expand The expand expression to apply on the operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List diagnostic run command operation response as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux diagnosticListByVirtualMachineAsync(String resourceGroupName,
+ String vmName, String expand);
+
+ /**
+ * The operation to get all diagnostic run commands of a Virtual Machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List diagnostic run command operation response as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux diagnosticListByVirtualMachineAsync(String resourceGroupName,
+ String vmName);
+
+ /**
+ * The operation to get all diagnostic run commands of a Virtual Machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List diagnostic run command operation response as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable diagnosticListByVirtualMachine(String resourceGroupName,
+ String vmName);
+
+ /**
+ * The operation to get all diagnostic run commands of a Virtual Machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param expand The expand expression to apply on the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List diagnostic run command operation response as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable diagnosticListByVirtualMachine(String resourceGroupName,
+ String vmName, String expand, Context context);
+}
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineExtensionImagesClient.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineExtensionImagesClient.java
index f741e22f3519..94421c3bf7bc 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineExtensionImagesClient.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineExtensionImagesClient.java
@@ -9,6 +9,7 @@
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
import com.azure.resourcemanager.compute.fluent.models.VirtualMachineExtensionImageInner;
+import com.azure.resourcemanager.compute.models.ListVersionsExpandOptions;
import java.util.List;
import reactor.core.publisher.Mono;
@@ -136,6 +137,28 @@ Response> listTypesWithResponse(String l
@ServiceMethod(returns = ReturnType.SINGLE)
List listTypes(String location, String publisherName);
+ /**
+ * Gets a list of virtual machine extension image versions.
+ *
+ * @param location The name of the Azure region.
+ * @param publisherName The publisherName parameter.
+ * @param type The type parameter.
+ * @param filter The filter to apply on the operation.
+ * @param top The top parameter.
+ * @param orderby The orderby parameter.
+ * @param expand Expand the response to include additional read-only metadata. Allowed values: `properties` —
+ * returns extended metadata (`releaseCategory`, `urgencyLevel`, `runProfile`).
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of virtual machine extension image versions along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> listVersionsWithResponseAsync(String location,
+ String publisherName, String type, String filter, Integer top, String orderby,
+ ListVersionsExpandOptions expand);
+
/**
* Gets a list of virtual machine extension image versions.
*
@@ -169,6 +192,27 @@ Mono>> listVersionsWithResponse
@ServiceMethod(returns = ReturnType.SINGLE)
Mono> listVersionsAsync(String location, String publisherName, String type);
+ /**
+ * Gets a list of virtual machine extension image versions.
+ *
+ * @param location The name of the Azure region.
+ * @param publisherName The publisherName parameter.
+ * @param type The type parameter.
+ * @param filter The filter to apply on the operation.
+ * @param top The top parameter.
+ * @param orderby The orderby parameter.
+ * @param expand Expand the response to include additional read-only metadata. Allowed values: `properties` —
+ * returns extended metadata (`releaseCategory`, `urgencyLevel`, `runProfile`).
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of virtual machine extension image versions along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response> listVersionsWithResponse(String location, String publisherName,
+ String type, String filter, Integer top, String orderby, ListVersionsExpandOptions expand, Context context);
+
/**
* Gets a list of virtual machine extension image versions.
*
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineScaleSetVMDiagnosticRunCommandsClient.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineScaleSetVMDiagnosticRunCommandsClient.java
new file mode 100644
index 000000000000..d92df5c57af2
--- /dev/null
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineScaleSetVMDiagnosticRunCommandsClient.java
@@ -0,0 +1,507 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.compute.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.compute.fluent.models.VirtualMachineDiagnosticRunCommandInner;
+import com.azure.resourcemanager.compute.models.VirtualMachineRunCommandUpdate;
+import java.nio.ByteBuffer;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+
+/**
+ * An instance of this class provides access to all the operations defined in
+ * VirtualMachineScaleSetVMDiagnosticRunCommandsClient.
+ */
+public interface VirtualMachineScaleSetVMDiagnosticRunCommandsClient {
+ /**
+ * The operation to get the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param expand The expand expression to apply on the operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono> getWithResponseAsync(String resourceGroupName,
+ String vmScaleSetName, String instanceId, String runCommandName, String expand);
+
+ /**
+ * The operation to get the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono getAsync(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName);
+
+ /**
+ * The operation to get the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param expand The expand expression to apply on the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName, String expand, Context context);
+
+ /**
+ * The operation to get the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VirtualMachineDiagnosticRunCommandInner get(String resourceGroupName, String vmScaleSetName, String instanceId,
+ String runCommandName);
+
+ /**
+ * The operation to create or update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> createOrUpdateWithResponseAsync(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginCreateOrUpdateAsync(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginCreateOrUpdate(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginCreateOrUpdate(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand, Context context);
+
+ /**
+ * The operation to create or update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono createOrUpdateAsync(String resourceGroupName, String vmScaleSetName, String instanceId,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void createOrUpdate(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand);
+
+ /**
+ * The operation to create or update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void createOrUpdate(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand, Context context);
+
+ /**
+ * The operation to update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Resource create parameters.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> updateWithResponseAsync(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName, VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Resource create parameters.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginUpdateAsync(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName, VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Resource create parameters.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String vmScaleSetName, String instanceId,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Resource create parameters.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String vmScaleSetName, String instanceId,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand, Context context);
+
+ /**
+ * The operation to update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Resource create parameters.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono updateAsync(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Resource create parameters.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void update(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand);
+
+ /**
+ * The operation to update the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Resource create parameters.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void update(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand, Context context);
+
+ /**
+ * The operation to delete the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> deleteWithResponseAsync(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName);
+
+ /**
+ * The operation to delete the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String vmScaleSetName,
+ String instanceId, String runCommandName);
+
+ /**
+ * The operation to delete the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String vmScaleSetName, String instanceId,
+ String runCommandName);
+
+ /**
+ * The operation to delete the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String vmScaleSetName, String instanceId,
+ String runCommandName, Context context);
+
+ /**
+ * The operation to delete the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono deleteAsync(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName);
+
+ /**
+ * The operation to delete the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName);
+
+ /**
+ * The operation to delete the VMSS VM diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String vmScaleSetName, String instanceId, String runCommandName,
+ Context context);
+
+ /**
+ * The operation to get all diagnostic run commands of an instance in Virtual Machine Scaleset.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param expand The expand expression to apply on the operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List diagnostic run command operation response as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux diagnosticListAsync(String resourceGroupName,
+ String vmScaleSetName, String instanceId, String expand);
+
+ /**
+ * The operation to get all diagnostic run commands of an instance in Virtual Machine Scaleset.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List diagnostic run command operation response as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedFlux diagnosticListAsync(String resourceGroupName,
+ String vmScaleSetName, String instanceId);
+
+ /**
+ * The operation to get all diagnostic run commands of an instance in Virtual Machine Scaleset.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List diagnostic run command operation response as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable diagnosticList(String resourceGroupName,
+ String vmScaleSetName, String instanceId);
+
+ /**
+ * The operation to get all diagnostic run commands of an instance in Virtual Machine Scaleset.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VirtualMachineScaleSet.
+ * @param instanceId The name of the VirtualMachineScaleSetVM.
+ * @param expand The expand expression to apply on the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List diagnostic run command operation response as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable diagnosticList(String resourceGroupName,
+ String vmScaleSetName, String instanceId, String expand, Context context);
+}
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineScaleSetsClient.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineScaleSetsClient.java
index 8b397c2bac9a..66ba8253d510 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineScaleSetsClient.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/VirtualMachineScaleSetsClient.java
@@ -19,6 +19,7 @@
import com.azure.resourcemanager.compute.fluent.models.VirtualMachineScaleSetInstanceViewInner;
import com.azure.resourcemanager.compute.fluent.models.VirtualMachineScaleSetSkuInner;
import com.azure.resourcemanager.compute.models.ExpandTypesForGetVMScaleSets;
+import com.azure.resourcemanager.compute.models.MigrateVMAvailabilityZoneInput;
import com.azure.resourcemanager.compute.models.OrchestrationServiceStateInput;
import com.azure.resourcemanager.compute.models.VMScaleSetConvertToSinglePlacementGroupInput;
import com.azure.resourcemanager.compute.models.VMScaleSetScaleOutInput;
@@ -2678,6 +2679,111 @@ SyncPoller, Void> beginScaleOut(String resourceGroupName, Strin
@ServiceMethod(returns = ReturnType.SINGLE)
void scaleOut(String resourceGroupName, String vmScaleSetName, VMScaleSetScaleOutInput parameters, Context context);
+ /**
+ * Migrates one or more virtual machines in a VM scale set to an availability zone.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param body The input object for the MigrateVMAvailabilityZone API.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono>> migrateVMAvailabilityZoneWithResponseAsync(String resourceGroupName,
+ String vmScaleSetName, MigrateVMAvailabilityZoneInput body);
+
+ /**
+ * Migrates one or more virtual machines in a VM scale set to an availability zone.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param body The input object for the MigrateVMAvailabilityZone API.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ PollerFlux, Void> beginMigrateVMAvailabilityZoneAsync(String resourceGroupName,
+ String vmScaleSetName, MigrateVMAvailabilityZoneInput body);
+
+ /**
+ * Migrates one or more virtual machines in a VM scale set to an availability zone.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param body The input object for the MigrateVMAvailabilityZone API.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginMigrateVMAvailabilityZone(String resourceGroupName, String vmScaleSetName,
+ MigrateVMAvailabilityZoneInput body);
+
+ /**
+ * Migrates one or more virtual machines in a VM scale set to an availability zone.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param body The input object for the MigrateVMAvailabilityZone API.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginMigrateVMAvailabilityZone(String resourceGroupName, String vmScaleSetName,
+ MigrateVMAvailabilityZoneInput body, Context context);
+
+ /**
+ * Migrates one or more virtual machines in a VM scale set to an availability zone.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param body The input object for the MigrateVMAvailabilityZone API.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return A {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Mono migrateVMAvailabilityZoneAsync(String resourceGroupName, String vmScaleSetName,
+ MigrateVMAvailabilityZoneInput body);
+
+ /**
+ * Migrates one or more virtual machines in a VM scale set to an availability zone.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param body The input object for the MigrateVMAvailabilityZone API.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void migrateVMAvailabilityZone(String resourceGroupName, String vmScaleSetName,
+ MigrateVMAvailabilityZoneInput body);
+
+ /**
+ * Migrates one or more virtual machines in a VM scale set to an availability zone.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmScaleSetName The name of the VM scale set.
+ * @param body The input object for the MigrateVMAvailabilityZone API.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.compute.models.ApiErrorException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void migrateVMAvailabilityZone(String resourceGroupName, String vmScaleSetName, MigrateVMAvailabilityZoneInput body,
+ Context context);
+
/**
* Gets all the VM scale sets under the specified subscription for the specified location.
*
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationGroupInner.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationGroupInner.java
index 16ebe4c971e6..c257d59e3ba3 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationGroupInner.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationGroupInner.java
@@ -210,9 +210,13 @@ public CapacityReservationGroupInner withSharingProfile(ResourceSharingProfile s
/**
* Get the reservationType property: Indicates the type of capacity reservation. Allowed values are 'Block' for
- * block capacity reservations and 'Targeted' for reservations that enable a VM to consume a specific capacity
- * reservation when a capacity reservation group is provided. The reservation type is immutable and cannot be
- * changed after it is assigned.
+ * block capacity reservations that enable a VM to consume capacity only from this capacity block when it is
+ * associated using a capacity reservation group, 'Targeted' for reservations that enable a VM to consume capacity
+ * from an explicitly associated capacity reservation group and fall back to the publicly available capacity if the
+ * reservation is full, and 'Open' for reservations that a VM consumes when it is eligible from an implicitly
+ * associated capacity reservation group with the matching VM size and zone without associating that capacity
+ * reservation group and fall back to the publicly available capacity if the reservation is full. The reservation
+ * type is immutable and cannot be changed after the capacity reservation group is created.
*
* @return the reservationType value.
*/
@@ -222,9 +226,13 @@ public ReservationType reservationType() {
/**
* Set the reservationType property: Indicates the type of capacity reservation. Allowed values are 'Block' for
- * block capacity reservations and 'Targeted' for reservations that enable a VM to consume a specific capacity
- * reservation when a capacity reservation group is provided. The reservation type is immutable and cannot be
- * changed after it is assigned.
+ * block capacity reservations that enable a VM to consume capacity only from this capacity block when it is
+ * associated using a capacity reservation group, 'Targeted' for reservations that enable a VM to consume capacity
+ * from an explicitly associated capacity reservation group and fall back to the publicly available capacity if the
+ * reservation is full, and 'Open' for reservations that a VM consumes when it is eligible from an implicitly
+ * associated capacity reservation group with the matching VM size and zone without associating that capacity
+ * reservation group and fall back to the publicly available capacity if the reservation is full. The reservation
+ * type is immutable and cannot be changed after the capacity reservation group is created.
*
* @param reservationType the reservationType value to set.
* @return the CapacityReservationGroupInner object itself.
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationGroupProperties.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationGroupProperties.java
index 6b829cab3d71..bf3a64706640 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationGroupProperties.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationGroupProperties.java
@@ -47,9 +47,14 @@ public final class CapacityReservationGroupProperties implements JsonSerializabl
private ResourceSharingProfile sharingProfile;
/*
- * Indicates the type of capacity reservation. Allowed values are 'Block' for block capacity reservations and
- * 'Targeted' for reservations that enable a VM to consume a specific capacity reservation when a capacity
- * reservation group is provided. The reservation type is immutable and cannot be changed after it is assigned.
+ * Indicates the type of capacity reservation. Allowed values are 'Block' for block capacity reservations that
+ * enable a VM to consume capacity only from this capacity block when it is associated using a capacity reservation
+ * group, 'Targeted' for reservations that enable a VM to consume capacity from an explicitly associated capacity
+ * reservation group and fall back to the publicly available capacity if the reservation is full, and 'Open' for
+ * reservations that a VM consumes when it is eligible from an implicitly associated capacity reservation group with
+ * the matching VM size and zone without associating that capacity reservation group and fall back to the publicly
+ * available capacity if the reservation is full. The reservation type is immutable and cannot be changed after the
+ * capacity reservation group is created.
*/
private ReservationType reservationType;
@@ -119,9 +124,13 @@ public CapacityReservationGroupProperties withSharingProfile(ResourceSharingProf
/**
* Get the reservationType property: Indicates the type of capacity reservation. Allowed values are 'Block' for
- * block capacity reservations and 'Targeted' for reservations that enable a VM to consume a specific capacity
- * reservation when a capacity reservation group is provided. The reservation type is immutable and cannot be
- * changed after it is assigned.
+ * block capacity reservations that enable a VM to consume capacity only from this capacity block when it is
+ * associated using a capacity reservation group, 'Targeted' for reservations that enable a VM to consume capacity
+ * from an explicitly associated capacity reservation group and fall back to the publicly available capacity if the
+ * reservation is full, and 'Open' for reservations that a VM consumes when it is eligible from an implicitly
+ * associated capacity reservation group with the matching VM size and zone without associating that capacity
+ * reservation group and fall back to the publicly available capacity if the reservation is full. The reservation
+ * type is immutable and cannot be changed after the capacity reservation group is created.
*
* @return the reservationType value.
*/
@@ -131,9 +140,13 @@ public ReservationType reservationType() {
/**
* Set the reservationType property: Indicates the type of capacity reservation. Allowed values are 'Block' for
- * block capacity reservations and 'Targeted' for reservations that enable a VM to consume a specific capacity
- * reservation when a capacity reservation group is provided. The reservation type is immutable and cannot be
- * changed after it is assigned.
+ * block capacity reservations that enable a VM to consume capacity only from this capacity block when it is
+ * associated using a capacity reservation group, 'Targeted' for reservations that enable a VM to consume capacity
+ * from an explicitly associated capacity reservation group and fall back to the publicly available capacity if the
+ * reservation is full, and 'Open' for reservations that a VM consumes when it is eligible from an implicitly
+ * associated capacity reservation group with the matching VM size and zone without associating that capacity
+ * reservation group and fall back to the publicly available capacity if the reservation is full. The reservation
+ * type is immutable and cannot be changed after the capacity reservation group is created.
*
* @param reservationType the reservationType value to set.
* @return the CapacityReservationGroupProperties object itself.
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationInner.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationInner.java
index 990496736eb1..3c01b82b247b 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationInner.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationInner.java
@@ -260,11 +260,13 @@ public OffsetDateTime timeCreated() {
}
/**
- * Get the scheduleProfile property: Defines the schedule for Block-type capacity reservations. Specifies the
+ * Get the scheduleProfile property: Defines the schedule for Block and Future capacity reservations. Specifies the
* schedule during which capacity reservation is active and VM or VMSS resource can be allocated using reservation.
- * This property is required and only supported when the capacity reservation group type is 'Block'. The
- * scheduleProfile, start, and end fields are immutable after creation. Minimum API version: 2025-04-01. Please
- * refer to https://aka.ms/blockcapacityreservation for more details.
+ * For Block capacity reservations, the scheduleProfile, start, and end fields are immutable after creation. Please
+ * refer to https://aka.ms/blockcapacityreservation for more details. Minimum API version for Block capacity
+ * reservations: 2025-04-01. Future capacity reservations must use this property with only a start time, which can
+ * be changed until the ‘modifiableUntil’ time. Please refer to https://aka.ms/futurecapacityreservation for more
+ * details. Minimum API version for Future capacity reservations: 2026-04-01.
*
* @return the scheduleProfile value.
*/
@@ -273,11 +275,13 @@ public ScheduleProfile scheduleProfile() {
}
/**
- * Set the scheduleProfile property: Defines the schedule for Block-type capacity reservations. Specifies the
+ * Set the scheduleProfile property: Defines the schedule for Block and Future capacity reservations. Specifies the
* schedule during which capacity reservation is active and VM or VMSS resource can be allocated using reservation.
- * This property is required and only supported when the capacity reservation group type is 'Block'. The
- * scheduleProfile, start, and end fields are immutable after creation. Minimum API version: 2025-04-01. Please
- * refer to https://aka.ms/blockcapacityreservation for more details.
+ * For Block capacity reservations, the scheduleProfile, start, and end fields are immutable after creation. Please
+ * refer to https://aka.ms/blockcapacityreservation for more details. Minimum API version for Block capacity
+ * reservations: 2025-04-01. Future capacity reservations must use this property with only a start time, which can
+ * be changed until the ‘modifiableUntil’ time. Please refer to https://aka.ms/futurecapacityreservation for more
+ * details. Minimum API version for Future capacity reservations: 2026-04-01.
*
* @param scheduleProfile the scheduleProfile value to set.
* @return the CapacityReservationInner object itself.
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationProperties.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationProperties.java
index 4c009ad8506c..4d3a359d25ec 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationProperties.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/CapacityReservationProperties.java
@@ -61,11 +61,13 @@ public final class CapacityReservationProperties implements JsonSerializable tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("location", location());
+ jsonWriter.writeMapField("tags", tags(), (writer, element) -> writer.writeString(element));
+ jsonWriter.writeJsonField("properties", this.properties);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of VirtualMachineDiagnosticRunCommandInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of VirtualMachineDiagnosticRunCommandInner if the JsonReader was pointing to an instance of
+ * it, or null if it was pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the VirtualMachineDiagnosticRunCommandInner.
+ */
+ public static VirtualMachineDiagnosticRunCommandInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ VirtualMachineDiagnosticRunCommandInner deserializedVirtualMachineDiagnosticRunCommandInner
+ = new VirtualMachineDiagnosticRunCommandInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedVirtualMachineDiagnosticRunCommandInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedVirtualMachineDiagnosticRunCommandInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedVirtualMachineDiagnosticRunCommandInner.type = reader.getString();
+ } else if ("location".equals(fieldName)) {
+ deserializedVirtualMachineDiagnosticRunCommandInner.withLocation(reader.getString());
+ } else if ("tags".equals(fieldName)) {
+ Map tags = reader.readMap(reader1 -> reader1.getString());
+ deserializedVirtualMachineDiagnosticRunCommandInner.withTags(tags);
+ } else if ("properties".equals(fieldName)) {
+ deserializedVirtualMachineDiagnosticRunCommandInner.properties
+ = VirtualMachineRunCommandProperties.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedVirtualMachineDiagnosticRunCommandInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedVirtualMachineDiagnosticRunCommandInner;
+ });
+ }
+}
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionImageInner.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionImageInner.java
index 624bdbef1174..e44d104ad8cc 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionImageInner.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionImageInner.java
@@ -10,6 +10,10 @@
import com.azure.json.JsonReader;
import com.azure.json.JsonToken;
import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.compute.models.ExtensionFeatureMetadata;
+import com.azure.resourcemanager.compute.models.ReleaseCategory;
+import com.azure.resourcemanager.compute.models.RunProfile;
+import com.azure.resourcemanager.compute.models.UrgencyLevel;
import java.io.IOException;
import java.util.Map;
@@ -145,6 +149,53 @@ public Boolean supportsMultipleExtensions() {
return this.innerProperties() == null ? null : this.innerProperties().supportsMultipleExtensions();
}
+ /**
+ * Get the releaseNotes property: Summary of changes or updates in this extension version.
+ *
+ * @return the releaseNotes value.
+ */
+ public String releaseNotes() {
+ return this.innerProperties() == null ? null : this.innerProperties().releaseNotes();
+ }
+
+ /**
+ * Get the releaseCategory property: Categorizes the type of change introduced (e.g., BugFix, SecurityFix,
+ * CompatibilityUpdate, NewFeature, Other).
+ *
+ * @return the releaseCategory value.
+ */
+ public ReleaseCategory releaseCategory() {
+ return this.innerProperties() == null ? null : this.innerProperties().releaseCategory();
+ }
+
+ /**
+ * Get the urgencyLevel property: Indicates the urgency level for applying this extension update.
+ *
+ * @return the urgencyLevel value.
+ */
+ public UrgencyLevel urgencyLevel() {
+ return this.innerProperties() == null ? null : this.innerProperties().urgencyLevel();
+ }
+
+ /**
+ * Get the runProfile property: Specifies when and how the extension should be executed.
+ *
+ * @return the runProfile value.
+ */
+ public RunProfile runProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().runProfile();
+ }
+
+ /**
+ * Get the extensionFeatureMetadata property: Additional metadata about extension features, including compliance and
+ * capability tags.
+ *
+ * @return the extensionFeatureMetadata value.
+ */
+ public ExtensionFeatureMetadata extensionFeatureMetadata() {
+ return this.innerProperties() == null ? null : this.innerProperties().extensionFeatureMetadata();
+ }
+
/**
* Validates the instance.
*
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionImageProperties.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionImageProperties.java
index a47cfb923002..8d69467384fc 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionImageProperties.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionImageProperties.java
@@ -10,6 +10,10 @@
import com.azure.json.JsonSerializable;
import com.azure.json.JsonToken;
import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.compute.models.ExtensionFeatureMetadata;
+import com.azure.resourcemanager.compute.models.ReleaseCategory;
+import com.azure.resourcemanager.compute.models.RunProfile;
+import com.azure.resourcemanager.compute.models.UrgencyLevel;
import java.io.IOException;
/**
@@ -45,6 +49,31 @@ public final class VirtualMachineExtensionImageProperties
*/
private Boolean supportsMultipleExtensions;
+ /*
+ * Summary of changes or updates in this extension version.
+ */
+ private String releaseNotes;
+
+ /*
+ * Categorizes the type of change introduced (e.g., BugFix, SecurityFix, CompatibilityUpdate, NewFeature, Other).
+ */
+ private ReleaseCategory releaseCategory;
+
+ /*
+ * Indicates the urgency level for applying this extension update.
+ */
+ private UrgencyLevel urgencyLevel;
+
+ /*
+ * Specifies when and how the extension should be executed.
+ */
+ private RunProfile runProfile;
+
+ /*
+ * Additional metadata about extension features, including compliance and capability tags.
+ */
+ private ExtensionFeatureMetadata extensionFeatureMetadata;
+
/**
* Creates an instance of VirtualMachineExtensionImageProperties class.
*/
@@ -99,6 +128,53 @@ public Boolean supportsMultipleExtensions() {
return this.supportsMultipleExtensions;
}
+ /**
+ * Get the releaseNotes property: Summary of changes or updates in this extension version.
+ *
+ * @return the releaseNotes value.
+ */
+ public String releaseNotes() {
+ return this.releaseNotes;
+ }
+
+ /**
+ * Get the releaseCategory property: Categorizes the type of change introduced (e.g., BugFix, SecurityFix,
+ * CompatibilityUpdate, NewFeature, Other).
+ *
+ * @return the releaseCategory value.
+ */
+ public ReleaseCategory releaseCategory() {
+ return this.releaseCategory;
+ }
+
+ /**
+ * Get the urgencyLevel property: Indicates the urgency level for applying this extension update.
+ *
+ * @return the urgencyLevel value.
+ */
+ public UrgencyLevel urgencyLevel() {
+ return this.urgencyLevel;
+ }
+
+ /**
+ * Get the runProfile property: Specifies when and how the extension should be executed.
+ *
+ * @return the runProfile value.
+ */
+ public RunProfile runProfile() {
+ return this.runProfile;
+ }
+
+ /**
+ * Get the extensionFeatureMetadata property: Additional metadata about extension features, including compliance and
+ * capability tags.
+ *
+ * @return the extensionFeatureMetadata value.
+ */
+ public ExtensionFeatureMetadata extensionFeatureMetadata() {
+ return this.extensionFeatureMetadata;
+ }
+
/**
* Validates the instance.
*
@@ -120,6 +196,9 @@ public void validate() {
.log(new IllegalArgumentException(
"Missing required property handlerSchema in model VirtualMachineExtensionImageProperties"));
}
+ if (extensionFeatureMetadata() != null) {
+ extensionFeatureMetadata().validate();
+ }
}
private static final ClientLogger LOGGER = new ClientLogger(VirtualMachineExtensionImageProperties.class);
@@ -167,6 +246,20 @@ public static VirtualMachineExtensionImageProperties fromJson(JsonReader jsonRea
} else if ("supportsMultipleExtensions".equals(fieldName)) {
deserializedVirtualMachineExtensionImageProperties.supportsMultipleExtensions
= reader.getNullable(JsonReader::getBoolean);
+ } else if ("releaseNotes".equals(fieldName)) {
+ deserializedVirtualMachineExtensionImageProperties.releaseNotes = reader.getString();
+ } else if ("releaseCategory".equals(fieldName)) {
+ deserializedVirtualMachineExtensionImageProperties.releaseCategory
+ = ReleaseCategory.fromString(reader.getString());
+ } else if ("urgencyLevel".equals(fieldName)) {
+ deserializedVirtualMachineExtensionImageProperties.urgencyLevel
+ = UrgencyLevel.fromString(reader.getString());
+ } else if ("runProfile".equals(fieldName)) {
+ deserializedVirtualMachineExtensionImageProperties.runProfile
+ = RunProfile.fromString(reader.getString());
+ } else if ("extensionFeatureMetadata".equals(fieldName)) {
+ deserializedVirtualMachineExtensionImageProperties.extensionFeatureMetadata
+ = ExtensionFeatureMetadata.fromJson(reader);
} else {
reader.skipChildren();
}
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionInner.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionInner.java
index 8042afcc0097..708826aeb316 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionInner.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionInner.java
@@ -190,7 +190,9 @@ public VirtualMachineExtensionInner withTypePropertiesType(String type) {
}
/**
- * Get the typeHandlerVersion property: Specifies the version of the script handler.
+ * Get the typeHandlerVersion property: Specifies the Major.Minor version of the script handler. Customer is able to
+ * specify only the Major.Minor version of an extension, Azure platform will deliver the latest Patch.Hotfix version
+ * in the Major.Minor series.
*
* @return the typeHandlerVersion value.
*/
@@ -199,7 +201,9 @@ public String typeHandlerVersion() {
}
/**
- * Set the typeHandlerVersion property: Specifies the version of the script handler.
+ * Set the typeHandlerVersion property: Specifies the Major.Minor version of the script handler. Customer is able to
+ * specify only the Major.Minor version of an extension, Azure platform will deliver the latest Patch.Hotfix version
+ * in the Major.Minor series.
*
* @param typeHandlerVersion the typeHandlerVersion value to set.
* @return the VirtualMachineExtensionInner object itself.
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionProperties.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionProperties.java
index 91c8b2962dd1..fccae976d6cc 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionProperties.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionProperties.java
@@ -35,7 +35,8 @@ public final class VirtualMachineExtensionProperties implements JsonSerializable
private String type;
/*
- * Specifies the version of the script handler.
+ * Specifies the Major.Minor version of the script handler. Customer is able to specify only the Major.Minor version
+ * of an extension, Azure platform will deliver the latest Patch.Hotfix version in the Major.Minor series.
*/
private String typeHandlerVersion;
@@ -158,7 +159,9 @@ public VirtualMachineExtensionProperties withType(String type) {
}
/**
- * Get the typeHandlerVersion property: Specifies the version of the script handler.
+ * Get the typeHandlerVersion property: Specifies the Major.Minor version of the script handler. Customer is able to
+ * specify only the Major.Minor version of an extension, Azure platform will deliver the latest Patch.Hotfix version
+ * in the Major.Minor series.
*
* @return the typeHandlerVersion value.
*/
@@ -167,7 +170,9 @@ public String typeHandlerVersion() {
}
/**
- * Set the typeHandlerVersion property: Specifies the version of the script handler.
+ * Set the typeHandlerVersion property: Specifies the Major.Minor version of the script handler. Customer is able to
+ * specify only the Major.Minor version of an extension, Azure platform will deliver the latest Patch.Hotfix version
+ * in the Major.Minor series.
*
* @param typeHandlerVersion the typeHandlerVersion value to set.
* @return the VirtualMachineExtensionProperties object itself.
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionUpdateProperties.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionUpdateProperties.java
index a62c291369ed..f32acb7976cd 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionUpdateProperties.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineExtensionUpdateProperties.java
@@ -34,7 +34,8 @@ public final class VirtualMachineExtensionUpdateProperties
private String type;
/*
- * Specifies the version of the script handler.
+ * Specifies the Major.Minor version of the script handler. Customer is able to specify only the Major.Minor version
+ * of an extension, Azure platform will deliver the latest Patch.Hotfix version in the Major.Minor series.
*/
private String typeHandlerVersion;
@@ -142,7 +143,9 @@ public VirtualMachineExtensionUpdateProperties withType(String type) {
}
/**
- * Get the typeHandlerVersion property: Specifies the version of the script handler.
+ * Get the typeHandlerVersion property: Specifies the Major.Minor version of the script handler. Customer is able to
+ * specify only the Major.Minor version of an extension, Azure platform will deliver the latest Patch.Hotfix version
+ * in the Major.Minor series.
*
* @return the typeHandlerVersion value.
*/
@@ -151,7 +154,9 @@ public String typeHandlerVersion() {
}
/**
- * Set the typeHandlerVersion property: Specifies the version of the script handler.
+ * Set the typeHandlerVersion property: Specifies the Major.Minor version of the script handler. Customer is able to
+ * specify only the Major.Minor version of an extension, Azure platform will deliver the latest Patch.Hotfix version
+ * in the Major.Minor series.
*
* @param typeHandlerVersion the typeHandlerVersion value to set.
* @return the VirtualMachineExtensionUpdateProperties object itself.
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineInstanceViewInner.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineInstanceViewInner.java
index 58e63b66cd54..54f0634f4c28 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineInstanceViewInner.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/fluent/models/VirtualMachineInstanceViewInner.java
@@ -10,6 +10,7 @@
import com.azure.json.JsonToken;
import com.azure.json.JsonWriter;
import com.azure.resourcemanager.compute.models.BootDiagnosticsInstanceView;
+import com.azure.resourcemanager.compute.models.CapacityReservationType;
import com.azure.resourcemanager.compute.models.DiskInstanceView;
import com.azure.resourcemanager.compute.models.HyperVGenerationType;
import com.azure.resourcemanager.compute.models.InstanceViewStatus;
@@ -121,6 +122,13 @@ public final class VirtualMachineInstanceViewInner implements JsonSerializable> getByResourceGroupWithResponseAsync(
return Mono
.error(new IllegalArgumentException("Parameter availabilitySetName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -282,7 +282,7 @@ private Mono> getByResourceGroupWithResponseAsync
return Mono
.error(new IllegalArgumentException("Parameter availabilitySetName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.getByResourceGroup(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -375,7 +375,7 @@ public Mono> createOrUpdateWithResponseAsync(Stri
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -422,7 +422,7 @@ private Mono> createOrUpdateWithResponseAsync(Str
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -521,7 +521,7 @@ public Mono> updateWithResponseAsync(String resou
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -568,7 +568,7 @@ private Mono> updateWithResponseAsync(String reso
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -659,7 +659,7 @@ public Mono> deleteWithResponseAsync(String resourceGroupName, St
return Mono
.error(new IllegalArgumentException("Parameter availabilitySetName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, availabilitySetName, context))
@@ -696,7 +696,7 @@ private Mono> deleteWithResponseAsync(String resourceGroupName, S
return Mono
.error(new IllegalArgumentException("Parameter availabilitySetName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
availabilitySetName, context);
@@ -771,7 +771,7 @@ private Mono> listByResourceGroupSinglePageA
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -807,7 +807,7 @@ private Mono> listByResourceGroupSinglePageA
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -897,7 +897,7 @@ private Mono> listSinglePageAsync(String exp
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -928,7 +928,7 @@ private Mono> listSinglePageAsync(String exp
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -1041,7 +1041,7 @@ private Mono> listAvailableSizesSinglePag
return Mono
.error(new IllegalArgumentException("Parameter availabilitySetName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listAvailableSizes(this.client.getEndpoint(), apiVersion,
@@ -1083,7 +1083,7 @@ private Mono> listAvailableSizesSinglePag
return Mono
.error(new IllegalArgumentException("Parameter availabilitySetName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -1202,7 +1202,7 @@ public Mono> startMigrationToVirtualMachineScaleSetWithResponseAs
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
return FluxUtil
.withContext(context -> service.startMigrationToVirtualMachineScaleSet(this.client.getEndpoint(),
@@ -1249,7 +1249,7 @@ private Mono> startMigrationToVirtualMachineScaleSetWithResponseA
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
context = this.client.mergeContext(context);
return service.startMigrationToVirtualMachineScaleSet(this.client.getEndpoint(), apiVersion,
@@ -1345,7 +1345,7 @@ public Mono> cancelMigrationToVirtualMachineScaleSetWithResponseA
return Mono
.error(new IllegalArgumentException("Parameter availabilitySetName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.cancelMigrationToVirtualMachineScaleSet(this.client.getEndpoint(),
apiVersion, this.client.getSubscriptionId(), resourceGroupName, availabilitySetName, context))
@@ -1382,7 +1382,7 @@ private Mono> cancelMigrationToVirtualMachineScaleSetWithResponse
return Mono
.error(new IllegalArgumentException("Parameter availabilitySetName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.cancelMigrationToVirtualMachineScaleSet(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, availabilitySetName, context);
@@ -1473,7 +1473,7 @@ public Mono> validateMigrationToVirtualMachineScaleSetWithRespons
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
return FluxUtil
.withContext(context -> service.validateMigrationToVirtualMachineScaleSet(this.client.getEndpoint(),
@@ -1519,7 +1519,7 @@ private Mono> validateMigrationToVirtualMachineScaleSetWithRespon
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
context = this.client.mergeContext(context);
return service.validateMigrationToVirtualMachineScaleSet(this.client.getEndpoint(), apiVersion,
@@ -1617,7 +1617,7 @@ public Mono>> convertToVirtualMachineScaleSetWithRespo
if (parameters != null) {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.convertToVirtualMachineScaleSet(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, availabilitySetName, parameters, context))
@@ -1659,7 +1659,7 @@ private Mono>> convertToVirtualMachineScaleSetWithResp
if (parameters != null) {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.convertToVirtualMachineScaleSet(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, availabilitySetName, parameters, context);
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/CapacityReservationGroupsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/CapacityReservationGroupsClientImpl.java
index 1d14c801bfef..4356a1816308 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/CapacityReservationGroupsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/CapacityReservationGroupsClientImpl.java
@@ -185,7 +185,7 @@ public Mono> getByResourceGroupWithRespo
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil.withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, capacityReservationGroupName, expand, accept, context))
@@ -227,7 +227,7 @@ private Mono> getByResourceGroupWithResp
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.getByResourceGroup(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -332,7 +332,7 @@ public Mono> createOrUpdateWithResponseA
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -380,7 +380,7 @@ private Mono> createOrUpdateWithResponse
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -486,7 +486,7 @@ public Mono> updateWithResponseAsync(Str
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -534,7 +534,7 @@ private Mono> updateWithResponseAsync(St
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -631,7 +631,7 @@ public Mono> deleteWithResponseAsync(String resourceGroupName, St
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, capacityReservationGroupName, context))
@@ -670,7 +670,7 @@ private Mono> deleteWithResponseAsync(String resourceGroupName, S
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
capacityReservationGroupName, context);
@@ -758,7 +758,7 @@ private Mono> listByResourceGroupSi
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -798,7 +798,7 @@ private Mono> listByResourceGroupSi
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -937,7 +937,7 @@ private Mono> listSinglePageAsync(
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -978,7 +978,7 @@ private Mono> listSinglePageAsync(
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/CapacityReservationsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/CapacityReservationsClientImpl.java
index 6793d0fea9ae..dd75950fe78e 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/CapacityReservationsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/CapacityReservationsClientImpl.java
@@ -178,7 +178,7 @@ public Mono> getWithResponseAsync(String reso
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.get(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -226,7 +226,7 @@ private Mono> getWithResponseAsync(String res
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.get(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
@@ -336,7 +336,7 @@ public Mono>> createOrUpdateWithResponseAsync(String r
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -390,7 +390,7 @@ private Mono>> createOrUpdateWithResponseAsync(String
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -619,7 +619,7 @@ public Mono>> updateWithResponseAsync(String resourceG
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -672,7 +672,7 @@ private Mono>> updateWithResponseAsync(String resource
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -853,8 +853,11 @@ public CapacityReservationInner update(String resourceGroupName, String capacity
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -887,7 +890,7 @@ public Mono>> deleteWithResponseAsync(String resourceG
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(
context -> service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -898,8 +901,11 @@ public Mono>> deleteWithResponseAsync(String resourceG
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -933,7 +939,7 @@ private Mono>> deleteWithResponseAsync(String resource
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
capacityReservationGroupName, capacityReservationName, context);
@@ -942,8 +948,11 @@ private Mono>> deleteWithResponseAsync(String resource
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -965,8 +974,11 @@ public PollerFlux, Void> beginDeleteAsync(String resourceGroupN
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -990,8 +1002,11 @@ private PollerFlux, Void> beginDeleteAsync(String resourceGroup
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -1011,8 +1026,11 @@ public SyncPoller, Void> beginDelete(String resourceGroupName,
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -1033,8 +1051,11 @@ public SyncPoller, Void> beginDelete(String resourceGroupName,
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -1054,8 +1075,11 @@ public Mono deleteAsync(String resourceGroupName, String capacityReservati
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -1077,8 +1101,11 @@ private Mono deleteAsync(String resourceGroupName, String capacityReservat
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -1095,8 +1122,11 @@ public void delete(String resourceGroupName, String capacityReservationGroupName
/**
* The operation to delete a capacity reservation. This operation is allowed only when all the associated resources
* are disassociated from the capacity reservation. Please refer to https://aka.ms/CapacityReservation for more
- * details. Note: Block capacity reservations cannot be deleted after it has been successfully allocated until the
- * schedule end time.
+ * details. Note: Block capacity reservations cannot be deleted after they have been successfully allocated until
+ * the schedule end time. Future capacity reservations (Minimum API version: 2026-04-01) can be deleted if their
+ * reservation state is one of: Pending, Declined, FulfillmentFailed, or Approved. Otherwise, Future capacity
+ * reservations in the Committed, Live, or PartiallyFulfilled state cannot be deleted until minimumCommitmentDays
+ * have elapsed since their scheduled start date.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param capacityReservationGroupName The name of the capacity reservation group.
@@ -1147,7 +1177,7 @@ private Mono> listByCapacityReservationG
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByCapacityReservationGroup(this.client.getEndpoint(), apiVersion,
@@ -1194,7 +1224,7 @@ private Mono> listByCapacityReservationG
return Mono.error(
new IllegalArgumentException("Parameter capacityReservationGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ComputeManagementClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ComputeManagementClientImpl.java
index 8ae32a2b7a8f..0176376140ab 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ComputeManagementClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ComputeManagementClientImpl.java
@@ -48,6 +48,7 @@
import com.azure.resourcemanager.compute.fluent.SshPublicKeysClient;
import com.azure.resourcemanager.compute.fluent.TenantLevelSharedGalleryInvitesClient;
import com.azure.resourcemanager.compute.fluent.UsagesClient;
+import com.azure.resourcemanager.compute.fluent.VirtualMachineDiagnosticRunCommandsClient;
import com.azure.resourcemanager.compute.fluent.VirtualMachineExtensionImagesClient;
import com.azure.resourcemanager.compute.fluent.VirtualMachineExtensionsClient;
import com.azure.resourcemanager.compute.fluent.VirtualMachineImagesClient;
@@ -56,6 +57,7 @@
import com.azure.resourcemanager.compute.fluent.VirtualMachineScaleSetExtensionsClient;
import com.azure.resourcemanager.compute.fluent.VirtualMachineScaleSetLifeCycleHookEventsClient;
import com.azure.resourcemanager.compute.fluent.VirtualMachineScaleSetRollingUpgradesClient;
+import com.azure.resourcemanager.compute.fluent.VirtualMachineScaleSetVMDiagnosticRunCommandsClient;
import com.azure.resourcemanager.compute.fluent.VirtualMachineScaleSetVMExtensionsClient;
import com.azure.resourcemanager.compute.fluent.VirtualMachineScaleSetVMRunCommandsClient;
import com.azure.resourcemanager.compute.fluent.VirtualMachineScaleSetVMsClient;
@@ -420,6 +422,34 @@ public VirtualMachineScaleSetVMRunCommandsClient getVirtualMachineScaleSetVMRunC
return this.virtualMachineScaleSetVMRunCommands;
}
+ /**
+ * The VirtualMachineDiagnosticRunCommandsClient object to access its operations.
+ */
+ private final VirtualMachineDiagnosticRunCommandsClient virtualMachineDiagnosticRunCommands;
+
+ /**
+ * Gets the VirtualMachineDiagnosticRunCommandsClient object to access its operations.
+ *
+ * @return the VirtualMachineDiagnosticRunCommandsClient object.
+ */
+ public VirtualMachineDiagnosticRunCommandsClient getVirtualMachineDiagnosticRunCommands() {
+ return this.virtualMachineDiagnosticRunCommands;
+ }
+
+ /**
+ * The VirtualMachineScaleSetVMDiagnosticRunCommandsClient object to access its operations.
+ */
+ private final VirtualMachineScaleSetVMDiagnosticRunCommandsClient virtualMachineScaleSetVMDiagnosticRunCommands;
+
+ /**
+ * Gets the VirtualMachineScaleSetVMDiagnosticRunCommandsClient object to access its operations.
+ *
+ * @return the VirtualMachineScaleSetVMDiagnosticRunCommandsClient object.
+ */
+ public VirtualMachineScaleSetVMDiagnosticRunCommandsClient getVirtualMachineScaleSetVMDiagnosticRunCommands() {
+ return this.virtualMachineScaleSetVMDiagnosticRunCommands;
+ }
+
/**
* The DisksClient object to access its operations.
*/
@@ -920,6 +950,9 @@ public GallerySharingProfilesClient getGallerySharingProfiles() {
this.interconnectBlocks = new InterconnectBlocksClientImpl(this);
this.virtualMachineRunCommands = new VirtualMachineRunCommandsClientImpl(this);
this.virtualMachineScaleSetVMRunCommands = new VirtualMachineScaleSetVMRunCommandsClientImpl(this);
+ this.virtualMachineDiagnosticRunCommands = new VirtualMachineDiagnosticRunCommandsClientImpl(this);
+ this.virtualMachineScaleSetVMDiagnosticRunCommands
+ = new VirtualMachineScaleSetVMDiagnosticRunCommandsClientImpl(this);
this.disks = new DisksClientImpl(this);
this.diskAccesses = new DiskAccessesClientImpl(this);
this.diskEncryptionSets = new DiskEncryptionSetsClientImpl(this);
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/DedicatedHostGroupsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/DedicatedHostGroupsClientImpl.java
index 8c7319ac80ac..9dc5d756d97c 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/DedicatedHostGroupsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/DedicatedHostGroupsClientImpl.java
@@ -174,7 +174,7 @@ public Mono> getByResourceGroupWithResponseAsy
if (hostGroupName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -215,7 +215,7 @@ private Mono> getByResourceGroupWithResponseAs
if (hostGroupName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.getByResourceGroup(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -313,7 +313,7 @@ public Mono> createOrUpdateWithResponseAsync(S
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -360,7 +360,7 @@ private Mono> createOrUpdateWithResponseAsync(
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -461,7 +461,7 @@ public Mono> updateWithResponseAsync(String re
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -507,7 +507,7 @@ private Mono> updateWithResponseAsync(String r
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -597,7 +597,7 @@ public Mono> deleteWithResponseAsync(String resourceGroupName, St
if (hostGroupName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, hostGroupName, context))
@@ -633,7 +633,7 @@ private Mono> deleteWithResponseAsync(String resourceGroupName, S
if (hostGroupName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
hostGroupName, context);
@@ -709,7 +709,7 @@ private Mono> listByResourceGroupSinglePa
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -746,7 +746,7 @@ private Mono> listByResourceGroupSinglePa
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -841,7 +841,7 @@ private Mono> listSinglePageAsync() {
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -872,7 +872,7 @@ private Mono> listSinglePageAsync(Context
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/DedicatedHostsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/DedicatedHostsClientImpl.java
index 04360eb3d58f..2cca50009942 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/DedicatedHostsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/DedicatedHostsClientImpl.java
@@ -202,7 +202,7 @@ public Mono> getWithResponseAsync(String resourceGr
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.get(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -246,7 +246,7 @@ private Mono> getWithResponseAsync(String resourceG
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.get(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
@@ -347,7 +347,7 @@ public Mono>> createOrUpdateWithResponseAsync(String r
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -397,7 +397,7 @@ private Mono>> createOrUpdateWithResponseAsync(String
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -603,7 +603,7 @@ public Mono>> updateWithResponseAsync(String resourceG
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -653,7 +653,7 @@ private Mono>> updateWithResponseAsync(String resource
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -850,7 +850,7 @@ public Mono>> deleteWithResponseAsync(String resourceG
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, hostGroupName, hostName, context))
@@ -890,7 +890,7 @@ private Mono>> deleteWithResponseAsync(String resource
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
hostGroupName, hostName, context);
@@ -1068,7 +1068,7 @@ private Mono> listByHostGroupSinglePageAsync(S
if (hostGroupName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByHostGroup(this.client.getEndpoint(), apiVersion,
@@ -1109,7 +1109,7 @@ private Mono> listByHostGroupSinglePageAsync(S
if (hostGroupName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -1223,7 +1223,7 @@ private Mono> listAvailableSizesSinglePageAsync(String res
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listAvailableSizes(this.client.getEndpoint(), apiVersion,
@@ -1268,7 +1268,7 @@ private Mono> listAvailableSizesSinglePageAsync(String res
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -1388,7 +1388,7 @@ public Mono>> redeployWithResponseAsync(String resourc
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.redeploy(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, hostGroupName, hostName, context))
@@ -1431,7 +1431,7 @@ private Mono>> redeployWithResponseAsync(String resour
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.redeploy(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
resourceGroupName, hostGroupName, hostName, context);
@@ -1638,7 +1638,7 @@ public Mono>> restartWithResponseAsync(String resource
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.restart(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, hostGroupName, hostName, context))
@@ -1681,7 +1681,7 @@ private Mono>> restartWithResponseAsync(String resourc
if (hostName == null) {
return Mono.error(new IllegalArgumentException("Parameter hostName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.restart(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
resourceGroupName, hostGroupName, hostName, context);
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ImagesClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ImagesClientImpl.java
index 13cba9dd2eba..8fbe30455fcf 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ImagesClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ImagesClientImpl.java
@@ -173,7 +173,7 @@ public Mono> getByResourceGroupWithResponseAsync(String res
if (imageName == null) {
return Mono.error(new IllegalArgumentException("Parameter imageName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -211,7 +211,7 @@ private Mono> getByResourceGroupWithResponseAsync(String re
if (imageName == null) {
return Mono.error(new IllegalArgumentException("Parameter imageName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.getByResourceGroup(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -304,7 +304,7 @@ public Mono>> createOrUpdateWithResponseAsync(String r
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil.withContext(context -> service.createOrUpdate(this.client.getEndpoint(), apiVersion,
@@ -348,7 +348,7 @@ private Mono>> createOrUpdateWithResponseAsync(String
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -538,7 +538,7 @@ public Mono>> updateWithResponseAsync(String resourceG
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -584,7 +584,7 @@ private Mono>> updateWithResponseAsync(String resource
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -764,7 +764,7 @@ public Mono>> deleteWithResponseAsync(String resourceG
if (imageName == null) {
return Mono.error(new IllegalArgumentException("Parameter imageName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, imageName, context))
@@ -800,7 +800,7 @@ private Mono>> deleteWithResponseAsync(String resource
if (imageName == null) {
return Mono.error(new IllegalArgumentException("Parameter imageName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
imageName, context);
@@ -960,7 +960,7 @@ private Mono> listByResourceGroupSinglePageAsync(Strin
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -997,7 +997,7 @@ private Mono> listByResourceGroupSinglePageAsync(Strin
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -1090,7 +1090,7 @@ private Mono> listSinglePageAsync() {
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -1121,7 +1121,7 @@ private Mono> listSinglePageAsync(Context context) {
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/InterconnectBlocksClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/InterconnectBlocksClientImpl.java
index cd0fedf259ed..75987551f78e 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/InterconnectBlocksClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/InterconnectBlocksClientImpl.java
@@ -184,7 +184,7 @@ public Mono> getByResourceGroupWithResponseAsyn
return Mono
.error(new IllegalArgumentException("Parameter interconnectBlockName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -226,7 +226,7 @@ private Mono> getByResourceGroupWithResponseAsy
return Mono
.error(new IllegalArgumentException("Parameter interconnectBlockName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.getByResourceGroup(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -325,7 +325,7 @@ public Mono>> createOrUpdateWithResponseAsync(String r
} else {
resource.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -373,7 +373,7 @@ private Mono>> createOrUpdateWithResponseAsync(String
} else {
resource.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -576,7 +576,7 @@ public Mono>> updateWithResponseAsync(String resourceG
} else {
properties.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -623,7 +623,7 @@ private Mono>> updateWithResponseAsync(String resource
} else {
properties.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -811,7 +811,7 @@ public Mono>> deleteWithResponseAsync(String resourceG
return Mono
.error(new IllegalArgumentException("Parameter interconnectBlockName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, interconnectBlockName, context))
@@ -849,7 +849,7 @@ private Mono>> deleteWithResponseAsync(String resource
return Mono
.error(new IllegalArgumentException("Parameter interconnectBlockName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
interconnectBlockName, context);
@@ -1020,7 +1020,7 @@ private Mono> listByResourceGroupSinglePag
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -1057,7 +1057,7 @@ private Mono> listByResourceGroupSinglePag
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -1150,7 +1150,7 @@ private Mono> listSinglePageAsync() {
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -1181,7 +1181,7 @@ private Mono> listSinglePageAsync(Context
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/LogAnalyticsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/LogAnalyticsClientImpl.java
index 9cd1bc258150..feae56fabef1 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/LogAnalyticsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/LogAnalyticsClientImpl.java
@@ -114,7 +114,7 @@ public Mono>> exportRequestRateByIntervalWithResponseA
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -155,7 +155,7 @@ private Mono>> exportRequestRateByIntervalWithResponse
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -343,7 +343,7 @@ public Mono>> exportThrottledRequestsWithResponseAsync
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -383,7 +383,7 @@ private Mono>> exportThrottledRequestsWithResponseAsyn
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/OperationsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/OperationsClientImpl.java
index cd95c02ad8f8..3ef3cf8d5778 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/OperationsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/OperationsClientImpl.java
@@ -91,7 +91,7 @@ private Mono> listSinglePageAsync() {
return Mono.error(
new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, accept, context))
.>map(res -> new PagedResponseBase<>(res.getRequest(), res.getStatusCode(),
@@ -115,7 +115,7 @@ private Mono> listSinglePageAsync(Context context)
return Mono.error(
new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.list(this.client.getEndpoint(), apiVersion, accept, context)
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ProximityPlacementGroupsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ProximityPlacementGroupsClientImpl.java
index d9ec5c203499..31fff855e519 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ProximityPlacementGroupsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/ProximityPlacementGroupsClientImpl.java
@@ -177,7 +177,7 @@ public Mono> getByResourceGroupWithRespon
return Mono.error(
new IllegalArgumentException("Parameter proximityPlacementGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -219,7 +219,7 @@ private Mono> getByResourceGroupWithRespo
return Mono.error(
new IllegalArgumentException("Parameter proximityPlacementGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.getByResourceGroup(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -318,7 +318,7 @@ public Mono> createOrUpdateWithResponseAs
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -365,7 +365,7 @@ private Mono> createOrUpdateWithResponseA
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -464,7 +464,7 @@ public Mono> updateWithResponseAsync(Stri
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -511,7 +511,7 @@ private Mono> updateWithResponseAsync(Str
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -600,7 +600,7 @@ public Mono> deleteWithResponseAsync(String resourceGroupName, St
return Mono.error(
new IllegalArgumentException("Parameter proximityPlacementGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, proximityPlacementGroupName, context))
@@ -637,7 +637,7 @@ private Mono> deleteWithResponseAsync(String resourceGroupName, S
return Mono.error(
new IllegalArgumentException("Parameter proximityPlacementGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
proximityPlacementGroupName, context);
@@ -714,7 +714,7 @@ public void delete(String resourceGroupName, String proximityPlacementGroupName)
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -750,7 +750,7 @@ public void delete(String resourceGroupName, String proximityPlacementGroupName)
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -839,7 +839,7 @@ private Mono> listSinglePageAsync()
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -869,7 +869,7 @@ private Mono> listSinglePageAsync(Co
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/RestorePointCollectionsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/RestorePointCollectionsClientImpl.java
index 91a3a250f7c0..61dcfbda0fc5 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/RestorePointCollectionsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/RestorePointCollectionsClientImpl.java
@@ -183,7 +183,7 @@ public Mono> getByResourceGroupWithRespons
return Mono.error(
new IllegalArgumentException("Parameter restorePointCollectionName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil.withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, restorePointCollectionName, expand, accept, context))
@@ -223,7 +223,7 @@ private Mono> getByResourceGroupWithRespon
return Mono.error(
new IllegalArgumentException("Parameter restorePointCollectionName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.getByResourceGroup(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -322,7 +322,7 @@ public Mono> createOrUpdateWithResponseAsy
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -370,7 +370,7 @@ private Mono> createOrUpdateWithResponseAs
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -472,7 +472,7 @@ public Mono> updateWithResponseAsync(Strin
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -519,7 +519,7 @@ private Mono> updateWithResponseAsync(Stri
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -610,7 +610,7 @@ public Mono>> deleteWithResponseAsync(String resourceG
return Mono.error(
new IllegalArgumentException("Parameter restorePointCollectionName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, restorePointCollectionName, context))
@@ -648,7 +648,7 @@ private Mono>> deleteWithResponseAsync(String resource
return Mono.error(
new IllegalArgumentException("Parameter restorePointCollectionName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
restorePointCollectionName, context);
@@ -820,7 +820,7 @@ public void delete(String resourceGroupName, String restorePointCollectionName,
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -856,7 +856,7 @@ public void delete(String resourceGroupName, String restorePointCollectionName,
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -948,7 +948,7 @@ private Mono> listSinglePageAsync() {
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -980,7 +980,7 @@ private Mono> listSinglePageAsync(Con
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/RestorePointsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/RestorePointsClientImpl.java
index e701c7080d4e..1946bfb541c2 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/RestorePointsClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/RestorePointsClientImpl.java
@@ -136,7 +136,7 @@ public Mono> getWithResponseAsync(String resourceGro
return Mono
.error(new IllegalArgumentException("Parameter restorePointName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.get(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -181,7 +181,7 @@ private Mono> getWithResponseAsync(String resourceGr
return Mono
.error(new IllegalArgumentException("Parameter restorePointName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.get(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
@@ -286,7 +286,7 @@ public Mono>> createWithResponseAsync(String resourceG
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -337,7 +337,7 @@ private Mono>> createWithResponseAsync(String resource
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -541,7 +541,7 @@ public Mono>> deleteWithResponseAsync(String resourceG
return Mono
.error(new IllegalArgumentException("Parameter restorePointName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(
context -> service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -584,7 +584,7 @@ private Mono>> deleteWithResponseAsync(String resource
return Mono
.error(new IllegalArgumentException("Parameter restorePointName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
restorePointCollectionName, restorePointName, context);
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/SshPublicKeysClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/SshPublicKeysClientImpl.java
index adbac53a056f..534b07d193d1 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/SshPublicKeysClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/SshPublicKeysClientImpl.java
@@ -187,7 +187,7 @@ public Mono> getByResourceGroupWithResponseA
return Mono
.error(new IllegalArgumentException("Parameter sshPublicKeyName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -226,7 +226,7 @@ private Mono> getByResourceGroupWithResponse
return Mono
.error(new IllegalArgumentException("Parameter sshPublicKeyName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.getByResourceGroup(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -317,7 +317,7 @@ public Mono> createWithResponseAsync(String
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -364,7 +364,7 @@ private Mono> createWithResponseAsync(String
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -461,7 +461,7 @@ public Mono> updateWithResponseAsync(String
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
return FluxUtil
@@ -508,7 +508,7 @@ private Mono> updateWithResponseAsync(String
} else {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String contentType = "application/json";
final String accept = "application/json";
context = this.client.mergeContext(context);
@@ -597,7 +597,7 @@ public Mono> deleteWithResponseAsync(String resourceGroupName, St
return Mono
.error(new IllegalArgumentException("Parameter sshPublicKeyName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
return FluxUtil
.withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
this.client.getSubscriptionId(), resourceGroupName, sshPublicKeyName, context))
@@ -634,7 +634,7 @@ private Mono> deleteWithResponseAsync(String resourceGroupName, S
return Mono
.error(new IllegalArgumentException("Parameter sshPublicKeyName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
context = this.client.mergeContext(context);
return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
sshPublicKeyName, context);
@@ -711,7 +711,7 @@ public void delete(String resourceGroupName, String sshPublicKeyName) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByResourceGroup(this.client.getEndpoint(), apiVersion,
@@ -748,7 +748,7 @@ private Mono> listByResourceGroupSingle
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -841,7 +841,7 @@ private Mono> listSinglePageAsync() {
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -872,7 +872,7 @@ private Mono> listSinglePageAsync(Conte
return Mono.error(new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
@@ -973,7 +973,7 @@ public Mono> generateKeyPairWit
if (parameters != null) {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.generateKeyPair(this.client.getEndpoint(), apiVersion,
@@ -1018,7 +1018,7 @@ private Mono> generateKeyPairWi
if (parameters != null) {
parameters.validate();
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service.generateKeyPair(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/UsagesClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/UsagesClientImpl.java
index 785d96363531..1a78381630c5 100644
--- a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/UsagesClientImpl.java
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/UsagesClientImpl.java
@@ -101,7 +101,7 @@ private Mono> listSinglePageAsync(String location) {
if (location == null) {
return Mono.error(new IllegalArgumentException("Parameter location is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
@@ -136,7 +136,7 @@ private Mono> listSinglePageAsync(String location, Con
if (location == null) {
return Mono.error(new IllegalArgumentException("Parameter location is required and cannot be null."));
}
- final String apiVersion = "2026-03-01";
+ final String apiVersion = "2026-04-01";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
diff --git a/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/VirtualMachineDiagnosticRunCommandsClientImpl.java b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/VirtualMachineDiagnosticRunCommandsClientImpl.java
new file mode 100644
index 000000000000..83b4abc599a0
--- /dev/null
+++ b/sdk/compute/azure-resourcemanager-compute/src/main/java/com/azure/resourcemanager/compute/implementation/VirtualMachineDiagnosticRunCommandsClientImpl.java
@@ -0,0 +1,1229 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.compute.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.Patch;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.compute.fluent.VirtualMachineDiagnosticRunCommandsClient;
+import com.azure.resourcemanager.compute.fluent.models.VirtualMachineDiagnosticRunCommandInner;
+import com.azure.resourcemanager.compute.implementation.models.VirtualMachineDiagnosticRunCommandsListResult;
+import com.azure.resourcemanager.compute.models.VirtualMachineRunCommandUpdate;
+import java.nio.ByteBuffer;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+
+/**
+ * An instance of this class provides access to all the operations defined in VirtualMachineDiagnosticRunCommandsClient.
+ */
+public final class VirtualMachineDiagnosticRunCommandsClientImpl implements VirtualMachineDiagnosticRunCommandsClient {
+ /**
+ * The proxy service used to perform REST calls.
+ */
+ private final VirtualMachineDiagnosticRunCommandsService service;
+
+ /**
+ * The service client containing this operation class.
+ */
+ private final ComputeManagementClientImpl client;
+
+ /**
+ * Initializes an instance of VirtualMachineDiagnosticRunCommandsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ VirtualMachineDiagnosticRunCommandsClientImpl(ComputeManagementClientImpl client) {
+ this.service = RestProxy.create(VirtualMachineDiagnosticRunCommandsService.class, client.getHttpPipeline(),
+ client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ComputeManagementClientVirtualMachineDiagnosticRunCommands to be used
+ * by the proxy service to perform REST calls.
+ */
+ @Host("{endpoint}")
+ @ServiceInterface(name = "ComputeManagementClientVirtualMachineDiagnosticRunCommands")
+ public interface VirtualMachineDiagnosticRunCommandsService {
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/diagnosticRunCommands/{runCommandName}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> getByVirtualMachine(
+ @HostParam("endpoint") String endpoint, @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("vmName") String vmName,
+ @PathParam("runCommandName") String runCommandName, @QueryParam("$expand") String expand,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Put("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/diagnosticRunCommands/{runCommandName}")
+ @ExpectedResponses({ 200, 201 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> createOrUpdate(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("vmName") String vmName,
+ @PathParam("runCommandName") String runCommandName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") VirtualMachineDiagnosticRunCommandInner runCommand, Context context);
+
+ @Patch("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/diagnosticRunCommands/{runCommandName}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> update(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("vmName") String vmName,
+ @PathParam("runCommandName") String runCommandName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept,
+ @BodyParam("application/json") VirtualMachineRunCommandUpdate runCommand, Context context);
+
+ @Headers({ "Accept: application/json;q=0.9", "Content-Type: application/json" })
+ @Delete("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/diagnosticRunCommands/{runCommandName}")
+ @ExpectedResponses({ 200, 202, 204 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> delete(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("vmName") String vmName,
+ @PathParam("runCommandName") String runCommandName, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/diagnosticRunCommands")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> diagnosticListByVirtualMachine(
+ @HostParam("endpoint") String endpoint, @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @PathParam("vmName") String vmName,
+ @QueryParam("$expand") String expand, @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> diagnosticListByVirtualMachineNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+ }
+
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param expand The expand expression to apply on the operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono> getByVirtualMachineWithResponseAsync(
+ String resourceGroupName, String vmName, String runCommandName, String expand) {
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (vmName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter vmName is required and cannot be null."));
+ }
+ if (runCommandName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommandName is required and cannot be null."));
+ }
+ final String apiVersion = "2026-04-01";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.getByVirtualMachine(this.client.getEndpoint(), apiVersion,
+ this.client.getSubscriptionId(), resourceGroupName, vmName, runCommandName, expand, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param expand The expand expression to apply on the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByVirtualMachineWithResponseAsync(
+ String resourceGroupName, String vmName, String runCommandName, String expand, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (vmName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter vmName is required and cannot be null."));
+ }
+ if (runCommandName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommandName is required and cannot be null."));
+ }
+ final String apiVersion = "2026-04-01";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.getByVirtualMachine(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
+ resourceGroupName, vmName, runCommandName, expand, accept, context);
+ }
+
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono getByVirtualMachineAsync(String resourceGroupName,
+ String vmName, String runCommandName) {
+ final String expand = null;
+ return getByVirtualMachineWithResponseAsync(resourceGroupName, vmName, runCommandName, expand)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param expand The expand expression to apply on the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getByVirtualMachineWithResponse(String resourceGroupName,
+ String vmName, String runCommandName, String expand, Context context) {
+ return getByVirtualMachineWithResponseAsync(resourceGroupName, vmName, runCommandName, expand, context).block();
+ }
+
+ /**
+ * The operation to get the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public VirtualMachineDiagnosticRunCommandInner getByVirtualMachine(String resourceGroupName, String vmName,
+ String runCommandName) {
+ final String expand = null;
+ return getByVirtualMachineWithResponse(resourceGroupName, vmName, runCommandName, expand, Context.NONE)
+ .getValue();
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono>> createOrUpdateWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand) {
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (vmName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter vmName is required and cannot be null."));
+ }
+ if (runCommandName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommandName is required and cannot be null."));
+ }
+ if (runCommand == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommand is required and cannot be null."));
+ } else {
+ runCommand.validate();
+ }
+ final String apiVersion = "2026-04-01";
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.createOrUpdate(this.client.getEndpoint(), apiVersion,
+ this.client.getSubscriptionId(), resourceGroupName, vmName, runCommandName, contentType, accept,
+ runCommand, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createOrUpdateWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (vmName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter vmName is required and cannot be null."));
+ }
+ if (runCommandName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommandName is required and cannot be null."));
+ }
+ if (runCommand == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommand is required and cannot be null."));
+ } else {
+ runCommand.validate();
+ }
+ final String apiVersion = "2026-04-01";
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.createOrUpdate(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
+ resourceGroupName, vmName, runCommandName, contentType, accept, runCommand, context);
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux, Void> beginCreateOrUpdateAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand) {
+ Mono>> mono
+ = createOrUpdateWithResponseAsync(resourceGroupName, vmName, runCommandName, runCommand);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ this.client.getContext());
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, Void> beginCreateOrUpdateAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono
+ = createOrUpdateWithResponseAsync(resourceGroupName, vmName, runCommandName, runCommand, context);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ context);
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, Void> beginCreateOrUpdate(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand) {
+ return this.beginCreateOrUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand).getSyncPoller();
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, Void> beginCreateOrUpdate(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineDiagnosticRunCommandInner runCommand, Context context) {
+ return this.beginCreateOrUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand, context)
+ .getSyncPoller();
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono createOrUpdateAsync(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand) {
+ return beginCreateOrUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createOrUpdateAsync(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand, Context context) {
+ return beginCreateOrUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand, context).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void createOrUpdate(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand) {
+ createOrUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand).block();
+ }
+
+ /**
+ * The operation to create or update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Create Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void createOrUpdate(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineDiagnosticRunCommandInner runCommand, Context context) {
+ createOrUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand, context).block();
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono>> updateWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (vmName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter vmName is required and cannot be null."));
+ }
+ if (runCommandName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommandName is required and cannot be null."));
+ }
+ if (runCommand == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommand is required and cannot be null."));
+ } else {
+ runCommand.validate();
+ }
+ final String apiVersion = "2026-04-01";
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.update(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(),
+ resourceGroupName, vmName, runCommandName, contentType, accept, runCommand, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> updateWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (vmName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter vmName is required and cannot be null."));
+ }
+ if (runCommandName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommandName is required and cannot be null."));
+ }
+ if (runCommand == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommand is required and cannot be null."));
+ } else {
+ runCommand.validate();
+ }
+ final String apiVersion = "2026-04-01";
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.update(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
+ vmName, runCommandName, contentType, accept, runCommand, context);
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux, Void> beginUpdateAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ Mono>> mono
+ = updateWithResponseAsync(resourceGroupName, vmName, runCommandName, runCommand);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ this.client.getContext());
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, Void> beginUpdateAsync(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand, Context context) {
+ context = this.client.mergeContext(context);
+ Mono>> mono
+ = updateWithResponseAsync(resourceGroupName, vmName, runCommandName, runCommand, context);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class,
+ context);
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, Void> beginUpdate(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand) {
+ return this.beginUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand).getSyncPoller();
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of describes a Virtual Machine diagnostic run command.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, Void> beginUpdate(String resourceGroupName, String vmName,
+ String runCommandName, VirtualMachineRunCommandUpdate runCommand, Context context) {
+ return this.beginUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand, context).getSyncPoller();
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono updateAsync(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand) {
+ return beginUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes a Virtual Machine diagnostic run command on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono updateAsync(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand, Context context) {
+ return beginUpdateAsync(resourceGroupName, vmName, runCommandName, runCommand, context).last()
+ .flatMap(this.client::getLroFinalResultOrError);
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void update(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand) {
+ updateAsync(resourceGroupName, vmName, runCommandName, runCommand).block();
+ }
+
+ /**
+ * The operation to update the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param runCommand Parameters supplied to the Update Virtual Machine Diagnostic RunCommand operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void update(String resourceGroupName, String vmName, String runCommandName,
+ VirtualMachineRunCommandUpdate runCommand, Context context) {
+ updateAsync(resourceGroupName, vmName, runCommandName, runCommand, context).block();
+ }
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Mono>> deleteWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (vmName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter vmName is required and cannot be null."));
+ }
+ if (runCommandName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommandName is required and cannot be null."));
+ }
+ final String apiVersion = "2026-04-01";
+ return FluxUtil
+ .withContext(context -> service.delete(this.client.getEndpoint(), apiVersion,
+ this.client.getSubscriptionId(), resourceGroupName, vmName, runCommandName, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> deleteWithResponseAsync(String resourceGroupName, String vmName,
+ String runCommandName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono.error(
+ new IllegalArgumentException("Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono.error(new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (vmName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter vmName is required and cannot be null."));
+ }
+ if (runCommandName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter runCommandName is required and cannot be null."));
+ }
+ final String apiVersion = "2026-04-01";
+ context = this.client.mergeContext(context);
+ return service.delete(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), resourceGroupName,
+ vmName, runCommandName, context);
+ }
+
+ /**
+ * The operation to delete the diagnostic run command.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param vmName The name of the VirtualMachine.
+ * @param runCommandName The name of the VirtualMachineDiagnosticRunCommand.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public PollerFlux, Void> beginDeleteAsync(String resourceGroupName, String vmName,
+ String runCommandName) {
+ Mono>> mono = deleteWithResponseAsync(resourceGroupName, vmName, runCommandName);
+ return this.client.