This setting has no effect, if retry policy is set via {@link #withRetryPolicy(RetryPolicy)}.
+ *
+ * @param retryOptions the retry options for the HTTP pipeline retry policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withRetryOptions(RetryOptions retryOptions) {
+ this.retryOptions = Objects.requireNonNull(retryOptions, "'retryOptions' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Sets the default poll interval, used when service does not provide "Retry-After" header.
+ *
+ * @param defaultPollInterval the default poll interval.
+ * @return the configurable object itself.
+ */
+ public Configurable withDefaultPollInterval(Duration defaultPollInterval) {
+ this.defaultPollInterval =
+ Objects.requireNonNull(defaultPollInterval, "'defaultPollInterval' cannot be null.");
+ if (this.defaultPollInterval.isNegative()) {
+ throw LOGGER
+ .logExceptionAsError(new IllegalArgumentException("'defaultPollInterval' cannot be negative"));
+ }
+ return this;
+ }
+
+ /**
+ * Creates an instance of NetworkCloud service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the NetworkCloud service API instance.
+ */
+ public NetworkCloudManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+
+ StringBuilder userAgentBuilder = new StringBuilder();
+ userAgentBuilder
+ .append("azsdk-java")
+ .append("-")
+ .append("com.azure.resourcemanager.networkcloud")
+ .append("/")
+ .append("1.0.0-beta.1");
+ if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
+ userAgentBuilder
+ .append(" (")
+ .append(Configuration.getGlobalConfiguration().get("java.version"))
+ .append("; ")
+ .append(Configuration.getGlobalConfiguration().get("os.name"))
+ .append("; ")
+ .append(Configuration.getGlobalConfiguration().get("os.version"))
+ .append("; auto-generated)");
+ } else {
+ userAgentBuilder.append(" (auto-generated)");
+ }
+
+ if (scopes.isEmpty()) {
+ scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
+ }
+ if (retryPolicy == null) {
+ if (retryOptions != null) {
+ retryPolicy = new RetryPolicy(retryOptions);
+ } else {
+ retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+ }
+ }
+ List Get a list of bare metal machine key sets of the cluster in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @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 list of bare metal machine key sets of the cluster in the provided resource group as paginated response
+ * with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of bare metal machine key sets of the cluster in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @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 a list of bare metal machine key sets of the cluster in the provided resource group as paginated response
+ * with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get bare metal machine key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @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 bare metal machine key set of the provided cluster along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Get bare metal machine key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @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 bare metal machine key set of the provided cluster.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineKeySetInner get(String resourceGroupName, String clusterName, String bareMetalMachineKeySetName);
+
+ /**
+ * Create or update the bare metal machine key set of the cluster.
+ *
+ * Create a new bare metal machine key set or update the existing one for the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @param bareMetalMachineKeySetParameters The request body.
+ * @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 bareMetalMachineKeySet represents the bare metal machine key set.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new bare metal machine key set or update the existing one for the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @param bareMetalMachineKeySetParameters The request body.
+ * @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 bareMetalMachineKeySet represents the bare metal machine key set.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new bare metal machine key set or update the existing one for the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @param bareMetalMachineKeySetParameters The request body.
+ * @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 bareMetalMachineKeySet represents the bare metal machine key set.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineKeySetInner createOrUpdate(
+ String resourceGroupName,
+ String clusterName,
+ String bareMetalMachineKeySetName,
+ BareMetalMachineKeySetInner bareMetalMachineKeySetParameters);
+
+ /**
+ * Create or update the bare metal machine key set of the cluster.
+ *
+ * Create a new bare metal machine key set or update the existing one for the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @param bareMetalMachineKeySetParameters The request body.
+ * @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 bareMetalMachineKeySet represents the bare metal machine key set.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineKeySetInner createOrUpdate(
+ String resourceGroupName,
+ String clusterName,
+ String bareMetalMachineKeySetName,
+ BareMetalMachineKeySetInner bareMetalMachineKeySetParameters,
+ Context context);
+
+ /**
+ * Delete the bare metal machine key set of the cluster.
+ *
+ * Delete the bare metal machine key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @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 Delete the bare metal machine key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @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 Delete the bare metal machine key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @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 clusterName, String bareMetalMachineKeySetName);
+
+ /**
+ * Delete the bare metal machine key set of the cluster.
+ *
+ * Delete the bare metal machine key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @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 clusterName, String bareMetalMachineKeySetName, Context context);
+
+ /**
+ * Patch bare metal machine key set of the cluster.
+ *
+ * Patch properties of bare metal machine key set for the provided cluster, or update the tags associated with
+ * it. Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @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 bareMetalMachineKeySet represents the bare metal machine key set.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Patch properties of bare metal machine key set for the provided cluster, or update the tags associated with
+ * it. Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @param bareMetalMachineKeySetUpdateParameters The request body.
+ * @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 bareMetalMachineKeySet represents the bare metal machine key set.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Patch properties of bare metal machine key set for the provided cluster, or update the tags associated with
+ * it. Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @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 bareMetalMachineKeySet represents the bare metal machine key set.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineKeySetInner update(String resourceGroupName, String clusterName, String bareMetalMachineKeySetName);
+
+ /**
+ * Patch bare metal machine key set of the cluster.
+ *
+ * Patch properties of bare metal machine key set for the provided cluster, or update the tags associated with
+ * it. Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bareMetalMachineKeySetName The name of the bare metal machine key set.
+ * @param bareMetalMachineKeySetUpdateParameters The request body.
+ * @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 bareMetalMachineKeySet represents the bare metal machine key set.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineKeySetInner update(
+ String resourceGroupName,
+ String clusterName,
+ String bareMetalMachineKeySetName,
+ BareMetalMachineKeySetPatchParameters bareMetalMachineKeySetUpdateParameters,
+ Context context);
+}
diff --git a/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/BareMetalMachinesClient.java b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/BareMetalMachinesClient.java
new file mode 100644
index 000000000000..a7f41c5bf133
--- /dev/null
+++ b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/BareMetalMachinesClient.java
@@ -0,0 +1,1124 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.networkcloud.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+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.SyncPoller;
+import com.azure.resourcemanager.networkcloud.fluent.models.BareMetalMachineInner;
+import com.azure.resourcemanager.networkcloud.models.BareMetalMachineCordonParameters;
+import com.azure.resourcemanager.networkcloud.models.BareMetalMachinePatchParameters;
+import com.azure.resourcemanager.networkcloud.models.BareMetalMachinePowerOffParameters;
+import com.azure.resourcemanager.networkcloud.models.BareMetalMachineReplaceParameters;
+import com.azure.resourcemanager.networkcloud.models.BareMetalMachineRunCommandParameters;
+import com.azure.resourcemanager.networkcloud.models.BareMetalMachineRunDataExtractsParameters;
+import com.azure.resourcemanager.networkcloud.models.BareMetalMachineRunReadCommandsParameters;
+import com.azure.resourcemanager.networkcloud.models.BareMetalMachineValidateHardwareParameters;
+
+/** An instance of this class provides access to all the operations defined in BareMetalMachinesClient. */
+public interface BareMetalMachinesClient {
+ /**
+ * List bare metal machines in the subscription.
+ *
+ * Get a list of bare metal machines in the provided subscription.
+ *
+ * @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 list of bare metal machines in the provided subscription as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of bare metal machines in the provided subscription.
+ *
+ * @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 a list of bare metal machines in the provided subscription as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of bare metal machines in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 list of bare metal machines in the provided resource group as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of bare metal machines in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 a list of bare metal machines in the provided resource group as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get properties of the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 properties of the provided bare metal machine along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Get properties of the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 properties of the provided bare metal machine.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineInner getByResourceGroup(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Create or update the bare metal machine.
+ *
+ * Create a new bare metal machine or update the properties of the existing one. All customer initiated requests
+ * will be rejected as the life cycle of this resource is managed by the system.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineParameters The request body.
+ * @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 bareMetalMachine represents the physical machine in the rack.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new bare metal machine or update the properties of the existing one. All customer initiated requests
+ * will be rejected as the life cycle of this resource is managed by the system.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineParameters The request body.
+ * @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 bareMetalMachine represents the physical machine in the rack.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new bare metal machine or update the properties of the existing one. All customer initiated requests
+ * will be rejected as the life cycle of this resource is managed by the system.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineParameters The request body.
+ * @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 bareMetalMachine represents the physical machine in the rack.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineInner createOrUpdate(
+ String resourceGroupName, String bareMetalMachineName, BareMetalMachineInner bareMetalMachineParameters);
+
+ /**
+ * Create or update the bare metal machine.
+ *
+ * Create a new bare metal machine or update the properties of the existing one. All customer initiated requests
+ * will be rejected as the life cycle of this resource is managed by the system.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineParameters The request body.
+ * @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 bareMetalMachine represents the physical machine in the rack.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineInner createOrUpdate(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineInner bareMetalMachineParameters,
+ Context context);
+
+ /**
+ * Delete the bare metal machine.
+ *
+ * Delete the provided bare metal machine. All customer initiated requests will be rejected as the life cycle of
+ * this resource is managed by the system.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Delete the provided bare metal machine. All customer initiated requests will be rejected as the life cycle of
+ * this resource is managed by the system.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Delete the provided bare metal machine. All customer initiated requests will be rejected as the life cycle of
+ * this resource is managed by the system.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 bareMetalMachineName);
+
+ /**
+ * Delete the bare metal machine.
+ *
+ * Delete the provided bare metal machine. All customer initiated requests will be rejected as the life cycle of
+ * this resource is managed by the system.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 bareMetalMachineName, Context context);
+
+ /**
+ * Patch the bare metal machine.
+ *
+ * Patch properties of the provided bare metal machine, or update tags associated with the bare metal machine.
+ * Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 bareMetalMachine represents the physical machine in the rack.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Patch properties of the provided bare metal machine, or update tags associated with the bare metal machine.
+ * Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineUpdateParameters The request body.
+ * @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 bareMetalMachine represents the physical machine in the rack.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Patch properties of the provided bare metal machine, or update tags associated with the bare metal machine.
+ * Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 bareMetalMachine represents the physical machine in the rack.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineInner update(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Patch the bare metal machine.
+ *
+ * Patch properties of the provided bare metal machine, or update tags associated with the bare metal machine.
+ * Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineUpdateParameters The request body.
+ * @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 bareMetalMachine represents the physical machine in the rack.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BareMetalMachineInner update(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachinePatchParameters bareMetalMachineUpdateParameters,
+ Context context);
+
+ /**
+ * Cordon the bare metal machine.
+ *
+ * Cordon the provided bare metal machine's Kubernetes node.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Cordon the provided bare metal machine's Kubernetes node.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineCordonParameters The request body.
+ * @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 Cordon the provided bare metal machine's Kubernetes node.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 cordon(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Cordon the bare metal machine.
+ *
+ * Cordon the provided bare metal machine's Kubernetes node.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineCordonParameters The request body.
+ * @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 cordon(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineCordonParameters bareMetalMachineCordonParameters,
+ Context context);
+
+ /**
+ * Power off the bare metal machine.
+ *
+ * Power off the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Power off the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachinePowerOffParameters The request body.
+ * @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 Power off the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 powerOff(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Power off the bare metal machine.
+ *
+ * Power off the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachinePowerOffParameters The request body.
+ * @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 powerOff(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachinePowerOffParameters bareMetalMachinePowerOffParameters,
+ Context context);
+
+ /**
+ * Reimage the bare metal machine.
+ *
+ * Reimage the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Reimage the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Reimage the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 reimage(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Reimage the bare metal machine.
+ *
+ * Reimage the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 reimage(String resourceGroupName, String bareMetalMachineName, Context context);
+
+ /**
+ * Replace (service) the bare metal machine.
+ *
+ * Replace the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Replace the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineReplaceParameters The request body.
+ * @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 Replace the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 replace(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Replace (service) the bare metal machine.
+ *
+ * Replace the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineReplaceParameters The request body.
+ * @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 replace(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineReplaceParameters bareMetalMachineReplaceParameters,
+ Context context);
+
+ /**
+ * Restart the bare metal machine.
+ *
+ * Restart the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Restart the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Restart the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 restart(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Restart the bare metal machine.
+ *
+ * Restart the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 restart(String resourceGroupName, String bareMetalMachineName, Context context);
+
+ /**
+ * Run the command on the bare metal machine.
+ *
+ * Run the command or the script on the provided bare metal machine. The URL to storage account with the command
+ * execution results and the command exit code can be retrieved from the operation status API once available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunCommandParameters The request body.
+ * @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 Run the command or the script on the provided bare metal machine. The URL to storage account with the command
+ * execution results and the command exit code can be retrieved from the operation status API once available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunCommandParameters The request body.
+ * @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 Run the command or the script on the provided bare metal machine. The URL to storage account with the command
+ * execution results and the command exit code can be retrieved from the operation status API once available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunCommandParameters The request body.
+ * @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 runCommand(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineRunCommandParameters bareMetalMachineRunCommandParameters);
+
+ /**
+ * Run the command on the bare metal machine.
+ *
+ * Run the command or the script on the provided bare metal machine. The URL to storage account with the command
+ * execution results and the command exit code can be retrieved from the operation status API once available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunCommandParameters The request body.
+ * @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 runCommand(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineRunCommandParameters bareMetalMachineRunCommandParameters,
+ Context context);
+
+ /**
+ * Run data extraction for a bare metal machine.
+ *
+ * Run one or more data extractions on the provided bare metal machine. The URL to storage account with the
+ * command execution results and the command exit code can be retrieved from the operation status API once
+ * available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunDataExtractsParameters The request body.
+ * @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 Run one or more data extractions on the provided bare metal machine. The URL to storage account with the
+ * command execution results and the command exit code can be retrieved from the operation status API once
+ * available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunDataExtractsParameters The request body.
+ * @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 Run one or more data extractions on the provided bare metal machine. The URL to storage account with the
+ * command execution results and the command exit code can be retrieved from the operation status API once
+ * available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunDataExtractsParameters The request body.
+ * @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 runDataExtracts(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineRunDataExtractsParameters bareMetalMachineRunDataExtractsParameters);
+
+ /**
+ * Run data extraction for a bare metal machine.
+ *
+ * Run one or more data extractions on the provided bare metal machine. The URL to storage account with the
+ * command execution results and the command exit code can be retrieved from the operation status API once
+ * available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunDataExtractsParameters The request body.
+ * @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 runDataExtracts(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineRunDataExtractsParameters bareMetalMachineRunDataExtractsParameters,
+ Context context);
+
+ /**
+ * Run read-only commands against a bare metal machine.
+ *
+ * Run one or more read-only commands on the provided bare metal machine. The URL to storage account with the
+ * command execution results and the command exit code can be retrieved from the operation status API once
+ * available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunReadCommandsParameters The request body.
+ * @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 Run one or more read-only commands on the provided bare metal machine. The URL to storage account with the
+ * command execution results and the command exit code can be retrieved from the operation status API once
+ * available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunReadCommandsParameters The request body.
+ * @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 Run one or more read-only commands on the provided bare metal machine. The URL to storage account with the
+ * command execution results and the command exit code can be retrieved from the operation status API once
+ * available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunReadCommandsParameters The request body.
+ * @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 runReadCommands(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineRunReadCommandsParameters bareMetalMachineRunReadCommandsParameters);
+
+ /**
+ * Run read-only commands against a bare metal machine.
+ *
+ * Run one or more read-only commands on the provided bare metal machine. The URL to storage account with the
+ * command execution results and the command exit code can be retrieved from the operation status API once
+ * available.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineRunReadCommandsParameters The request body.
+ * @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 runReadCommands(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineRunReadCommandsParameters bareMetalMachineRunReadCommandsParameters,
+ Context context);
+
+ /**
+ * Start the bare metal machine.
+ *
+ * Start the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Start the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Start the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 start(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Start the bare metal machine.
+ *
+ * Start the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 start(String resourceGroupName, String bareMetalMachineName, Context context);
+
+ /**
+ * Uncordon the bare metal machine.
+ *
+ * Uncordon the provided bare metal machine's Kubernetes node.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Uncordon the provided bare metal machine's Kubernetes node.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 Uncordon the provided bare metal machine's Kubernetes node.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 uncordon(String resourceGroupName, String bareMetalMachineName);
+
+ /**
+ * Uncordon the bare metal machine.
+ *
+ * Uncordon the provided bare metal machine's Kubernetes node.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @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 uncordon(String resourceGroupName, String bareMetalMachineName, Context context);
+
+ /**
+ * Trigger hardware validation of the bare metal machine.
+ *
+ * Validate the hardware of the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineValidateHardwareParameters The request body.
+ * @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 Validate the hardware of the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineValidateHardwareParameters The request body.
+ * @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 Validate the hardware of the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineValidateHardwareParameters The request body.
+ * @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 validateHardware(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineValidateHardwareParameters bareMetalMachineValidateHardwareParameters);
+
+ /**
+ * Trigger hardware validation of the bare metal machine.
+ *
+ * Validate the hardware of the provided bare metal machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param bareMetalMachineName The name of the bare metal machine.
+ * @param bareMetalMachineValidateHardwareParameters The request body.
+ * @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 validateHardware(
+ String resourceGroupName,
+ String bareMetalMachineName,
+ BareMetalMachineValidateHardwareParameters bareMetalMachineValidateHardwareParameters,
+ Context context);
+}
diff --git a/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/BmcKeySetsClient.java b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/BmcKeySetsClient.java
new file mode 100644
index 000000000000..68b04d296b9d
--- /dev/null
+++ b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/BmcKeySetsClient.java
@@ -0,0 +1,315 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.networkcloud.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+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.SyncPoller;
+import com.azure.resourcemanager.networkcloud.fluent.models.BmcKeySetInner;
+import com.azure.resourcemanager.networkcloud.models.BmcKeySetPatchParameters;
+
+/** An instance of this class provides access to all the operations defined in BmcKeySetsClient. */
+public interface BmcKeySetsClient {
+ /**
+ * List baseboard management controller key sets of the cluster in the resource group.
+ *
+ * Get a list of baseboard management controller key sets of the cluster in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @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 list of baseboard management controller key sets of the cluster in the provided resource group as
+ * paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of baseboard management controller key sets of the cluster in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @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 a list of baseboard management controller key sets of the cluster in the provided resource group as
+ * paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get baseboard management controller key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @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 baseboard management controller key set of the provided cluster along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Get baseboard management controller key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @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 baseboard management controller key set of the provided cluster.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BmcKeySetInner get(String resourceGroupName, String clusterName, String bmcKeySetName);
+
+ /**
+ * Create or update the baseboard management controller key set of the cluster.
+ *
+ * Create a new baseboard management controller key set or update the existing one for the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @param bmcKeySetParameters The request body.
+ * @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 bmcKeySet represents the baseboard management controller key set.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new baseboard management controller key set or update the existing one for the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @param bmcKeySetParameters The request body.
+ * @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 bmcKeySet represents the baseboard management controller key set.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new baseboard management controller key set or update the existing one for the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @param bmcKeySetParameters The request body.
+ * @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 bmcKeySet represents the baseboard management controller key set.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BmcKeySetInner createOrUpdate(
+ String resourceGroupName, String clusterName, String bmcKeySetName, BmcKeySetInner bmcKeySetParameters);
+
+ /**
+ * Create or update the baseboard management controller key set of the cluster.
+ *
+ * Create a new baseboard management controller key set or update the existing one for the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @param bmcKeySetParameters The request body.
+ * @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 bmcKeySet represents the baseboard management controller key set.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BmcKeySetInner createOrUpdate(
+ String resourceGroupName,
+ String clusterName,
+ String bmcKeySetName,
+ BmcKeySetInner bmcKeySetParameters,
+ Context context);
+
+ /**
+ * Delete the baseboard management controller key set of the cluster.
+ *
+ * Delete the baseboard management controller key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @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 Delete the baseboard management controller key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @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 Delete the baseboard management controller key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @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 clusterName, String bmcKeySetName);
+
+ /**
+ * Delete the baseboard management controller key set of the cluster.
+ *
+ * Delete the baseboard management controller key set of the provided cluster.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @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 clusterName, String bmcKeySetName, Context context);
+
+ /**
+ * Patch baseboard management controller key set of the cluster.
+ *
+ * Patch properties of baseboard management controller key set for the provided cluster, or update the tags
+ * associated with it. Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @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 bmcKeySet represents the baseboard management controller key set.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Patch properties of baseboard management controller key set for the provided cluster, or update the tags
+ * associated with it. Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @param bmcKeySetUpdateParameters The request body.
+ * @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 bmcKeySet represents the baseboard management controller key set.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Patch properties of baseboard management controller key set for the provided cluster, or update the tags
+ * associated with it. Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @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 bmcKeySet represents the baseboard management controller key set.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BmcKeySetInner update(String resourceGroupName, String clusterName, String bmcKeySetName);
+
+ /**
+ * Patch baseboard management controller key set of the cluster.
+ *
+ * Patch properties of baseboard management controller key set for the provided cluster, or update the tags
+ * associated with it. Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterName The name of the cluster.
+ * @param bmcKeySetName The name of the baseboard management controller key set.
+ * @param bmcKeySetUpdateParameters The request body.
+ * @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 bmcKeySet represents the baseboard management controller key set.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ BmcKeySetInner update(
+ String resourceGroupName,
+ String clusterName,
+ String bmcKeySetName,
+ BmcKeySetPatchParameters bmcKeySetUpdateParameters,
+ Context context);
+}
diff --git a/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/CloudServicesNetworksClient.java b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/CloudServicesNetworksClient.java
new file mode 100644
index 000000000000..8fb0334b616b
--- /dev/null
+++ b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/CloudServicesNetworksClient.java
@@ -0,0 +1,335 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.networkcloud.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+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.SyncPoller;
+import com.azure.resourcemanager.networkcloud.fluent.models.CloudServicesNetworkInner;
+import com.azure.resourcemanager.networkcloud.models.CloudServicesNetworkPatchParameters;
+
+/** An instance of this class provides access to all the operations defined in CloudServicesNetworksClient. */
+public interface CloudServicesNetworksClient {
+ /**
+ * List cloud services networks in the subscription.
+ *
+ * Get a list of cloud services networks in the provided subscription.
+ *
+ * @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 list of cloud services networks in the provided subscription as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of cloud services networks in the provided subscription.
+ *
+ * @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 a list of cloud services networks in the provided subscription as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of cloud services networks in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 list of cloud services networks in the provided resource group as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of cloud services networks in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 a list of cloud services networks in the provided resource group as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get properties of the provided cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @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 properties of the provided cloud services network along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Get properties of the provided cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @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 properties of the provided cloud services network.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CloudServicesNetworkInner getByResourceGroup(String resourceGroupName, String cloudServicesNetworkName);
+
+ /**
+ * Create or update the cloud services network.
+ *
+ * Create a new cloud services network or update the properties of the existing cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @param cloudServicesNetworkParameters The request body.
+ * @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 cloudServicesNetwork represents additional egress information that
+ * will be used by associated virtual machines or hybrid AKS clusters.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new cloud services network or update the properties of the existing cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @param cloudServicesNetworkParameters The request body.
+ * @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 cloudServicesNetwork represents additional egress information that
+ * will be used by associated virtual machines or hybrid AKS clusters.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new cloud services network or update the properties of the existing cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @param cloudServicesNetworkParameters The request body.
+ * @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 cloudServicesNetwork represents additional egress information that will be used by associated virtual
+ * machines or hybrid AKS clusters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CloudServicesNetworkInner createOrUpdate(
+ String resourceGroupName,
+ String cloudServicesNetworkName,
+ CloudServicesNetworkInner cloudServicesNetworkParameters);
+
+ /**
+ * Create or update the cloud services network.
+ *
+ * Create a new cloud services network or update the properties of the existing cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @param cloudServicesNetworkParameters The request body.
+ * @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 cloudServicesNetwork represents additional egress information that will be used by associated virtual
+ * machines or hybrid AKS clusters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CloudServicesNetworkInner createOrUpdate(
+ String resourceGroupName,
+ String cloudServicesNetworkName,
+ CloudServicesNetworkInner cloudServicesNetworkParameters,
+ Context context);
+
+ /**
+ * Delete the cloud services network.
+ *
+ * Delete the provided cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @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 Delete the provided cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @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 Delete the provided cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @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 cloudServicesNetworkName);
+
+ /**
+ * Delete the cloud services network.
+ *
+ * Delete the provided cloud services network.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @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 cloudServicesNetworkName, Context context);
+
+ /**
+ * Patch the cloud services network.
+ *
+ * Update properties of the provided cloud services network, or update the tags associated with it. Properties
+ * and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @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 cloudServicesNetwork represents additional egress information that
+ * will be used by associated virtual machines or hybrid AKS clusters.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Update properties of the provided cloud services network, or update the tags associated with it. Properties
+ * and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @param cloudServicesNetworkUpdateParameters The request body.
+ * @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 cloudServicesNetwork represents additional egress information that
+ * will be used by associated virtual machines or hybrid AKS clusters.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Update properties of the provided cloud services network, or update the tags associated with it. Properties
+ * and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @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 cloudServicesNetwork represents additional egress information that will be used by associated virtual
+ * machines or hybrid AKS clusters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CloudServicesNetworkInner update(String resourceGroupName, String cloudServicesNetworkName);
+
+ /**
+ * Patch the cloud services network.
+ *
+ * Update properties of the provided cloud services network, or update the tags associated with it. Properties
+ * and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param cloudServicesNetworkName The name of the cloud services network.
+ * @param cloudServicesNetworkUpdateParameters The request body.
+ * @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 cloudServicesNetwork represents additional egress information that will be used by associated virtual
+ * machines or hybrid AKS clusters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CloudServicesNetworkInner update(
+ String resourceGroupName,
+ String cloudServicesNetworkName,
+ CloudServicesNetworkPatchParameters cloudServicesNetworkUpdateParameters,
+ Context context);
+}
diff --git a/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/ClusterManagersClient.java b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/ClusterManagersClient.java
new file mode 100644
index 000000000000..9684d003df06
--- /dev/null
+++ b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/ClusterManagersClient.java
@@ -0,0 +1,285 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.networkcloud.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+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.SyncPoller;
+import com.azure.resourcemanager.networkcloud.fluent.models.ClusterManagerInner;
+import com.azure.resourcemanager.networkcloud.models.ClusterManagerPatchParameters;
+
+/** An instance of this class provides access to all the operations defined in ClusterManagersClient. */
+public interface ClusterManagersClient {
+ /**
+ * List cluster managers in the subscription.
+ *
+ * Get a list of cluster managers in the provided subscription.
+ *
+ * @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 list of cluster managers in the provided subscription as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of cluster managers in the provided subscription.
+ *
+ * @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 a list of cluster managers in the provided subscription as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of cluster managers in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 list of cluster managers in the provided resource group as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get a list of cluster managers in the provided resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @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 a list of cluster managers in the provided resource group as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get the properties of the provided cluster manager.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @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 properties of the provided cluster manager along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Get the properties of the provided cluster manager.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @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 properties of the provided cluster manager.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ClusterManagerInner getByResourceGroup(String resourceGroupName, String clusterManagerName);
+
+ /**
+ * Create or update the cluster manager.
+ *
+ * Create a new cluster manager or update properties of the cluster manager if it exists.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @param clusterManagerParameters The request body.
+ * @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 clusterManager represents a control-plane to manage one or more
+ * on-premises clusters.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new cluster manager or update properties of the cluster manager if it exists.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @param clusterManagerParameters The request body.
+ * @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 clusterManager represents a control-plane to manage one or more
+ * on-premises clusters.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Create a new cluster manager or update properties of the cluster manager if it exists.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @param clusterManagerParameters The request body.
+ * @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 clusterManager represents a control-plane to manage one or more on-premises clusters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ClusterManagerInner createOrUpdate(
+ String resourceGroupName, String clusterManagerName, ClusterManagerInner clusterManagerParameters);
+
+ /**
+ * Create or update the cluster manager.
+ *
+ * Create a new cluster manager or update properties of the cluster manager if it exists.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @param clusterManagerParameters The request body.
+ * @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 clusterManager represents a control-plane to manage one or more on-premises clusters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ClusterManagerInner createOrUpdate(
+ String resourceGroupName,
+ String clusterManagerName,
+ ClusterManagerInner clusterManagerParameters,
+ Context context);
+
+ /**
+ * Delete the cluster manager.
+ *
+ * Delete the provided cluster manager.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @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 Delete the provided cluster manager.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @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 Delete the provided cluster manager.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @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 clusterManagerName);
+
+ /**
+ * Delete the cluster manager.
+ *
+ * Delete the provided cluster manager.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @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 clusterManagerName, Context context);
+
+ /**
+ * Patch the cluster manager.
+ *
+ * Patch properties of the provided cluster manager, or update the tags assigned to the cluster manager.
+ * Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @param clusterManagerUpdateParameters The request body.
+ * @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 clusterManager represents a control-plane to manage one or more on-premises clusters along with {@link
+ * Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Patch properties of the provided cluster manager, or update the tags assigned to the cluster manager.
+ * Properties and tag updates can be done independently.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param clusterManagerName The name of the cluster manager.
+ * @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 clusterManager represents a control-plane to manage one or more on-premises clusters.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ClusterManagerInner update(String resourceGroupName, String clusterManagerName);
+}
diff --git a/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/ClustersClient.java b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/ClustersClient.java
new file mode 100644
index 000000000000..652e7ad40ec9
--- /dev/null
+++ b/sdk/networkcloud/azure-resourcemanager-networkcloud/src/main/java/com/azure/resourcemanager/networkcloud/fluent/ClustersClient.java
@@ -0,0 +1,444 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.networkcloud.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+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.SyncPoller;
+import com.azure.resourcemanager.networkcloud.fluent.models.ClusterInner;
+import com.azure.resourcemanager.networkcloud.models.ClusterDeployParameters;
+import com.azure.resourcemanager.networkcloud.models.ClusterPatchParameters;
+import com.azure.resourcemanager.networkcloud.models.ClusterUpdateVersionParameters;
+
+/** An instance of this class provides access to all the operations defined in ClustersClient. */
+public interface ClustersClient {
+ /**
+ * List clusters in the subscription.
+ *
+ * Get a list of clusters in the provided subscription.
+ *
+ * @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 list of clusters in the provided subscription as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable