diff --git a/eng/versioning/version_client.txt b/eng/versioning/version_client.txt
index ad9720e1fac9..152586e9dbf2 100644
--- a/eng/versioning/version_client.txt
+++ b/eng/versioning/version_client.txt
@@ -340,6 +340,7 @@ com.azure.resourcemanager:azure-resourcemanager-securityinsights;1.0.0-beta.1;1.
com.azure.resourcemanager:azure-resourcemanager-oep;1.0.0-beta.1;1.0.0-beta.2
com.azure.resourcemanager:azure-resourcemanager-dnsresolver;1.0.0-beta.1;1.0.0-beta.2
com.azure.resourcemanager:azure-resourcemanager-mobilenetwork;1.0.0-beta.1;1.0.0-beta.2
+com.azure.resourcemanager:azure-resourcemanager-machinelearningcompute;1.0.0-beta.1;1.0.0-beta.1
com.azure.tools:azure-sdk-archetype;1.0.0;1.0.0
com.azure.tools:azure-sdk-build-tool;1.0.0-beta.1;1.0.0-beta.1
diff --git a/pom.xml b/pom.xml
index 0ce586ceb6e7..5c6b0c5193a1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -915,6 +915,7 @@
sdk/loganalyticssdk/logicsdk/logz
+ sdk/machinelearningcomputesdk/machinelearningservicessdk/maintenancesdk/managedapplications
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/CHANGELOG.md b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/CHANGELOG.md
new file mode 100644
index 000000000000..76cb672fbd2b
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/CHANGELOG.md
@@ -0,0 +1,5 @@
+# Release History
+
+## 1.0.0-beta.1 (2022-03-15)
+
+- Azure Resource Manager MachineLearningCompute client library for Java. This package contains Microsoft Azure SDK for MachineLearningCompute Management SDK. These APIs allow end users to operate on Azure Machine Learning Compute resources. They support the following operations:
Create or update a cluster
Get a cluster
Patch a cluster
Delete a cluster
Get keys for a cluster
Check if updates are available for system services in a cluster
Update system services in a cluster
Get all clusters in a resource group
Get all clusters in a subscription
. Package tag package-2017-08-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/README.md b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/README.md
new file mode 100644
index 000000000000..690354445382
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/README.md
@@ -0,0 +1,102 @@
+# Azure Resource Manager MachineLearningCompute client library for Java
+
+Azure Resource Manager MachineLearningCompute client library for Java.
+
+This package contains Microsoft Azure SDK for MachineLearningCompute Management SDK. These APIs allow end users to operate on Azure Machine Learning Compute resources. They support the following operations:
Create or update a cluster
Get a cluster
Patch a cluster
Delete a cluster
Get keys for a cluster
Check if updates are available for system services in a cluster
Update system services in a cluster
Get all clusters in a resource group
Get all clusters in a subscription
. Package tag package-2017-08-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+
+## We'd love to hear your feedback
+
+We're always working on improving our products and the way we communicate with our users. So we'd love to learn what's working and how we can do better.
+
+If you haven't already, please take a few minutes to [complete this short survey][survey] we have put together.
+
+Thank you in advance for your collaboration. We really appreciate your time!
+
+## Documentation
+
+Various documentation is available to help you get started
+
+- [API reference documentation][docs]
+
+## Getting started
+
+### Prerequisites
+
+- [Java Development Kit (JDK)][jdk] with version 8 or above
+- [Azure Subscription][azure_subscription]
+
+### Adding the package to your product
+
+[//]: # ({x-version-update-start;com.azure.resourcemanager:azure-resourcemanager-machinelearningcompute;current})
+```xml
+
+ com.azure.resourcemanager
+ azure-resourcemanager-machinelearningcompute
+ 1.0.0-beta.1
+
+```
+[//]: # ({x-version-update-end})
+
+### Include the recommended packages
+
+Azure Management Libraries require a `TokenCredential` implementation for authentication and an `HttpClient` implementation for HTTP client.
+
+[Azure Identity][azure_identity] package and [Azure Core Netty HTTP][azure_core_http_netty] package provide the default implementation.
+
+### Authentication
+
+By default, Azure Active Directory token authentication depends on correct configure of following environment variables.
+
+- `AZURE_CLIENT_ID` for Azure client ID.
+- `AZURE_TENANT_ID` for Azure tenant ID.
+- `AZURE_CLIENT_SECRET` or `AZURE_CLIENT_CERTIFICATE_PATH` for client secret or client certificate.
+
+In addition, Azure subscription ID can be configured via environment variable `AZURE_SUBSCRIPTION_ID`.
+
+With above configuration, `azure` client can be authenticated by following code:
+
+```java
+AzureProfile profile = new AzureProfile(AzureEnvironment.AZURE);
+TokenCredential credential = new DefaultAzureCredentialBuilder()
+ .authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
+ .build();
+MachineLearningComputeManager manager = MachineLearningComputeManager
+ .authenticate(credential, profile);
+```
+
+The sample code assumes global Azure. Please change `AzureEnvironment.AZURE` variable if otherwise.
+
+See [Authentication][authenticate] for more options.
+
+## Key concepts
+
+See [API design][design] for general introduction on design and key concepts on Azure Management Libraries.
+
+## Examples
+
+[Code snippets and samples](https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/SAMPLE.md)
+
+
+## Troubleshooting
+
+## Next steps
+
+## Contributing
+
+For details on contributing to this repository, see the [contributing guide](https://github.com/Azure/azure-sdk-for-java/blob/main/CONTRIBUTING.md).
+
+1. Fork it
+1. Create your feature branch (`git checkout -b my-new-feature`)
+1. Commit your changes (`git commit -am 'Add some feature'`)
+1. Push to the branch (`git push origin my-new-feature`)
+1. Create new Pull Request
+
+
+[survey]: https://microsoft.qualtrics.com/jfe/form/SV_ehN0lIk2FKEBkwd?Q_CHL=DOCS
+[docs]: https://azure.github.io/azure-sdk-for-java/
+[jdk]: https://docs.microsoft.com/java/azure/jdk/
+[azure_subscription]: https://azure.microsoft.com/free/
+[azure_identity]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/identity/azure-identity
+[azure_core_http_netty]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/core/azure-core-http-netty
+[authenticate]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/AUTH.md
+[design]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/DESIGN.md
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/SAMPLE.md b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/SAMPLE.md
new file mode 100644
index 000000000000..9e4b20f94a6b
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/SAMPLE.md
@@ -0,0 +1,307 @@
+# Code snippets and samples
+
+
+## MachineLearningCompute
+
+- [ListAvailableOperations](#machinelearningcompute_listavailableoperations)
+
+## OperationalizationClusters
+
+- [CheckSystemServicesUpdatesAvailable](#operationalizationclusters_checksystemservicesupdatesavailable)
+- [CreateOrUpdate](#operationalizationclusters_createorupdate)
+- [Delete](#operationalizationclusters_delete)
+- [GetByResourceGroup](#operationalizationclusters_getbyresourcegroup)
+- [List](#operationalizationclusters_list)
+- [ListByResourceGroup](#operationalizationclusters_listbyresourcegroup)
+- [ListKeys](#operationalizationclusters_listkeys)
+- [Update](#operationalizationclusters_update)
+- [UpdateSystemServices](#operationalizationclusters_updatesystemservices)
+### MachineLearningCompute_ListAvailableOperations
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for MachineLearningCompute ListAvailableOperations. */
+public final class MachineLearningComputeListAvailableOperationsSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/MachineLearningCompute_ListAvailableOperations.json
+ */
+ /**
+ * Sample code: Machine Learning Compute List Available Operations.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void machineLearningComputeListAvailableOperations(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager.machineLearningComputes().listAvailableOperationsWithResponse(Context.NONE);
+ }
+}
+```
+
+### OperationalizationClusters_CheckSystemServicesUpdatesAvailable
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationalizationClusters CheckSystemServicesUpdatesAvailable. */
+public final class OperationalizationClustersCheckSystemServicesUpdatesAvailableSamp {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_CheckSystemServicesUpdatesAvailable.json
+ */
+ /**
+ * Sample code: Check Update for an Operationalization Cluster.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void checkUpdateForAnOperationalizationCluster(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager
+ .operationalizationClusters()
+ .checkSystemServicesUpdatesAvailableWithResponse("myResourceGroup", "myCluster", Context.NONE);
+ }
+}
+```
+
+### OperationalizationClusters_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.machinelearningcompute.models.AcsClusterProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.ClusterType;
+import com.azure.resourcemanager.machinelearningcompute.models.GlobalServiceConfiguration;
+import com.azure.resourcemanager.machinelearningcompute.models.KubernetesClusterProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.OrchestratorType;
+import com.azure.resourcemanager.machinelearningcompute.models.ServicePrincipalProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.SslConfiguration;
+import com.azure.resourcemanager.machinelearningcompute.models.Status;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for OperationalizationClusters CreateOrUpdate. */
+public final class OperationalizationClustersCreateOrUpdateSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_CreateOrUpdate.json
+ */
+ /**
+ * Sample code: PUT Operationalization Cluster.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void pUTOperationalizationCluster(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager
+ .operationalizationClusters()
+ .define("myCluster")
+ .withRegion("West US")
+ .withExistingResourceGroup("myResourceGroup")
+ .withTags(mapOf("key1", "alpha", "key2", "beta"))
+ .withDescription("My Operationalization Cluster")
+ .withClusterType(ClusterType.ACS)
+ .withContainerService(
+ new AcsClusterProperties()
+ .withOrchestratorType(OrchestratorType.KUBERNETES)
+ .withOrchestratorProperties(
+ new KubernetesClusterProperties()
+ .withServicePrincipal(
+ new ServicePrincipalProperties()
+ .withClientId("abcdefghijklmnopqrt")
+ .withSecret(""))))
+ .withGlobalServiceConfiguration(
+ new GlobalServiceConfiguration()
+ .withSsl(
+ new SslConfiguration()
+ .withStatus(Status.ENABLED)
+ .withCert("afjdklq2131casfakld=")
+ .withKey("flksdafkldsajf=")
+ .withCname("foo.bar.com"))
+ .withAdditionalProperties(mapOf()))
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### OperationalizationClusters_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationalizationClusters Delete. */
+public final class OperationalizationClustersDeleteSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_Delete.json
+ */
+ /**
+ * Sample code: DELETE Operationalization Cluster.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void dELETEOperationalizationCluster(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager.operationalizationClusters().delete("myResourceGroup", "myCluster", null, Context.NONE);
+ }
+}
+```
+
+### OperationalizationClusters_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationalizationClusters GetByResourceGroup. */
+public final class OperationalizationClustersGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_Get.json
+ */
+ /**
+ * Sample code: GET Operationalization Cluster.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void gETOperationalizationCluster(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager
+ .operationalizationClusters()
+ .getByResourceGroupWithResponse("myResourceGroup", "myCluster", Context.NONE);
+ }
+}
+```
+
+### OperationalizationClusters_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationalizationClusters List. */
+public final class OperationalizationClustersListSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_ListBySubscription.json
+ */
+ /**
+ * Sample code: List Operationalization Clusters by Subscription.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void listOperationalizationClustersBySubscription(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager.operationalizationClusters().list(null, Context.NONE);
+ }
+}
+```
+
+### OperationalizationClusters_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationalizationClusters ListByResourceGroup. */
+public final class OperationalizationClustersListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_ListByResourceGroup.json
+ */
+ /**
+ * Sample code: List Operationalization Clusters by Resource Group.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void listOperationalizationClustersByResourceGroup(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager.operationalizationClusters().listByResourceGroup("myResourceGroup", null, Context.NONE);
+ }
+}
+```
+
+### OperationalizationClusters_ListKeys
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationalizationClusters ListKeys. */
+public final class OperationalizationClustersListKeysSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_ListKeys.json
+ */
+ /**
+ * Sample code: List Keys of an Operationalization Cluster.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void listKeysOfAnOperationalizationCluster(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager.operationalizationClusters().listKeysWithResponse("myResourceGroup", "myCluster", Context.NONE);
+ }
+}
+```
+
+### OperationalizationClusters_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.machinelearningcompute.models.OperationalizationCluster;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for OperationalizationClusters Update. */
+public final class OperationalizationClustersUpdateSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_Update.json
+ */
+ /**
+ * Sample code: PATCH Operationalization Cluster.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void pATCHOperationalizationCluster(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ OperationalizationCluster resource =
+ manager
+ .operationalizationClusters()
+ .getByResourceGroupWithResponse("myResourceGroup", "myCluster", Context.NONE)
+ .getValue();
+ resource.update().withTags(mapOf("key1", "value1")).apply();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### OperationalizationClusters_UpdateSystemServices
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationalizationClusters UpdateSystemServices. */
+public final class OperationalizationClustersUpdateSystemServicesSamples {
+ /*
+ * x-ms-original-file: specification/machinelearningcompute/resource-manager/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/examples/OperationalizationClusters_UpdateSystemServices.json
+ */
+ /**
+ * Sample code: Update System Services in an Operationalization Cluster.
+ *
+ * @param manager Entry point to MachineLearningComputeManager.
+ */
+ public static void updateSystemServicesInAnOperationalizationCluster(
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager) {
+ manager.operationalizationClusters().updateSystemServices("myResourceGroup", "myCluster", Context.NONE);
+ }
+}
+```
+
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/pom.xml b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/pom.xml
new file mode 100644
index 000000000000..b981d882fece
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/pom.xml
@@ -0,0 +1,55 @@
+
+ 4.0.0
+
+ com.azure
+ azure-client-sdk-parent
+ 1.7.0
+ ../../parents/azure-client-sdk-parent
+
+
+ com.azure.resourcemanager
+ azure-resourcemanager-machinelearningcompute
+ 1.0.0-beta.1
+ jar
+
+ Microsoft Azure SDK for MachineLearningCompute Management
+ This package contains Microsoft Azure SDK for MachineLearningCompute Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. These APIs allow end users to operate on Azure Machine Learning Compute resources. They support the following operations:<ul><li>Create or update a cluster</li><li>Get a cluster</li><li>Patch a cluster</li><li>Delete a cluster</li><li>Get keys for a cluster</li><li>Check if updates are available for system services in a cluster</li><li>Update system services in a cluster</li><li>Get all clusters in a resource group</li><li>Get all clusters in a subscription</li></ul>. Package tag package-2017-08-preview.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+
+ https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+
+ microsoft
+ Microsoft
+
+
+
+ UTF-8
+ true
+
+
+
+ com.azure
+ azure-core
+ 1.26.0
+
+
+ com.azure
+ azure-core-management
+ 1.5.3
+
+
+
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/MachineLearningComputeManager.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/MachineLearningComputeManager.java
new file mode 100644
index 000000000000..fd7540726c90
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/MachineLearningComputeManager.java
@@ -0,0 +1,267 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute;
+
+import com.azure.core.credential.TokenCredential;
+import com.azure.core.http.HttpClient;
+import com.azure.core.http.HttpPipeline;
+import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.HttpPipelinePosition;
+import com.azure.core.http.policy.AddDatePolicy;
+import com.azure.core.http.policy.HttpLogOptions;
+import com.azure.core.http.policy.HttpLoggingPolicy;
+import com.azure.core.http.policy.HttpPipelinePolicy;
+import com.azure.core.http.policy.HttpPolicyProviders;
+import com.azure.core.http.policy.RequestIdPolicy;
+import com.azure.core.http.policy.RetryPolicy;
+import com.azure.core.http.policy.UserAgentPolicy;
+import com.azure.core.management.http.policy.ArmChallengeAuthenticationPolicy;
+import com.azure.core.management.profile.AzureProfile;
+import com.azure.core.util.Configuration;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.machinelearningcompute.fluent.MachineLearningComputeManagementClient;
+import com.azure.resourcemanager.machinelearningcompute.implementation.MachineLearningComputeManagementClientBuilder;
+import com.azure.resourcemanager.machinelearningcompute.implementation.MachineLearningComputesImpl;
+import com.azure.resourcemanager.machinelearningcompute.implementation.OperationalizationClustersImpl;
+import com.azure.resourcemanager.machinelearningcompute.models.MachineLearningComputes;
+import com.azure.resourcemanager.machinelearningcompute.models.OperationalizationClusters;
+import java.time.Duration;
+import java.time.temporal.ChronoUnit;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/**
+ * Entry point to MachineLearningComputeManager. These APIs allow end users to operate on Azure Machine Learning Compute
+ * resources. They support the following operations:<ul><li>Create or update a
+ * cluster</li><li>Get a cluster</li><li>Patch a cluster</li><li>Delete a
+ * cluster</li><li>Get keys for a cluster</li><li>Check if updates are available for system
+ * services in a cluster</li><li>Update system services in a cluster</li><li>Get all clusters in
+ * a resource group</li><li>Get all clusters in a subscription</li></ul>.
+ */
+public final class MachineLearningComputeManager {
+ private OperationalizationClusters operationalizationClusters;
+
+ private MachineLearningComputes machineLearningComputes;
+
+ private final MachineLearningComputeManagementClient clientObject;
+
+ private MachineLearningComputeManager(
+ HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
+ Objects.requireNonNull(httpPipeline, "'httpPipeline' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+ this.clientObject =
+ new MachineLearningComputeManagementClientBuilder()
+ .pipeline(httpPipeline)
+ .endpoint(profile.getEnvironment().getResourceManagerEndpoint())
+ .subscriptionId(profile.getSubscriptionId())
+ .defaultPollInterval(defaultPollInterval)
+ .buildClient();
+ }
+
+ /**
+ * Creates an instance of MachineLearningCompute service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the MachineLearningCompute service API instance.
+ */
+ public static MachineLearningComputeManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+ return configure().authenticate(credential, profile);
+ }
+
+ /**
+ * Gets a Configurable instance that can be used to create MachineLearningComputeManager with optional
+ * configuration.
+ *
+ * @return the Configurable instance allowing configurations.
+ */
+ public static Configurable configure() {
+ return new MachineLearningComputeManager.Configurable();
+ }
+
+ /** The Configurable allowing configurations to be set. */
+ public static final class Configurable {
+ private static final ClientLogger LOGGER = new ClientLogger(Configurable.class);
+
+ private HttpClient httpClient;
+ private HttpLogOptions httpLogOptions;
+ private final List policies = new ArrayList<>();
+ private final List scopes = new ArrayList<>();
+ private RetryPolicy retryPolicy;
+ private Duration defaultPollInterval;
+
+ private Configurable() {
+ }
+
+ /**
+ * Sets the http client.
+ *
+ * @param httpClient the HTTP client.
+ * @return the configurable object itself.
+ */
+ public Configurable withHttpClient(HttpClient httpClient) {
+ this.httpClient = Objects.requireNonNull(httpClient, "'httpClient' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Sets the logging options to the HTTP pipeline.
+ *
+ * @param httpLogOptions the HTTP log options.
+ * @return the configurable object itself.
+ */
+ public Configurable withLogOptions(HttpLogOptions httpLogOptions) {
+ this.httpLogOptions = Objects.requireNonNull(httpLogOptions, "'httpLogOptions' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Adds the pipeline policy to the HTTP pipeline.
+ *
+ * @param policy the HTTP pipeline policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withPolicy(HttpPipelinePolicy policy) {
+ this.policies.add(Objects.requireNonNull(policy, "'policy' cannot be null."));
+ return this;
+ }
+
+ /**
+ * Adds the scope to permission sets.
+ *
+ * @param scope the scope.
+ * @return the configurable object itself.
+ */
+ public Configurable withScope(String scope) {
+ this.scopes.add(Objects.requireNonNull(scope, "'scope' cannot be null."));
+ return this;
+ }
+
+ /**
+ * Sets the retry policy to the HTTP pipeline.
+ *
+ * @param retryPolicy the HTTP pipeline retry policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withRetryPolicy(RetryPolicy retryPolicy) {
+ this.retryPolicy = Objects.requireNonNull(retryPolicy, "'retryPolicy' 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 MachineLearningCompute service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the MachineLearningCompute service API instance.
+ */
+ public MachineLearningComputeManager 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.machinelearningcompute")
+ .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) {
+ retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+ }
+ List policies = new ArrayList<>();
+ policies.add(new UserAgentPolicy(userAgentBuilder.toString()));
+ policies.add(new RequestIdPolicy());
+ policies
+ .addAll(
+ this
+ .policies
+ .stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_CALL)
+ .collect(Collectors.toList()));
+ HttpPolicyProviders.addBeforeRetryPolicies(policies);
+ policies.add(retryPolicy);
+ policies.add(new AddDatePolicy());
+ policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
+ policies
+ .addAll(
+ this
+ .policies
+ .stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_RETRY)
+ .collect(Collectors.toList()));
+ HttpPolicyProviders.addAfterRetryPolicies(policies);
+ policies.add(new HttpLoggingPolicy(httpLogOptions));
+ HttpPipeline httpPipeline =
+ new HttpPipelineBuilder()
+ .httpClient(httpClient)
+ .policies(policies.toArray(new HttpPipelinePolicy[0]))
+ .build();
+ return new MachineLearningComputeManager(httpPipeline, profile, defaultPollInterval);
+ }
+ }
+
+ /** @return Resource collection API of OperationalizationClusters. */
+ public OperationalizationClusters operationalizationClusters() {
+ if (this.operationalizationClusters == null) {
+ this.operationalizationClusters =
+ new OperationalizationClustersImpl(clientObject.getOperationalizationClusters(), this);
+ }
+ return operationalizationClusters;
+ }
+
+ /** @return Resource collection API of MachineLearningComputes. */
+ public MachineLearningComputes machineLearningComputes() {
+ if (this.machineLearningComputes == null) {
+ this.machineLearningComputes =
+ new MachineLearningComputesImpl(clientObject.getMachineLearningComputes(), this);
+ }
+ return machineLearningComputes;
+ }
+
+ /**
+ * @return Wrapped service client MachineLearningComputeManagementClient providing direct access to the underlying
+ * auto-generated API implementation, based on Azure REST API.
+ */
+ public MachineLearningComputeManagementClient serviceClient() {
+ return this.clientObject;
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/MachineLearningComputeManagementClient.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/MachineLearningComputeManagementClient.java
new file mode 100644
index 000000000000..d29eb634d429
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/MachineLearningComputeManagementClient.java
@@ -0,0 +1,60 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.fluent;
+
+import com.azure.core.http.HttpPipeline;
+import java.time.Duration;
+
+/** The interface for MachineLearningComputeManagementClient class. */
+public interface MachineLearningComputeManagementClient {
+ /**
+ * Gets The Azure subscription ID.
+ *
+ * @return the subscriptionId value.
+ */
+ String getSubscriptionId();
+
+ /**
+ * Gets server parameter.
+ *
+ * @return the endpoint value.
+ */
+ String getEndpoint();
+
+ /**
+ * Gets Api Version.
+ *
+ * @return the apiVersion value.
+ */
+ String getApiVersion();
+
+ /**
+ * Gets The HTTP pipeline to send requests through.
+ *
+ * @return the httpPipeline value.
+ */
+ HttpPipeline getHttpPipeline();
+
+ /**
+ * Gets The default poll interval for long-running operation.
+ *
+ * @return the defaultPollInterval value.
+ */
+ Duration getDefaultPollInterval();
+
+ /**
+ * Gets the OperationalizationClustersClient object to access its operations.
+ *
+ * @return the OperationalizationClustersClient object.
+ */
+ OperationalizationClustersClient getOperationalizationClusters();
+
+ /**
+ * Gets the MachineLearningComputesClient object to access its operations.
+ *
+ * @return the MachineLearningComputesClient object.
+ */
+ MachineLearningComputesClient getMachineLearningComputes();
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/MachineLearningComputesClient.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/MachineLearningComputesClient.java
new file mode 100644
index 000000000000..9729a07c0684
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/MachineLearningComputesClient.java
@@ -0,0 +1,36 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.machinelearningcompute.fluent.models.AvailableOperationsInner;
+
+/** An instance of this class provides access to all the operations defined in MachineLearningComputesClient. */
+public interface MachineLearningComputesClient {
+ /**
+ * Gets all available operations.
+ *
+ * @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 all available operations.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AvailableOperationsInner listAvailableOperations();
+
+ /**
+ * Gets all available operations.
+ *
+ * @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 all available operations along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listAvailableOperationsWithResponse(Context context);
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/OperationalizationClustersClient.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/OperationalizationClustersClient.java
new file mode 100644
index 000000000000..8e3562f60885
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/OperationalizationClustersClient.java
@@ -0,0 +1,387 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.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.machinelearningcompute.fluent.models.CheckSystemServicesUpdatesAvailableResponseInner;
+import com.azure.resourcemanager.machinelearningcompute.fluent.models.OperationalizationClusterCredentialsInner;
+import com.azure.resourcemanager.machinelearningcompute.fluent.models.OperationalizationClusterInner;
+import com.azure.resourcemanager.machinelearningcompute.fluent.models.UpdateSystemServicesResponseInner;
+import com.azure.resourcemanager.machinelearningcompute.models.OperationalizationClusterUpdateParameters;
+
+/** An instance of this class provides access to all the operations defined in OperationalizationClustersClient. */
+public interface OperationalizationClustersClient {
+ /**
+ * Create or update an operationalization cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param parameters Parameters supplied to create or update an Operationalization 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 the {@link SyncPoller} for polling of instance of an Azure ML Operationalization Cluster resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, OperationalizationClusterInner> beginCreateOrUpdate(
+ String resourceGroupName, String clusterName, OperationalizationClusterInner parameters);
+
+ /**
+ * Create or update an operationalization cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param parameters Parameters supplied to create or update an Operationalization 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 the {@link SyncPoller} for polling of instance of an Azure ML Operationalization Cluster resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, OperationalizationClusterInner> beginCreateOrUpdate(
+ String resourceGroupName, String clusterName, OperationalizationClusterInner parameters, Context context);
+
+ /**
+ * Create or update an operationalization cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param parameters Parameters supplied to create or update an Operationalization 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 instance of an Azure ML Operationalization Cluster resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ OperationalizationClusterInner createOrUpdate(
+ String resourceGroupName, String clusterName, OperationalizationClusterInner parameters);
+
+ /**
+ * Create or update an operationalization cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param parameters Parameters supplied to create or update an Operationalization 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 instance of an Azure ML Operationalization Cluster resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ OperationalizationClusterInner createOrUpdate(
+ String resourceGroupName, String clusterName, OperationalizationClusterInner parameters, Context context);
+
+ /**
+ * Gets the operationalization cluster resource view. Note that the credentials are not returned by this call. Call
+ * ListKeys to get them.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 the operationalization cluster resource view.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ OperationalizationClusterInner getByResourceGroup(String resourceGroupName, String clusterName);
+
+ /**
+ * Gets the operationalization cluster resource view. Note that the credentials are not returned by this call. Call
+ * ListKeys to get them.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 the operationalization cluster resource view along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String clusterName, Context context);
+
+ /**
+ * The PATCH operation can be used to update only the tags for a cluster. Use PUT operation to update other
+ * properties.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param parameters The parameters supplied to patch 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 instance of an Azure ML Operationalization Cluster resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ OperationalizationClusterInner update(
+ String resourceGroupName, String clusterName, OperationalizationClusterUpdateParameters parameters);
+
+ /**
+ * The PATCH operation can be used to update only the tags for a cluster. Use PUT operation to update other
+ * properties.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param parameters The parameters supplied to patch 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 instance of an Azure ML Operationalization Cluster resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response updateWithResponse(
+ String resourceGroupName,
+ String clusterName,
+ OperationalizationClusterUpdateParameters parameters,
+ Context context);
+
+ /**
+ * Deletes the specified cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param deleteAll If true, deletes all resources associated with this 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 the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String clusterName, Boolean deleteAll);
+
+ /**
+ * Deletes the specified cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param deleteAll If true, deletes all resources associated with this 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 the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String clusterName, Boolean deleteAll, Context context);
+
+ /**
+ * Deletes the specified cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param deleteAll If true, deletes all resources associated with this 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String clusterName, Boolean deleteAll);
+
+ /**
+ * Deletes the specified cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String clusterName);
+
+ /**
+ * Deletes the specified cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param clusterName The name of the cluster.
+ * @param deleteAll If true, deletes all resources associated with this 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.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String clusterName, Boolean deleteAll, Context context);
+
+ /**
+ * Gets the credentials for the specified cluster such as Storage, ACR and ACS credentials. This is a long running
+ * operation because it fetches keys from dependencies.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 the credentials for the specified cluster such as Storage, ACR and ACS credentials.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ OperationalizationClusterCredentialsInner listKeys(String resourceGroupName, String clusterName);
+
+ /**
+ * Gets the credentials for the specified cluster such as Storage, ACR and ACS credentials. This is a long running
+ * operation because it fetches keys from dependencies.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 the credentials for the specified cluster such as Storage, ACR and ACS credentials along with {@link
+ * Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listKeysWithResponse(
+ String resourceGroupName, String clusterName, Context context);
+
+ /**
+ * Checks if updates are available for system services in the cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 information about updates available for system services in a cluster.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ CheckSystemServicesUpdatesAvailableResponseInner checkSystemServicesUpdatesAvailable(
+ String resourceGroupName, String clusterName);
+
+ /**
+ * Checks if updates are available for system services in the cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 information about updates available for system services in a cluster along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response checkSystemServicesUpdatesAvailableWithResponse(
+ String resourceGroupName, String clusterName, Context context);
+
+ /**
+ * Updates system services in a cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 the {@link SyncPoller} for polling of response of the update system services API.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, UpdateSystemServicesResponseInner>
+ beginUpdateSystemServices(String resourceGroupName, String clusterName);
+
+ /**
+ * Updates system services in a cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 the {@link SyncPoller} for polling of response of the update system services API.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, UpdateSystemServicesResponseInner>
+ beginUpdateSystemServices(String resourceGroupName, String clusterName, Context context);
+
+ /**
+ * Updates system services in a cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 response of the update system services API.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ UpdateSystemServicesResponseInner updateSystemServices(String resourceGroupName, String clusterName);
+
+ /**
+ * Updates system services in a cluster.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 response of the update system services API.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ UpdateSystemServicesResponseInner updateSystemServices(
+ String resourceGroupName, String clusterName, Context context);
+
+ /**
+ * Gets the clusters in the specified resource group.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @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 clusters in the specified resource group as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets the clusters in the specified resource group.
+ *
+ * @param resourceGroupName Name of the resource group in which the cluster is located.
+ * @param skiptoken Continuation token for pagination.
+ * @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 clusters in the specified resource group as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(
+ String resourceGroupName, String skiptoken, Context context);
+
+ /**
+ * Gets the operationalization clusters in the specified 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 the operationalization clusters in the specified subscription as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets the operationalization clusters in the specified subscription.
+ *
+ * @param skiptoken Continuation token for pagination.
+ * @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 operationalization clusters in the specified subscription as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String skiptoken, Context context);
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/AvailableOperationsInner.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/AvailableOperationsInner.java
new file mode 100644
index 000000000000..2708dfc726ff
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/AvailableOperationsInner.java
@@ -0,0 +1,51 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.machinelearningcompute.models.ResourceOperation;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Available operation list. */
+@Fluent
+public final class AvailableOperationsInner {
+ /*
+ * An array of available operations.
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /**
+ * Get the value property: An array of available operations.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: An array of available operations.
+ *
+ * @param value the value value to set.
+ * @return the AvailableOperationsInner object itself.
+ */
+ public AvailableOperationsInner withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (value() != null) {
+ value().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/CheckSystemServicesUpdatesAvailableResponseInner.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/CheckSystemServicesUpdatesAvailableResponseInner.java
new file mode 100644
index 000000000000..4123ee1ad9ab
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/CheckSystemServicesUpdatesAvailableResponseInner.java
@@ -0,0 +1,36 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.resourcemanager.machinelearningcompute.models.UpdatesAvailable;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Information about updates available for system services in a cluster. */
+@Immutable
+public final class CheckSystemServicesUpdatesAvailableResponseInner {
+ /*
+ * Yes if updates are available for the system services, No if not.
+ */
+ @JsonProperty(value = "updatesAvailable", access = JsonProperty.Access.WRITE_ONLY)
+ private UpdatesAvailable updatesAvailable;
+
+ /**
+ * Get the updatesAvailable property: Yes if updates are available for the system services, No if not.
+ *
+ * @return the updatesAvailable value.
+ */
+ public UpdatesAvailable updatesAvailable() {
+ return this.updatesAvailable;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterCredentialsInner.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterCredentialsInner.java
new file mode 100644
index 000000000000..90b0b27189ef
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterCredentialsInner.java
@@ -0,0 +1,206 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.machinelearningcompute.models.AppInsightsCredentials;
+import com.azure.resourcemanager.machinelearningcompute.models.ContainerRegistryCredentials;
+import com.azure.resourcemanager.machinelearningcompute.models.ContainerServiceCredentials;
+import com.azure.resourcemanager.machinelearningcompute.models.ServiceAuthConfiguration;
+import com.azure.resourcemanager.machinelearningcompute.models.SslConfiguration;
+import com.azure.resourcemanager.machinelearningcompute.models.StorageAccountCredentials;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Credentials to resources in the cluster. */
+@Fluent
+public final class OperationalizationClusterCredentialsInner {
+ /*
+ * Credentials for the Storage Account.
+ */
+ @JsonProperty(value = "storageAccount")
+ private StorageAccountCredentials storageAccount;
+
+ /*
+ * Credentials for Azure Container Registry.
+ */
+ @JsonProperty(value = "containerRegistry")
+ private ContainerRegistryCredentials containerRegistry;
+
+ /*
+ * Credentials for Azure Container Service.
+ */
+ @JsonProperty(value = "containerService")
+ private ContainerServiceCredentials containerService;
+
+ /*
+ * Credentials for Azure AppInsights.
+ */
+ @JsonProperty(value = "appInsights")
+ private AppInsightsCredentials appInsights;
+
+ /*
+ * Global authorization keys for all user services deployed in cluster.
+ * These are used if the service does not have auth keys.
+ */
+ @JsonProperty(value = "serviceAuthConfiguration")
+ private ServiceAuthConfiguration serviceAuthConfiguration;
+
+ /*
+ * The SSL configuration for the services.
+ */
+ @JsonProperty(value = "sslConfiguration")
+ private SslConfiguration sslConfiguration;
+
+ /**
+ * Get the storageAccount property: Credentials for the Storage Account.
+ *
+ * @return the storageAccount value.
+ */
+ public StorageAccountCredentials storageAccount() {
+ return this.storageAccount;
+ }
+
+ /**
+ * Set the storageAccount property: Credentials for the Storage Account.
+ *
+ * @param storageAccount the storageAccount value to set.
+ * @return the OperationalizationClusterCredentialsInner object itself.
+ */
+ public OperationalizationClusterCredentialsInner withStorageAccount(StorageAccountCredentials storageAccount) {
+ this.storageAccount = storageAccount;
+ return this;
+ }
+
+ /**
+ * Get the containerRegistry property: Credentials for Azure Container Registry.
+ *
+ * @return the containerRegistry value.
+ */
+ public ContainerRegistryCredentials containerRegistry() {
+ return this.containerRegistry;
+ }
+
+ /**
+ * Set the containerRegistry property: Credentials for Azure Container Registry.
+ *
+ * @param containerRegistry the containerRegistry value to set.
+ * @return the OperationalizationClusterCredentialsInner object itself.
+ */
+ public OperationalizationClusterCredentialsInner withContainerRegistry(
+ ContainerRegistryCredentials containerRegistry) {
+ this.containerRegistry = containerRegistry;
+ return this;
+ }
+
+ /**
+ * Get the containerService property: Credentials for Azure Container Service.
+ *
+ * @return the containerService value.
+ */
+ public ContainerServiceCredentials containerService() {
+ return this.containerService;
+ }
+
+ /**
+ * Set the containerService property: Credentials for Azure Container Service.
+ *
+ * @param containerService the containerService value to set.
+ * @return the OperationalizationClusterCredentialsInner object itself.
+ */
+ public OperationalizationClusterCredentialsInner withContainerService(
+ ContainerServiceCredentials containerService) {
+ this.containerService = containerService;
+ return this;
+ }
+
+ /**
+ * Get the appInsights property: Credentials for Azure AppInsights.
+ *
+ * @return the appInsights value.
+ */
+ public AppInsightsCredentials appInsights() {
+ return this.appInsights;
+ }
+
+ /**
+ * Set the appInsights property: Credentials for Azure AppInsights.
+ *
+ * @param appInsights the appInsights value to set.
+ * @return the OperationalizationClusterCredentialsInner object itself.
+ */
+ public OperationalizationClusterCredentialsInner withAppInsights(AppInsightsCredentials appInsights) {
+ this.appInsights = appInsights;
+ return this;
+ }
+
+ /**
+ * Get the serviceAuthConfiguration property: Global authorization keys for all user services deployed in cluster.
+ * These are used if the service does not have auth keys.
+ *
+ * @return the serviceAuthConfiguration value.
+ */
+ public ServiceAuthConfiguration serviceAuthConfiguration() {
+ return this.serviceAuthConfiguration;
+ }
+
+ /**
+ * Set the serviceAuthConfiguration property: Global authorization keys for all user services deployed in cluster.
+ * These are used if the service does not have auth keys.
+ *
+ * @param serviceAuthConfiguration the serviceAuthConfiguration value to set.
+ * @return the OperationalizationClusterCredentialsInner object itself.
+ */
+ public OperationalizationClusterCredentialsInner withServiceAuthConfiguration(
+ ServiceAuthConfiguration serviceAuthConfiguration) {
+ this.serviceAuthConfiguration = serviceAuthConfiguration;
+ return this;
+ }
+
+ /**
+ * Get the sslConfiguration property: The SSL configuration for the services.
+ *
+ * @return the sslConfiguration value.
+ */
+ public SslConfiguration sslConfiguration() {
+ return this.sslConfiguration;
+ }
+
+ /**
+ * Set the sslConfiguration property: The SSL configuration for the services.
+ *
+ * @param sslConfiguration the sslConfiguration value to set.
+ * @return the OperationalizationClusterCredentialsInner object itself.
+ */
+ public OperationalizationClusterCredentialsInner withSslConfiguration(SslConfiguration sslConfiguration) {
+ this.sslConfiguration = sslConfiguration;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (storageAccount() != null) {
+ storageAccount().validate();
+ }
+ if (containerRegistry() != null) {
+ containerRegistry().validate();
+ }
+ if (containerService() != null) {
+ containerService().validate();
+ }
+ if (appInsights() != null) {
+ appInsights().validate();
+ }
+ if (serviceAuthConfiguration() != null) {
+ serviceAuthConfiguration().validate();
+ }
+ if (sslConfiguration() != null) {
+ sslConfiguration().validate();
+ }
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterInner.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterInner.java
new file mode 100644
index 000000000000..62d5d17b08fe
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterInner.java
@@ -0,0 +1,263 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.management.exception.ManagementError;
+import com.azure.resourcemanager.machinelearningcompute.models.AcsClusterProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.AppInsightsProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.ClusterType;
+import com.azure.resourcemanager.machinelearningcompute.models.ContainerRegistryProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.GlobalServiceConfiguration;
+import com.azure.resourcemanager.machinelearningcompute.models.OperationStatus;
+import com.azure.resourcemanager.machinelearningcompute.models.StorageAccountProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+import java.util.Map;
+
+/** Instance of an Azure ML Operationalization Cluster resource. */
+@Fluent
+public final class OperationalizationClusterInner extends Resource {
+ /*
+ * Properties of an operationalization cluster.
+ */
+ @JsonProperty(value = "properties")
+ private OperationalizationClusterProperties innerProperties;
+
+ /**
+ * Get the innerProperties property: Properties of an operationalization cluster.
+ *
+ * @return the innerProperties value.
+ */
+ private OperationalizationClusterProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public OperationalizationClusterInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public OperationalizationClusterInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the description property: The description of the cluster.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.innerProperties() == null ? null : this.innerProperties().description();
+ }
+
+ /**
+ * Set the description property: The description of the cluster.
+ *
+ * @param description the description value to set.
+ * @return the OperationalizationClusterInner object itself.
+ */
+ public OperationalizationClusterInner withDescription(String description) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new OperationalizationClusterProperties();
+ }
+ this.innerProperties().withDescription(description);
+ return this;
+ }
+
+ /**
+ * Get the createdOn property: The date and time when the cluster was created.
+ *
+ * @return the createdOn value.
+ */
+ public OffsetDateTime createdOn() {
+ return this.innerProperties() == null ? null : this.innerProperties().createdOn();
+ }
+
+ /**
+ * Get the modifiedOn property: The date and time when the cluster was last modified.
+ *
+ * @return the modifiedOn value.
+ */
+ public OffsetDateTime modifiedOn() {
+ return this.innerProperties() == null ? null : this.innerProperties().modifiedOn();
+ }
+
+ /**
+ * Get the provisioningState property: The provision state of the cluster. Valid values are Unknown, Updating,
+ * Provisioning, Succeeded, and Failed.
+ *
+ * @return the provisioningState value.
+ */
+ public OperationStatus provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the provisioningErrors property: List of provisioning errors reported by the resource provider.
+ *
+ * @return the provisioningErrors value.
+ */
+ public List provisioningErrors() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningErrors();
+ }
+
+ /**
+ * Get the clusterType property: The cluster type.
+ *
+ * @return the clusterType value.
+ */
+ public ClusterType clusterType() {
+ return this.innerProperties() == null ? null : this.innerProperties().clusterType();
+ }
+
+ /**
+ * Set the clusterType property: The cluster type.
+ *
+ * @param clusterType the clusterType value to set.
+ * @return the OperationalizationClusterInner object itself.
+ */
+ public OperationalizationClusterInner withClusterType(ClusterType clusterType) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new OperationalizationClusterProperties();
+ }
+ this.innerProperties().withClusterType(clusterType);
+ return this;
+ }
+
+ /**
+ * Get the storageAccount property: Storage Account properties.
+ *
+ * @return the storageAccount value.
+ */
+ public StorageAccountProperties storageAccount() {
+ return this.innerProperties() == null ? null : this.innerProperties().storageAccount();
+ }
+
+ /**
+ * Set the storageAccount property: Storage Account properties.
+ *
+ * @param storageAccount the storageAccount value to set.
+ * @return the OperationalizationClusterInner object itself.
+ */
+ public OperationalizationClusterInner withStorageAccount(StorageAccountProperties storageAccount) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new OperationalizationClusterProperties();
+ }
+ this.innerProperties().withStorageAccount(storageAccount);
+ return this;
+ }
+
+ /**
+ * Get the containerRegistry property: Container Registry properties.
+ *
+ * @return the containerRegistry value.
+ */
+ public ContainerRegistryProperties containerRegistry() {
+ return this.innerProperties() == null ? null : this.innerProperties().containerRegistry();
+ }
+
+ /**
+ * Set the containerRegistry property: Container Registry properties.
+ *
+ * @param containerRegistry the containerRegistry value to set.
+ * @return the OperationalizationClusterInner object itself.
+ */
+ public OperationalizationClusterInner withContainerRegistry(ContainerRegistryProperties containerRegistry) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new OperationalizationClusterProperties();
+ }
+ this.innerProperties().withContainerRegistry(containerRegistry);
+ return this;
+ }
+
+ /**
+ * Get the containerService property: Parameters for the Azure Container Service cluster.
+ *
+ * @return the containerService value.
+ */
+ public AcsClusterProperties containerService() {
+ return this.innerProperties() == null ? null : this.innerProperties().containerService();
+ }
+
+ /**
+ * Set the containerService property: Parameters for the Azure Container Service cluster.
+ *
+ * @param containerService the containerService value to set.
+ * @return the OperationalizationClusterInner object itself.
+ */
+ public OperationalizationClusterInner withContainerService(AcsClusterProperties containerService) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new OperationalizationClusterProperties();
+ }
+ this.innerProperties().withContainerService(containerService);
+ return this;
+ }
+
+ /**
+ * Get the appInsights property: AppInsights configuration.
+ *
+ * @return the appInsights value.
+ */
+ public AppInsightsProperties appInsights() {
+ return this.innerProperties() == null ? null : this.innerProperties().appInsights();
+ }
+
+ /**
+ * Set the appInsights property: AppInsights configuration.
+ *
+ * @param appInsights the appInsights value to set.
+ * @return the OperationalizationClusterInner object itself.
+ */
+ public OperationalizationClusterInner withAppInsights(AppInsightsProperties appInsights) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new OperationalizationClusterProperties();
+ }
+ this.innerProperties().withAppInsights(appInsights);
+ return this;
+ }
+
+ /**
+ * Get the globalServiceConfiguration property: Contains global configuration for the web services in the cluster.
+ *
+ * @return the globalServiceConfiguration value.
+ */
+ public GlobalServiceConfiguration globalServiceConfiguration() {
+ return this.innerProperties() == null ? null : this.innerProperties().globalServiceConfiguration();
+ }
+
+ /**
+ * Set the globalServiceConfiguration property: Contains global configuration for the web services in the cluster.
+ *
+ * @param globalServiceConfiguration the globalServiceConfiguration value to set.
+ * @return the OperationalizationClusterInner object itself.
+ */
+ public OperationalizationClusterInner withGlobalServiceConfiguration(
+ GlobalServiceConfiguration globalServiceConfiguration) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new OperationalizationClusterProperties();
+ }
+ this.innerProperties().withGlobalServiceConfiguration(globalServiceConfiguration);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterProperties.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterProperties.java
new file mode 100644
index 000000000000..d0b02a960aa5
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/OperationalizationClusterProperties.java
@@ -0,0 +1,299 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.exception.ManagementError;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.machinelearningcompute.models.AcsClusterProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.AppInsightsProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.ClusterType;
+import com.azure.resourcemanager.machinelearningcompute.models.ContainerRegistryProperties;
+import com.azure.resourcemanager.machinelearningcompute.models.GlobalServiceConfiguration;
+import com.azure.resourcemanager.machinelearningcompute.models.OperationStatus;
+import com.azure.resourcemanager.machinelearningcompute.models.StorageAccountProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** Properties of an operationalization cluster. */
+@Fluent
+public final class OperationalizationClusterProperties {
+ /*
+ * The description of the cluster.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /*
+ * The date and time when the cluster was created.
+ */
+ @JsonProperty(value = "createdOn", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime createdOn;
+
+ /*
+ * The date and time when the cluster was last modified.
+ */
+ @JsonProperty(value = "modifiedOn", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime modifiedOn;
+
+ /*
+ * The provision state of the cluster. Valid values are Unknown, Updating,
+ * Provisioning, Succeeded, and Failed.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private OperationStatus provisioningState;
+
+ /*
+ * List of provisioning errors reported by the resource provider.
+ */
+ @JsonProperty(value = "provisioningErrors", access = JsonProperty.Access.WRITE_ONLY)
+ private List provisioningErrors;
+
+ /*
+ * The cluster type.
+ */
+ @JsonProperty(value = "clusterType", required = true)
+ private ClusterType clusterType;
+
+ /*
+ * Storage Account properties.
+ */
+ @JsonProperty(value = "storageAccount")
+ private StorageAccountProperties storageAccount;
+
+ /*
+ * Container Registry properties.
+ */
+ @JsonProperty(value = "containerRegistry")
+ private ContainerRegistryProperties containerRegistry;
+
+ /*
+ * Parameters for the Azure Container Service cluster.
+ */
+ @JsonProperty(value = "containerService")
+ private AcsClusterProperties containerService;
+
+ /*
+ * AppInsights configuration.
+ */
+ @JsonProperty(value = "appInsights")
+ private AppInsightsProperties appInsights;
+
+ /*
+ * Contains global configuration for the web services in the cluster.
+ */
+ @JsonProperty(value = "globalServiceConfiguration")
+ private GlobalServiceConfiguration globalServiceConfiguration;
+
+ /**
+ * Get the description property: The description of the cluster.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: The description of the cluster.
+ *
+ * @param description the description value to set.
+ * @return the OperationalizationClusterProperties object itself.
+ */
+ public OperationalizationClusterProperties withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the createdOn property: The date and time when the cluster was created.
+ *
+ * @return the createdOn value.
+ */
+ public OffsetDateTime createdOn() {
+ return this.createdOn;
+ }
+
+ /**
+ * Get the modifiedOn property: The date and time when the cluster was last modified.
+ *
+ * @return the modifiedOn value.
+ */
+ public OffsetDateTime modifiedOn() {
+ return this.modifiedOn;
+ }
+
+ /**
+ * Get the provisioningState property: The provision state of the cluster. Valid values are Unknown, Updating,
+ * Provisioning, Succeeded, and Failed.
+ *
+ * @return the provisioningState value.
+ */
+ public OperationStatus provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the provisioningErrors property: List of provisioning errors reported by the resource provider.
+ *
+ * @return the provisioningErrors value.
+ */
+ public List provisioningErrors() {
+ return this.provisioningErrors;
+ }
+
+ /**
+ * Get the clusterType property: The cluster type.
+ *
+ * @return the clusterType value.
+ */
+ public ClusterType clusterType() {
+ return this.clusterType;
+ }
+
+ /**
+ * Set the clusterType property: The cluster type.
+ *
+ * @param clusterType the clusterType value to set.
+ * @return the OperationalizationClusterProperties object itself.
+ */
+ public OperationalizationClusterProperties withClusterType(ClusterType clusterType) {
+ this.clusterType = clusterType;
+ return this;
+ }
+
+ /**
+ * Get the storageAccount property: Storage Account properties.
+ *
+ * @return the storageAccount value.
+ */
+ public StorageAccountProperties storageAccount() {
+ return this.storageAccount;
+ }
+
+ /**
+ * Set the storageAccount property: Storage Account properties.
+ *
+ * @param storageAccount the storageAccount value to set.
+ * @return the OperationalizationClusterProperties object itself.
+ */
+ public OperationalizationClusterProperties withStorageAccount(StorageAccountProperties storageAccount) {
+ this.storageAccount = storageAccount;
+ return this;
+ }
+
+ /**
+ * Get the containerRegistry property: Container Registry properties.
+ *
+ * @return the containerRegistry value.
+ */
+ public ContainerRegistryProperties containerRegistry() {
+ return this.containerRegistry;
+ }
+
+ /**
+ * Set the containerRegistry property: Container Registry properties.
+ *
+ * @param containerRegistry the containerRegistry value to set.
+ * @return the OperationalizationClusterProperties object itself.
+ */
+ public OperationalizationClusterProperties withContainerRegistry(ContainerRegistryProperties containerRegistry) {
+ this.containerRegistry = containerRegistry;
+ return this;
+ }
+
+ /**
+ * Get the containerService property: Parameters for the Azure Container Service cluster.
+ *
+ * @return the containerService value.
+ */
+ public AcsClusterProperties containerService() {
+ return this.containerService;
+ }
+
+ /**
+ * Set the containerService property: Parameters for the Azure Container Service cluster.
+ *
+ * @param containerService the containerService value to set.
+ * @return the OperationalizationClusterProperties object itself.
+ */
+ public OperationalizationClusterProperties withContainerService(AcsClusterProperties containerService) {
+ this.containerService = containerService;
+ return this;
+ }
+
+ /**
+ * Get the appInsights property: AppInsights configuration.
+ *
+ * @return the appInsights value.
+ */
+ public AppInsightsProperties appInsights() {
+ return this.appInsights;
+ }
+
+ /**
+ * Set the appInsights property: AppInsights configuration.
+ *
+ * @param appInsights the appInsights value to set.
+ * @return the OperationalizationClusterProperties object itself.
+ */
+ public OperationalizationClusterProperties withAppInsights(AppInsightsProperties appInsights) {
+ this.appInsights = appInsights;
+ return this;
+ }
+
+ /**
+ * Get the globalServiceConfiguration property: Contains global configuration for the web services in the cluster.
+ *
+ * @return the globalServiceConfiguration value.
+ */
+ public GlobalServiceConfiguration globalServiceConfiguration() {
+ return this.globalServiceConfiguration;
+ }
+
+ /**
+ * Set the globalServiceConfiguration property: Contains global configuration for the web services in the cluster.
+ *
+ * @param globalServiceConfiguration the globalServiceConfiguration value to set.
+ * @return the OperationalizationClusterProperties object itself.
+ */
+ public OperationalizationClusterProperties withGlobalServiceConfiguration(
+ GlobalServiceConfiguration globalServiceConfiguration) {
+ this.globalServiceConfiguration = globalServiceConfiguration;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (clusterType() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property clusterType in model OperationalizationClusterProperties"));
+ }
+ if (storageAccount() != null) {
+ storageAccount().validate();
+ }
+ if (containerRegistry() != null) {
+ containerRegistry().validate();
+ }
+ if (containerService() != null) {
+ containerService().validate();
+ }
+ if (appInsights() != null) {
+ appInsights().validate();
+ }
+ if (globalServiceConfiguration() != null) {
+ globalServiceConfiguration().validate();
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(OperationalizationClusterProperties.class);
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/UpdateSystemServicesResponseInner.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/UpdateSystemServicesResponseInner.java
new file mode 100644
index 000000000000..1e0ceec24d9d
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/UpdateSystemServicesResponseInner.java
@@ -0,0 +1,67 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.resourcemanager.machinelearningcompute.models.OperationStatus;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Response of the update system services API. */
+@Immutable
+public final class UpdateSystemServicesResponseInner {
+ /*
+ * Update status
+ */
+ @JsonProperty(value = "updateStatus", access = JsonProperty.Access.WRITE_ONLY)
+ private OperationStatus updateStatus;
+
+ /*
+ * The date and time when the last system services update was started.
+ */
+ @JsonProperty(value = "updateStartedOn", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime updateStartedOn;
+
+ /*
+ * The date and time when the last system services update completed.
+ */
+ @JsonProperty(value = "updateCompletedOn", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime updateCompletedOn;
+
+ /**
+ * Get the updateStatus property: Update status.
+ *
+ * @return the updateStatus value.
+ */
+ public OperationStatus updateStatus() {
+ return this.updateStatus;
+ }
+
+ /**
+ * Get the updateStartedOn property: The date and time when the last system services update was started.
+ *
+ * @return the updateStartedOn value.
+ */
+ public OffsetDateTime updateStartedOn() {
+ return this.updateStartedOn;
+ }
+
+ /**
+ * Get the updateCompletedOn property: The date and time when the last system services update completed.
+ *
+ * @return the updateCompletedOn value.
+ */
+ public OffsetDateTime updateCompletedOn() {
+ return this.updateCompletedOn;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/package-info.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/package-info.java
new file mode 100644
index 000000000000..baefb6d21210
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/models/package-info.java
@@ -0,0 +1,13 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+/**
+ * Package containing the inner data models for MachineLearningComputeManagementClient. These APIs allow end users to
+ * operate on Azure Machine Learning Compute resources. They support the following operations:<ul><li>Create
+ * or update a cluster</li><li>Get a cluster</li><li>Patch a cluster</li><li>Delete
+ * a cluster</li><li>Get keys for a cluster</li><li>Check if updates are available for system
+ * services in a cluster</li><li>Update system services in a cluster</li><li>Get all clusters in
+ * a resource group</li><li>Get all clusters in a subscription</li></ul>.
+ */
+package com.azure.resourcemanager.machinelearningcompute.fluent.models;
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/package-info.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/package-info.java
new file mode 100644
index 000000000000..eb41f76872aa
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/fluent/package-info.java
@@ -0,0 +1,13 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+/**
+ * Package containing the service clients for MachineLearningComputeManagementClient. These APIs allow end users to
+ * operate on Azure Machine Learning Compute resources. They support the following operations:<ul><li>Create
+ * or update a cluster</li><li>Get a cluster</li><li>Patch a cluster</li><li>Delete
+ * a cluster</li><li>Get keys for a cluster</li><li>Check if updates are available for system
+ * services in a cluster</li><li>Update system services in a cluster</li><li>Get all clusters in
+ * a resource group</li><li>Get all clusters in a subscription</li></ul>.
+ */
+package com.azure.resourcemanager.machinelearningcompute.fluent;
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/AvailableOperationsImpl.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/AvailableOperationsImpl.java
new file mode 100644
index 000000000000..79a58517242c
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/AvailableOperationsImpl.java
@@ -0,0 +1,41 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.implementation;
+
+import com.azure.resourcemanager.machinelearningcompute.fluent.models.AvailableOperationsInner;
+import com.azure.resourcemanager.machinelearningcompute.models.AvailableOperations;
+import com.azure.resourcemanager.machinelearningcompute.models.ResourceOperation;
+import java.util.Collections;
+import java.util.List;
+
+public final class AvailableOperationsImpl implements AvailableOperations {
+ private AvailableOperationsInner innerObject;
+
+ private final com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager serviceManager;
+
+ AvailableOperationsImpl(
+ AvailableOperationsInner innerObject,
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public List value() {
+ List inner = this.innerModel().value();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public AvailableOperationsInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/CheckSystemServicesUpdatesAvailableResponseImpl.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/CheckSystemServicesUpdatesAvailableResponseImpl.java
new file mode 100644
index 000000000000..a247946364b6
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/CheckSystemServicesUpdatesAvailableResponseImpl.java
@@ -0,0 +1,35 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.implementation;
+
+import com.azure.resourcemanager.machinelearningcompute.fluent.models.CheckSystemServicesUpdatesAvailableResponseInner;
+import com.azure.resourcemanager.machinelearningcompute.models.CheckSystemServicesUpdatesAvailableResponse;
+import com.azure.resourcemanager.machinelearningcompute.models.UpdatesAvailable;
+
+public final class CheckSystemServicesUpdatesAvailableResponseImpl
+ implements CheckSystemServicesUpdatesAvailableResponse {
+ private CheckSystemServicesUpdatesAvailableResponseInner innerObject;
+
+ private final com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager serviceManager;
+
+ CheckSystemServicesUpdatesAvailableResponseImpl(
+ CheckSystemServicesUpdatesAvailableResponseInner innerObject,
+ com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public UpdatesAvailable updatesAvailable() {
+ return this.innerModel().updatesAvailable();
+ }
+
+ public CheckSystemServicesUpdatesAvailableResponseInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.machinelearningcompute.MachineLearningComputeManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/MachineLearningComputeManagementClientBuilder.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/MachineLearningComputeManagementClientBuilder.java
new file mode 100644
index 000000000000..a8ef782ca172
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/MachineLearningComputeManagementClientBuilder.java
@@ -0,0 +1,146 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.implementation;
+
+import com.azure.core.annotation.ServiceClientBuilder;
+import com.azure.core.http.HttpPipeline;
+import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.policy.CookiePolicy;
+import com.azure.core.http.policy.RetryPolicy;
+import com.azure.core.http.policy.UserAgentPolicy;
+import com.azure.core.management.AzureEnvironment;
+import com.azure.core.management.serializer.SerializerFactory;
+import com.azure.core.util.serializer.SerializerAdapter;
+import java.time.Duration;
+
+/** A builder for creating a new instance of the MachineLearningComputeManagementClientImpl type. */
+@ServiceClientBuilder(serviceClients = {MachineLearningComputeManagementClientImpl.class})
+public final class MachineLearningComputeManagementClientBuilder {
+ /*
+ * The Azure subscription ID.
+ */
+ private String subscriptionId;
+
+ /**
+ * Sets The Azure subscription ID.
+ *
+ * @param subscriptionId the subscriptionId value.
+ * @return the MachineLearningComputeManagementClientBuilder.
+ */
+ public MachineLearningComputeManagementClientBuilder subscriptionId(String subscriptionId) {
+ this.subscriptionId = subscriptionId;
+ return this;
+ }
+
+ /*
+ * server parameter
+ */
+ private String endpoint;
+
+ /**
+ * Sets server parameter.
+ *
+ * @param endpoint the endpoint value.
+ * @return the MachineLearningComputeManagementClientBuilder.
+ */
+ public MachineLearningComputeManagementClientBuilder endpoint(String endpoint) {
+ this.endpoint = endpoint;
+ return this;
+ }
+
+ /*
+ * The environment to connect to
+ */
+ private AzureEnvironment environment;
+
+ /**
+ * Sets The environment to connect to.
+ *
+ * @param environment the environment value.
+ * @return the MachineLearningComputeManagementClientBuilder.
+ */
+ public MachineLearningComputeManagementClientBuilder environment(AzureEnvironment environment) {
+ this.environment = environment;
+ return this;
+ }
+
+ /*
+ * The default poll interval for long-running operation
+ */
+ private Duration defaultPollInterval;
+
+ /**
+ * Sets The default poll interval for long-running operation.
+ *
+ * @param defaultPollInterval the defaultPollInterval value.
+ * @return the MachineLearningComputeManagementClientBuilder.
+ */
+ public MachineLearningComputeManagementClientBuilder defaultPollInterval(Duration defaultPollInterval) {
+ this.defaultPollInterval = defaultPollInterval;
+ return this;
+ }
+
+ /*
+ * The HTTP pipeline to send requests through
+ */
+ private HttpPipeline pipeline;
+
+ /**
+ * Sets The HTTP pipeline to send requests through.
+ *
+ * @param pipeline the pipeline value.
+ * @return the MachineLearningComputeManagementClientBuilder.
+ */
+ public MachineLearningComputeManagementClientBuilder pipeline(HttpPipeline pipeline) {
+ this.pipeline = pipeline;
+ return this;
+ }
+
+ /*
+ * The serializer to serialize an object into a string
+ */
+ private SerializerAdapter serializerAdapter;
+
+ /**
+ * Sets The serializer to serialize an object into a string.
+ *
+ * @param serializerAdapter the serializerAdapter value.
+ * @return the MachineLearningComputeManagementClientBuilder.
+ */
+ public MachineLearningComputeManagementClientBuilder serializerAdapter(SerializerAdapter serializerAdapter) {
+ this.serializerAdapter = serializerAdapter;
+ return this;
+ }
+
+ /**
+ * Builds an instance of MachineLearningComputeManagementClientImpl with the provided parameters.
+ *
+ * @return an instance of MachineLearningComputeManagementClientImpl.
+ */
+ public MachineLearningComputeManagementClientImpl buildClient() {
+ if (endpoint == null) {
+ this.endpoint = "https://management.azure.com";
+ }
+ if (environment == null) {
+ this.environment = AzureEnvironment.AZURE;
+ }
+ if (defaultPollInterval == null) {
+ this.defaultPollInterval = Duration.ofSeconds(30);
+ }
+ if (pipeline == null) {
+ this.pipeline =
+ new HttpPipelineBuilder()
+ .policies(new UserAgentPolicy(), new RetryPolicy(), new CookiePolicy())
+ .build();
+ }
+ if (serializerAdapter == null) {
+ this.serializerAdapter = SerializerFactory.createDefaultManagementSerializerAdapter();
+ }
+ MachineLearningComputeManagementClientImpl client =
+ new MachineLearningComputeManagementClientImpl(
+ pipeline, serializerAdapter, defaultPollInterval, environment, subscriptionId, endpoint);
+ return client;
+ }
+}
diff --git a/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/MachineLearningComputeManagementClientImpl.java b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/MachineLearningComputeManagementClientImpl.java
new file mode 100644
index 000000000000..71120d5897ea
--- /dev/null
+++ b/sdk/machinelearningcompute/azure-resourcemanager-machinelearningcompute/src/main/java/com/azure/resourcemanager/machinelearningcompute/implementation/MachineLearningComputeManagementClientImpl.java
@@ -0,0 +1,307 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.machinelearningcompute.implementation;
+
+import com.azure.core.annotation.ServiceClient;
+import com.azure.core.http.HttpHeaders;
+import com.azure.core.http.HttpPipeline;
+import com.azure.core.http.HttpResponse;
+import com.azure.core.http.rest.Response;
+import com.azure.core.management.AzureEnvironment;
+import com.azure.core.management.exception.ManagementError;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.management.polling.PollerFactory;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.core.util.polling.AsyncPollResponse;
+import com.azure.core.util.polling.LongRunningOperationStatus;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.serializer.SerializerAdapter;
+import com.azure.core.util.serializer.SerializerEncoding;
+import com.azure.resourcemanager.machinelearningcompute.fluent.MachineLearningComputeManagementClient;
+import com.azure.resourcemanager.machinelearningcompute.fluent.MachineLearningComputesClient;
+import com.azure.resourcemanager.machinelearningcompute.fluent.OperationalizationClustersClient;
+import java.io.IOException;
+import java.lang.reflect.Type;
+import java.nio.ByteBuffer;
+import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
+import java.time.Duration;
+import java.util.Map;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+
+/** Initializes a new instance of the MachineLearningComputeManagementClientImpl type. */
+@ServiceClient(builder = MachineLearningComputeManagementClientBuilder.class)
+public final class MachineLearningComputeManagementClientImpl implements MachineLearningComputeManagementClient {
+ /** The Azure subscription ID. */
+ private final String subscriptionId;
+
+ /**
+ * Gets The Azure subscription ID.
+ *
+ * @return the subscriptionId value.
+ */
+ public String getSubscriptionId() {
+ return this.subscriptionId;
+ }
+
+ /** server parameter. */
+ private final String endpoint;
+
+ /**
+ * Gets server parameter.
+ *
+ * @return the endpoint value.
+ */
+ public String getEndpoint() {
+ return this.endpoint;
+ }
+
+ /** Api Version. */
+ private final String apiVersion;
+
+ /**
+ * Gets Api Version.
+ *
+ * @return the apiVersion value.
+ */
+ public String getApiVersion() {
+ return this.apiVersion;
+ }
+
+ /** The HTTP pipeline to send requests through. */
+ private final HttpPipeline httpPipeline;
+
+ /**
+ * Gets The HTTP pipeline to send requests through.
+ *
+ * @return the httpPipeline value.
+ */
+ public HttpPipeline getHttpPipeline() {
+ return this.httpPipeline;
+ }
+
+ /** The serializer to serialize an object into a string. */
+ private final SerializerAdapter serializerAdapter;
+
+ /**
+ * Gets The serializer to serialize an object into a string.
+ *
+ * @return the serializerAdapter value.
+ */
+ SerializerAdapter getSerializerAdapter() {
+ return this.serializerAdapter;
+ }
+
+ /** The default poll interval for long-running operation. */
+ private final Duration defaultPollInterval;
+
+ /**
+ * Gets The default poll interval for long-running operation.
+ *
+ * @return the defaultPollInterval value.
+ */
+ public Duration getDefaultPollInterval() {
+ return this.defaultPollInterval;
+ }
+
+ /** The OperationalizationClustersClient object to access its operations. */
+ private final OperationalizationClustersClient operationalizationClusters;
+
+ /**
+ * Gets the OperationalizationClustersClient object to access its operations.
+ *
+ * @return the OperationalizationClustersClient object.
+ */
+ public OperationalizationClustersClient getOperationalizationClusters() {
+ return this.operationalizationClusters;
+ }
+
+ /** The MachineLearningComputesClient object to access its operations. */
+ private final MachineLearningComputesClient machineLearningComputes;
+
+ /**
+ * Gets the MachineLearningComputesClient object to access its operations.
+ *
+ * @return the MachineLearningComputesClient object.
+ */
+ public MachineLearningComputesClient getMachineLearningComputes() {
+ return this.machineLearningComputes;
+ }
+
+ /**
+ * Initializes an instance of MachineLearningComputeManagementClient client.
+ *
+ * @param httpPipeline The HTTP pipeline to send requests through.
+ * @param serializerAdapter The serializer to serialize an object into a string.
+ * @param defaultPollInterval The default poll interval for long-running operation.
+ * @param environment The Azure environment.
+ * @param subscriptionId The Azure subscription ID.
+ * @param endpoint server parameter.
+ */
+ MachineLearningComputeManagementClientImpl(
+ HttpPipeline httpPipeline,
+ SerializerAdapter serializerAdapter,
+ Duration defaultPollInterval,
+ AzureEnvironment environment,
+ String subscriptionId,
+ String endpoint) {
+ this.httpPipeline = httpPipeline;
+ this.serializerAdapter = serializerAdapter;
+ this.defaultPollInterval = defaultPollInterval;
+ this.subscriptionId = subscriptionId;
+ this.endpoint = endpoint;
+ this.apiVersion = "2017-08-01-preview";
+ this.operationalizationClusters = new OperationalizationClustersClientImpl(this);
+ this.machineLearningComputes = new MachineLearningComputesClientImpl(this);
+ }
+
+ /**
+ * Gets default client context.
+ *
+ * @return the default client context.
+ */
+ public Context getContext() {
+ return Context.NONE;
+ }
+
+ /**
+ * Merges default client context with provided context.
+ *
+ * @param context the context to be merged with default client context.
+ * @return the merged context.
+ */
+ public Context mergeContext(Context context) {
+ for (Map.Entry