diff --git a/sdk/labservices/azure-resourcemanager-labservices/CHANGELOG.md b/sdk/labservices/azure-resourcemanager-labservices/CHANGELOG.md
index 2f20902d274e..b34f7e9ae9d4 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/CHANGELOG.md
+++ b/sdk/labservices/azure-resourcemanager-labservices/CHANGELOG.md
@@ -1,7 +1,8 @@
# Release History
-## 1.0.0-beta.2 (Unreleased)
+## 1.0.0-beta.1 (2021-09-14)
+- Azure Resource Manager LabServices client library for Java. This package contains Microsoft Azure SDK for LabServices Management SDK. Azure Lab Services REST API. Package tag package-preview-2021-10. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
## 1.0.0-beta.1 (2021-04-22)
diff --git a/sdk/labservices/azure-resourcemanager-labservices/README.md b/sdk/labservices/azure-resourcemanager-labservices/README.md
index db7667367c8b..85bd1ebe3212 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/README.md
+++ b/sdk/labservices/azure-resourcemanager-labservices/README.md
@@ -1,8 +1,8 @@
-# Azure Resource Manager ManagedLabs client library for Java
+# Azure Resource Manager LabServices client library for Java
-Azure Resource Manager ManagedLabs client library for Java.
+Azure Resource Manager LabServices client library for Java.
-This package contains Microsoft Azure SDK for ManagedLabs Management SDK. The Managed Labs Client. Package tag package-2018-10. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+This package contains Microsoft Azure SDK for LabServices Management SDK. Azure Lab Services REST API. Package tag package-preview-2021-10. 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
@@ -32,7 +32,7 @@ Various documentation is available to help you get started
com.azure.resourcemanager
azure-resourcemanager-labservices
- 1.0.0-beta.1
+ 1.0.0-beta.2
```
[//]: # ({x-version-update-end})
@@ -60,7 +60,7 @@ AzureProfile profile = new AzureProfile(AzureEnvironment.AZURE);
TokenCredential credential = new DefaultAzureCredentialBuilder()
.authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
.build();
-ManagedLabsManager manager = ManagedLabsManager
+LabServicesManager manager = LabServicesManager
.authenticate(credential, profile);
```
@@ -74,6 +74,8 @@ See [API design][design] for general introduction on design and key concepts on
## Examples
+
+
## Troubleshooting
## Next steps
diff --git a/sdk/labservices/azure-resourcemanager-labservices/pom.xml b/sdk/labservices/azure-resourcemanager-labservices/pom.xml
index 093d65658042..db06d123798b 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/pom.xml
+++ b/sdk/labservices/azure-resourcemanager-labservices/pom.xml
@@ -1,67 +1,86 @@
- 4.0.0
-
- com.azure
- azure-client-sdk-parent
- 1.7.0
- ../../parents/azure-client-sdk-parent
-
+ 4.0.0
+
+ com.azure
+ azure-client-sdk-parent
+ 1.7.0
+ ../../parents/azure-client-sdk-parent
+
- com.azure.resourcemanager
- azure-resourcemanager-labservices
- 1.0.0-beta.2
- jar
+ com.azure.resourcemanager
+ azure-resourcemanager-labservices
+ 1.0.0-beta.2
+ jar
- Microsoft Azure SDK for ManagedLabs Management
- This package contains Microsoft Azure SDK for ManagedLabs Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. The Managed Labs Client. Package tag package-2018-10.
- https://github.com/Azure/azure-sdk-for-java
+ Microsoft Azure SDK for LabServices Management
+ This package contains Microsoft Azure SDK for LabServices Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Azure Lab Services REST API. Package tag package-preview-2021-10.
+ https://github.com/Azure/azure-sdk-for-java
-
-
- The MIT License (MIT)
- http://opensource.org/licenses/MIT
- repo
-
-
+
+
+ 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
-
-
-
-
- com.azure
- azure-core
- 1.20.0
-
-
- com.azure
- azure-core-management
- 1.4.1
-
-
-
-
-
- org.jacoco
- jacoco-maven-plugin
- 0.8.5
-
- true
-
-
-
-
+
+ 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
+
+
+
+
+ com.azure
+ azure-core
+ 1.20.0
+
+
+ com.azure
+ azure-core-management
+ 1.4.1
+
+
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.8.5
+
+ true
+
+
+
+ org.revapi
+ revapi-maven-plugin
+ 0.11.2
+
+
+
+ -
+
java.method.addedToInterface
+
+ -
+ true
+
.*
+ com\.azure\.resourcemanager(\.[^.]+)+\.fluent(\.[^.]+)*
+
+
+
+
+
+
+
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/ManagedLabsManager.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/LabServicesManager.java
similarity index 66%
rename from sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/ManagedLabsManager.java
rename to sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/LabServicesManager.java
index f33e4b7da8c1..a8baa031fef5 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/ManagedLabsManager.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/LabServicesManager.java
@@ -9,7 +9,6 @@
import com.azure.core.http.HttpPipeline;
import com.azure.core.http.HttpPipelineBuilder;
import com.azure.core.http.policy.AddDatePolicy;
-import com.azure.core.http.policy.BearerTokenAuthenticationPolicy;
import com.azure.core.http.policy.HttpLogOptions;
import com.azure.core.http.policy.HttpLoggingPolicy;
import com.azure.core.http.policy.HttpPipelinePolicy;
@@ -17,62 +16,59 @@
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.labservices.fluent.ManagedLabsClient;
-import com.azure.resourcemanager.labservices.implementation.EnvironmentSettingsImpl;
-import com.azure.resourcemanager.labservices.implementation.EnvironmentsImpl;
-import com.azure.resourcemanager.labservices.implementation.GalleryImagesImpl;
-import com.azure.resourcemanager.labservices.implementation.GlobalUsersImpl;
-import com.azure.resourcemanager.labservices.implementation.LabAccountsImpl;
+import com.azure.resourcemanager.labservices.fluent.LabServicesClient;
+import com.azure.resourcemanager.labservices.implementation.ImagesImpl;
+import com.azure.resourcemanager.labservices.implementation.LabPlansImpl;
+import com.azure.resourcemanager.labservices.implementation.LabServicesClientBuilder;
import com.azure.resourcemanager.labservices.implementation.LabsImpl;
-import com.azure.resourcemanager.labservices.implementation.ManagedLabsClientBuilder;
+import com.azure.resourcemanager.labservices.implementation.OperationResultsImpl;
import com.azure.resourcemanager.labservices.implementation.OperationsImpl;
-import com.azure.resourcemanager.labservices.implementation.ProviderOperationsImpl;
+import com.azure.resourcemanager.labservices.implementation.SchedulesImpl;
import com.azure.resourcemanager.labservices.implementation.UsersImpl;
-import com.azure.resourcemanager.labservices.models.EnvironmentSettings;
-import com.azure.resourcemanager.labservices.models.Environments;
-import com.azure.resourcemanager.labservices.models.GalleryImages;
-import com.azure.resourcemanager.labservices.models.GlobalUsers;
-import com.azure.resourcemanager.labservices.models.LabAccounts;
+import com.azure.resourcemanager.labservices.implementation.VirtualMachinesImpl;
+import com.azure.resourcemanager.labservices.models.Images;
+import com.azure.resourcemanager.labservices.models.LabPlans;
import com.azure.resourcemanager.labservices.models.Labs;
+import com.azure.resourcemanager.labservices.models.OperationResults;
import com.azure.resourcemanager.labservices.models.Operations;
-import com.azure.resourcemanager.labservices.models.ProviderOperations;
+import com.azure.resourcemanager.labservices.models.Schedules;
import com.azure.resourcemanager.labservices.models.Users;
+import com.azure.resourcemanager.labservices.models.VirtualMachines;
import java.time.Duration;
import java.time.temporal.ChronoUnit;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
-/** Entry point to ManagedLabsManager. The Managed Labs Client. */
-public final class ManagedLabsManager {
- private ProviderOperations providerOperations;
-
- private GlobalUsers globalUsers;
+/** Entry point to LabServicesManager. Azure Lab Services REST API. */
+public final class LabServicesManager {
+ private Operations operations;
- private LabAccounts labAccounts;
+ private OperationResults operationResults;
- private Operations operations;
+ private LabPlans labPlans;
- private GalleryImages galleryImages;
+ private Images images;
private Labs labs;
- private EnvironmentSettings environmentSettings;
+ private Users users;
- private Environments environments;
+ private VirtualMachines virtualMachines;
- private Users users;
+ private Schedules schedules;
- private final ManagedLabsClient clientObject;
+ private final LabServicesClient clientObject;
- private ManagedLabsManager(HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
+ private LabServicesManager(HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
Objects.requireNonNull(httpPipeline, "'httpPipeline' cannot be null.");
Objects.requireNonNull(profile, "'profile' cannot be null.");
this.clientObject =
- new ManagedLabsClientBuilder()
+ new LabServicesClientBuilder()
.pipeline(httpPipeline)
.endpoint(profile.getEnvironment().getResourceManagerEndpoint())
.subscriptionId(profile.getSubscriptionId())
@@ -81,25 +77,25 @@ private ManagedLabsManager(HttpPipeline httpPipeline, AzureProfile profile, Dura
}
/**
- * Creates an instance of ManagedLabs service API entry point.
+ * Creates an instance of LabServices service API entry point.
*
* @param credential the credential to use.
* @param profile the Azure profile for client.
- * @return the ManagedLabs service API instance.
+ * @return the LabServices service API instance.
*/
- public static ManagedLabsManager authenticate(TokenCredential credential, AzureProfile profile) {
+ public static LabServicesManager 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 ManagedLabsManager with optional configuration.
+ * Gets a Configurable instance that can be used to create LabServicesManager with optional configuration.
*
* @return the Configurable instance allowing configurations.
*/
public static Configurable configure() {
- return new ManagedLabsManager.Configurable();
+ return new LabServicesManager.Configurable();
}
/** The Configurable allowing configurations to be set. */
@@ -109,6 +105,7 @@ public static final class Configurable {
private HttpClient httpClient;
private HttpLogOptions httpLogOptions;
private final List policies = new ArrayList<>();
+ private final List scopes = new ArrayList<>();
private RetryPolicy retryPolicy;
private Duration defaultPollInterval;
@@ -148,6 +145,17 @@ public Configurable withPolicy(HttpPipelinePolicy policy) {
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.
*
@@ -174,13 +182,13 @@ public Configurable withDefaultPollInterval(Duration defaultPollInterval) {
}
/**
- * Creates an instance of ManagedLabs service API entry point.
+ * Creates an instance of LabServices service API entry point.
*
* @param credential the credential to use.
* @param profile the Azure profile for client.
- * @return the ManagedLabs service API instance.
+ * @return the LabServices service API instance.
*/
- public ManagedLabsManager authenticate(TokenCredential credential, AzureProfile profile) {
+ public LabServicesManager authenticate(TokenCredential credential, AzureProfile profile) {
Objects.requireNonNull(credential, "'credential' cannot be null.");
Objects.requireNonNull(profile, "'profile' cannot be null.");
@@ -204,6 +212,9 @@ public ManagedLabsManager authenticate(TokenCredential credential, AzureProfile
userAgentBuilder.append(" (auto-generated)");
}
+ if (scopes.isEmpty()) {
+ scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
+ }
if (retryPolicy == null) {
retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
}
@@ -213,10 +224,7 @@ public ManagedLabsManager authenticate(TokenCredential credential, AzureProfile
HttpPolicyProviders.addBeforeRetryPolicies(policies);
policies.add(retryPolicy);
policies.add(new AddDatePolicy());
- policies
- .add(
- new BearerTokenAuthenticationPolicy(
- credential, profile.getEnvironment().getManagementEndpoint() + "/.default"));
+ policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
policies.addAll(this.policies);
HttpPolicyProviders.addAfterRetryPolicies(policies);
policies.add(new HttpLoggingPolicy(httpLogOptions));
@@ -225,48 +233,40 @@ public ManagedLabsManager authenticate(TokenCredential credential, AzureProfile
.httpClient(httpClient)
.policies(policies.toArray(new HttpPipelinePolicy[0]))
.build();
- return new ManagedLabsManager(httpPipeline, profile, defaultPollInterval);
+ return new LabServicesManager(httpPipeline, profile, defaultPollInterval);
}
}
- /** @return Resource collection API of ProviderOperations. */
- public ProviderOperations providerOperations() {
- if (this.providerOperations == null) {
- this.providerOperations = new ProviderOperationsImpl(clientObject.getProviderOperations(), this);
- }
- return providerOperations;
- }
-
- /** @return Resource collection API of GlobalUsers. */
- public GlobalUsers globalUsers() {
- if (this.globalUsers == null) {
- this.globalUsers = new GlobalUsersImpl(clientObject.getGlobalUsers(), this);
+ /** @return Resource collection API of Operations. */
+ public Operations operations() {
+ if (this.operations == null) {
+ this.operations = new OperationsImpl(clientObject.getOperations(), this);
}
- return globalUsers;
+ return operations;
}
- /** @return Resource collection API of LabAccounts. */
- public LabAccounts labAccounts() {
- if (this.labAccounts == null) {
- this.labAccounts = new LabAccountsImpl(clientObject.getLabAccounts(), this);
+ /** @return Resource collection API of OperationResults. */
+ public OperationResults operationResults() {
+ if (this.operationResults == null) {
+ this.operationResults = new OperationResultsImpl(clientObject.getOperationResults(), this);
}
- return labAccounts;
+ return operationResults;
}
- /** @return Resource collection API of Operations. */
- public Operations operations() {
- if (this.operations == null) {
- this.operations = new OperationsImpl(clientObject.getOperations(), this);
+ /** @return Resource collection API of LabPlans. */
+ public LabPlans labPlans() {
+ if (this.labPlans == null) {
+ this.labPlans = new LabPlansImpl(clientObject.getLabPlans(), this);
}
- return operations;
+ return labPlans;
}
- /** @return Resource collection API of GalleryImages. */
- public GalleryImages galleryImages() {
- if (this.galleryImages == null) {
- this.galleryImages = new GalleryImagesImpl(clientObject.getGalleryImages(), this);
+ /** @return Resource collection API of Images. */
+ public Images images() {
+ if (this.images == null) {
+ this.images = new ImagesImpl(clientObject.getImages(), this);
}
- return galleryImages;
+ return images;
}
/** @return Resource collection API of Labs. */
@@ -277,35 +277,35 @@ public Labs labs() {
return labs;
}
- /** @return Resource collection API of EnvironmentSettings. */
- public EnvironmentSettings environmentSettings() {
- if (this.environmentSettings == null) {
- this.environmentSettings = new EnvironmentSettingsImpl(clientObject.getEnvironmentSettings(), this);
+ /** @return Resource collection API of Users. */
+ public Users users() {
+ if (this.users == null) {
+ this.users = new UsersImpl(clientObject.getUsers(), this);
}
- return environmentSettings;
+ return users;
}
- /** @return Resource collection API of Environments. */
- public Environments environments() {
- if (this.environments == null) {
- this.environments = new EnvironmentsImpl(clientObject.getEnvironments(), this);
+ /** @return Resource collection API of VirtualMachines. */
+ public VirtualMachines virtualMachines() {
+ if (this.virtualMachines == null) {
+ this.virtualMachines = new VirtualMachinesImpl(clientObject.getVirtualMachines(), this);
}
- return environments;
+ return virtualMachines;
}
- /** @return Resource collection API of Users. */
- public Users users() {
- if (this.users == null) {
- this.users = new UsersImpl(clientObject.getUsers(), this);
+ /** @return Resource collection API of Schedules. */
+ public Schedules schedules() {
+ if (this.schedules == null) {
+ this.schedules = new SchedulesImpl(clientObject.getSchedules(), this);
}
- return users;
+ return schedules;
}
/**
- * @return Wrapped service client ManagedLabsClient providing direct access to the underlying auto-generated API
+ * @return Wrapped service client LabServicesClient providing direct access to the underlying auto-generated API
* implementation, based on Azure REST API.
*/
- public ManagedLabsClient serviceClient() {
+ public LabServicesClient serviceClient() {
return this.clientObject;
}
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/EnvironmentSettingsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/EnvironmentSettingsClient.java
deleted file mode 100644
index d066982a631e..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/EnvironmentSettingsClient.java
+++ /dev/null
@@ -1,530 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.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.labservices.fluent.models.EnvironmentSettingInner;
-import com.azure.resourcemanager.labservices.models.EnvironmentSettingFragment;
-import com.azure.resourcemanager.labservices.models.PublishPayload;
-
-/** An instance of this class provides access to all the operations defined in EnvironmentSettingsClient. */
-public interface EnvironmentSettingsClient {
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String resourceGroupName, String labAccountName, String labName);
-
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context);
-
- /**
- * Get environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 environment setting.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- EnvironmentSettingInner get(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName);
-
- /**
- * Get environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @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 environment setting.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String expand,
- Context context);
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @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 represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, EnvironmentSettingInner> beginCreateOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting);
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @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 represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, EnvironmentSettingInner> beginCreateOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting,
- Context context);
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @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 represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- EnvironmentSettingInner createOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting);
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @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 represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- EnvironmentSettingInner createOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting,
- Context context);
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName);
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context);
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 labAccountName, String labName, String environmentSettingName);
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 labAccountName,
- String labName,
- String environmentSettingName,
- Context context);
-
- /**
- * Modify properties of environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @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 represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- EnvironmentSettingInner update(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingFragment environmentSetting);
-
- /**
- * Modify properties of environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @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 represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response updateWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingFragment environmentSetting,
- Context context);
-
- /**
- * Claims a random environment for a user in an environment settings.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 claimAny(String resourceGroupName, String labAccountName, String labName, String environmentSettingName);
-
- /**
- * Claims a random environment for a user in an environment settings.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 response.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response claimAnyWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context);
-
- /**
- * Provisions/deprovisions required resources for an environment setting based on current state of the
- * lab/environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param publishPayload Payload for Publish operation on EnvironmentSetting.
- * @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 publish(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- PublishPayload publishPayload);
-
- /**
- * Provisions/deprovisions required resources for an environment setting based on current state of the
- * lab/environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param publishPayload Payload for Publish operation on EnvironmentSetting.
- * @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 response.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response publishWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- PublishPayload publishPayload,
- Context context);
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStart(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName);
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStart(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context);
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- void start(String resourceGroupName, String labAccountName, String labName, String environmentSettingName);
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- void start(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context);
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStop(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName);
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStop(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context);
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 stop(String resourceGroupName, String labAccountName, String labName, String environmentSettingName);
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 stop(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context);
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/EnvironmentsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/EnvironmentsClient.java
deleted file mode 100644
index fa07348cf32b..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/EnvironmentsClient.java
+++ /dev/null
@@ -1,609 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.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.labservices.fluent.models.EnvironmentInner;
-import com.azure.resourcemanager.labservices.models.EnvironmentFragment;
-import com.azure.resourcemanager.labservices.models.ResetPasswordPayload;
-
-/** An instance of this class provides access to all the operations defined in EnvironmentsClient. */
-public interface EnvironmentsClient {
- /**
- * List environments in a given environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName);
-
- /**
- * List environments in a given environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param expand Specify the $expand query. Example: 'properties($expand=networkInterface)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context);
-
- /**
- * Get environment.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 environment.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- EnvironmentInner get(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName);
-
- /**
- * Get environment.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param expand Specify the $expand query. Example: 'properties($expand=networkInterface)'.
- * @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 environment.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- String expand,
- Context context);
-
- /**
- * Create or replace an existing Environment.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param environment Represents an environment instance.
- * @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 represents an environment instance.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- EnvironmentInner createOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- EnvironmentInner environment);
-
- /**
- * Create or replace an existing Environment.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param environment Represents an environment instance.
- * @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 represents an environment instance.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response createOrUpdateWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- EnvironmentInner environment,
- Context context);
-
- /**
- * Delete environment. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName);
-
- /**
- * Delete environment. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- Context context);
-
- /**
- * Delete environment. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName);
-
- /**
- * Delete environment. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- Context context);
-
- /**
- * Modify properties of environments.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param environment Represents an environment instance.
- * @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 represents an environment instance.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- EnvironmentInner update(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- EnvironmentFragment environment);
-
- /**
- * Modify properties of environments.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param environment Represents an environment instance.
- * @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 represents an environment instance.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response updateWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- EnvironmentFragment environment,
- Context context);
-
- /**
- * Claims the environment and assigns it to the user.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 claim(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName);
-
- /**
- * Claims the environment and assigns it to the user.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 response.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response claimWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- Context context);
-
- /**
- * Resets the user password on an environment This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param resetPasswordPayload Represents the payload for resetting passwords.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginResetPassword(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- ResetPasswordPayload resetPasswordPayload);
-
- /**
- * Resets the user password on an environment This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param resetPasswordPayload Represents the payload for resetting passwords.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginResetPassword(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- ResetPasswordPayload resetPasswordPayload,
- Context context);
-
- /**
- * Resets the user password on an environment This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param resetPasswordPayload Represents the payload for resetting passwords.
- * @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 resetPassword(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- ResetPasswordPayload resetPasswordPayload);
-
- /**
- * Resets the user password on an environment This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param resetPasswordPayload Represents the payload for resetting passwords.
- * @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 resetPassword(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- ResetPasswordPayload resetPasswordPayload,
- Context context);
-
- /**
- * Starts an environment by starting all resources inside the environment. This operation can take a while to
- * complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStart(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName);
-
- /**
- * Starts an environment by starting all resources inside the environment. This operation can take a while to
- * complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStart(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- Context context);
-
- /**
- * Starts an environment by starting all resources inside the environment. This operation can take a while to
- * complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- void start(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName);
-
- /**
- * Starts an environment by starting all resources inside the environment. This operation can take a while to
- * complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- void start(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- Context context);
-
- /**
- * Stops an environment by stopping all resources inside the environment This operation can take a while to
- * complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStop(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName);
-
- /**
- * Stops an environment by stopping all resources inside the environment This operation can take a while to
- * complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStop(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- Context context);
-
- /**
- * Stops an environment by stopping all resources inside the environment This operation can take a while to
- * complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 stop(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName);
-
- /**
- * Stops an environment by stopping all resources inside the environment This operation can take a while to
- * complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentName The name of the environment.
- * @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 stop(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String environmentName,
- Context context);
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/GalleryImagesClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/GalleryImagesClient.java
deleted file mode 100644
index d83fe8ce94c8..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/GalleryImagesClient.java
+++ /dev/null
@@ -1,188 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.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.util.Context;
-import com.azure.resourcemanager.labservices.fluent.models.GalleryImageInner;
-import com.azure.resourcemanager.labservices.models.GalleryImageFragment;
-
-/** An instance of this class provides access to all the operations defined in GalleryImagesClient. */
-public interface GalleryImagesClient {
- /**
- * List gallery images in a given lab account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String resourceGroupName, String labAccountName);
-
- /**
- * List gallery images in a given lab account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param expand Specify the $expand query. Example: 'properties($select=author)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(
- String resourceGroupName,
- String labAccountName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context);
-
- /**
- * Get gallery image.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param galleryImageName The name of the gallery Image.
- * @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 gallery image.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- GalleryImageInner get(String resourceGroupName, String labAccountName, String galleryImageName);
-
- /**
- * Get gallery image.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param galleryImageName The name of the gallery Image.
- * @param expand Specify the $expand query. Example: 'properties($select=author)'.
- * @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 gallery image.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(
- String resourceGroupName, String labAccountName, String galleryImageName, String expand, Context context);
-
- /**
- * Create or replace an existing Gallery Image.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param galleryImageName The name of the gallery Image.
- * @param galleryImage Represents an image from the Azure Marketplace.
- * @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 represents an image from the Azure Marketplace.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- GalleryImageInner createOrUpdate(
- String resourceGroupName, String labAccountName, String galleryImageName, GalleryImageInner galleryImage);
-
- /**
- * Create or replace an existing Gallery Image.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param galleryImageName The name of the gallery Image.
- * @param galleryImage Represents an image from the Azure Marketplace.
- * @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 represents an image from the Azure Marketplace.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response createOrUpdateWithResponse(
- String resourceGroupName,
- String labAccountName,
- String galleryImageName,
- GalleryImageInner galleryImage,
- Context context);
-
- /**
- * Delete gallery image.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param galleryImageName The name of the gallery Image.
- * @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 labAccountName, String galleryImageName);
-
- /**
- * Delete gallery image.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param galleryImageName The name of the gallery Image.
- * @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 response.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response deleteWithResponse(
- String resourceGroupName, String labAccountName, String galleryImageName, Context context);
-
- /**
- * Modify properties of gallery images.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param galleryImageName The name of the gallery Image.
- * @param galleryImage Represents an image from the Azure Marketplace.
- * @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 represents an image from the Azure Marketplace.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- GalleryImageInner update(
- String resourceGroupName, String labAccountName, String galleryImageName, GalleryImageFragment galleryImage);
-
- /**
- * Modify properties of gallery images.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param galleryImageName The name of the gallery Image.
- * @param galleryImage Represents an image from the Azure Marketplace.
- * @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 represents an image from the Azure Marketplace.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response updateWithResponse(
- String resourceGroupName,
- String labAccountName,
- String galleryImageName,
- GalleryImageFragment galleryImage,
- Context context);
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/GlobalUsersClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/GlobalUsersClient.java
deleted file mode 100644
index dfdf2b560642..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/GlobalUsersClient.java
+++ /dev/null
@@ -1,404 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent;
-
-import com.azure.core.annotation.ReturnType;
-import com.azure.core.annotation.ServiceMethod;
-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.labservices.fluent.models.GetEnvironmentResponseInner;
-import com.azure.resourcemanager.labservices.fluent.models.GetPersonalPreferencesResponseInner;
-import com.azure.resourcemanager.labservices.fluent.models.ListEnvironmentsResponseInner;
-import com.azure.resourcemanager.labservices.fluent.models.ListLabsResponseInner;
-import com.azure.resourcemanager.labservices.fluent.models.OperationBatchStatusResponseInner;
-import com.azure.resourcemanager.labservices.fluent.models.OperationStatusResponseInner;
-import com.azure.resourcemanager.labservices.models.EnvironmentOperationsPayload;
-import com.azure.resourcemanager.labservices.models.ListEnvironmentsPayload;
-import com.azure.resourcemanager.labservices.models.OperationBatchStatusPayload;
-import com.azure.resourcemanager.labservices.models.OperationStatusPayload;
-import com.azure.resourcemanager.labservices.models.PersonalPreferencesOperationsPayload;
-import com.azure.resourcemanager.labservices.models.RegisterPayload;
-import com.azure.resourcemanager.labservices.models.ResetPasswordPayload;
-
-/** An instance of this class provides access to all the operations defined in GlobalUsersClient. */
-public interface GlobalUsersClient {
- /**
- * Gets the virtual machine details.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 virtual machine details.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- GetEnvironmentResponseInner getEnvironment(
- String username, EnvironmentOperationsPayload environmentOperationsPayload);
-
- /**
- * Gets the virtual machine details.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @param expand Specify the $expand query. Example: 'properties($expand=environment)'.
- * @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 virtual machine details.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getEnvironmentWithResponse(
- String username, EnvironmentOperationsPayload environmentOperationsPayload, String expand, Context context);
-
- /**
- * Get batch operation status.
- *
- * @param username The name of the user.
- * @param operationBatchStatusPayload Payload to get the status of an 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 batch operation status.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- OperationBatchStatusResponseInner getOperationBatchStatus(
- String username, OperationBatchStatusPayload operationBatchStatusPayload);
-
- /**
- * Get batch operation status.
- *
- * @param username The name of the user.
- * @param operationBatchStatusPayload Payload to get the status of an operation.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return batch operation status.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getOperationBatchStatusWithResponse(
- String username, OperationBatchStatusPayload operationBatchStatusPayload, Context context);
-
- /**
- * Gets the status of long running operation.
- *
- * @param username The name of the user.
- * @param operationStatusPayload Payload to get the status of an 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 status of long running operation.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- OperationStatusResponseInner getOperationStatus(String username, OperationStatusPayload operationStatusPayload);
-
- /**
- * Gets the status of long running operation.
- *
- * @param username The name of the user.
- * @param operationStatusPayload Payload to get the status of an operation.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the status of long running operation.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getOperationStatusWithResponse(
- String username, OperationStatusPayload operationStatusPayload, Context context);
-
- /**
- * Get personal preferences for a user.
- *
- * @param username The name of the user.
- * @param personalPreferencesOperationsPayload Represents payload for any Environment operations like get, start,
- * stop, connect.
- * @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 personal preferences for a user.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- GetPersonalPreferencesResponseInner getPersonalPreferences(
- String username, PersonalPreferencesOperationsPayload personalPreferencesOperationsPayload);
-
- /**
- * Get personal preferences for a user.
- *
- * @param username The name of the user.
- * @param personalPreferencesOperationsPayload Represents payload for any Environment operations like get, start,
- * stop, connect.
- * @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 personal preferences for a user.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getPersonalPreferencesWithResponse(
- String username, PersonalPreferencesOperationsPayload personalPreferencesOperationsPayload, Context context);
-
- /**
- * List Environments for the user.
- *
- * @param username The name of the user.
- * @param listEnvironmentsPayload Represents the payload to list environments owned by a user.
- * @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 represents the list of environments owned by a user.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- ListEnvironmentsResponseInner listEnvironments(String username, ListEnvironmentsPayload listEnvironmentsPayload);
-
- /**
- * List Environments for the user.
- *
- * @param username The name of the user.
- * @param listEnvironmentsPayload Represents the payload to list environments owned by a user.
- * @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 represents the list of environments owned by a user.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response listEnvironmentsWithResponse(
- String username, ListEnvironmentsPayload listEnvironmentsPayload, Context context);
-
- /**
- * List labs for the user.
- *
- * @param username The name of the user.
- * @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 lists the labs owned by a user.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- ListLabsResponseInner listLabs(String username);
-
- /**
- * List labs for the user.
- *
- * @param username The name of the user.
- * @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 lists the labs owned by a user.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response listLabsWithResponse(String username, Context context);
-
- /**
- * Register a user to a managed lab.
- *
- * @param username The name of the user.
- * @param registerPayload Represents payload for Register action.
- * @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 register(String username, RegisterPayload registerPayload);
-
- /**
- * Register a user to a managed lab.
- *
- * @param username The name of the user.
- * @param registerPayload Represents payload for Register action.
- * @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 response.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response registerWithResponse(String username, RegisterPayload registerPayload, Context context);
-
- /**
- * Resets the user password on an environment This operation can take a while to complete.
- *
- * @param username The name of the user.
- * @param resetPasswordPayload Represents the payload for resetting passwords.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginResetPassword(String username, ResetPasswordPayload resetPasswordPayload);
-
- /**
- * Resets the user password on an environment This operation can take a while to complete.
- *
- * @param username The name of the user.
- * @param resetPasswordPayload Represents the payload for resetting passwords.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginResetPassword(
- String username, ResetPasswordPayload resetPasswordPayload, Context context);
-
- /**
- * Resets the user password on an environment This operation can take a while to complete.
- *
- * @param username The name of the user.
- * @param resetPasswordPayload Represents the payload for resetting passwords.
- * @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 resetPassword(String username, ResetPasswordPayload resetPasswordPayload);
-
- /**
- * Resets the user password on an environment This operation can take a while to complete.
- *
- * @param username The name of the user.
- * @param resetPasswordPayload Represents the payload for resetting passwords.
- * @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 resetPassword(String username, ResetPasswordPayload resetPasswordPayload, Context context);
-
- /**
- * Starts an environment by starting all resources inside the environment. This operation can take a while to
- * complete.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStartEnvironment(
- String username, EnvironmentOperationsPayload environmentOperationsPayload);
-
- /**
- * Starts an environment by starting all resources inside the environment. This operation can take a while to
- * complete.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStartEnvironment(
- String username, EnvironmentOperationsPayload environmentOperationsPayload, Context context);
-
- /**
- * Starts an environment by starting all resources inside the environment. This operation can take a while to
- * complete.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 startEnvironment(String username, EnvironmentOperationsPayload environmentOperationsPayload);
-
- /**
- * Starts an environment by starting all resources inside the environment. This operation can take a while to
- * complete.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 startEnvironment(String username, EnvironmentOperationsPayload environmentOperationsPayload, Context context);
-
- /**
- * Stops an environment by stopping all resources inside the environment This operation can take a while to
- * complete.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStopEnvironment(
- String username, EnvironmentOperationsPayload environmentOperationsPayload);
-
- /**
- * Stops an environment by stopping all resources inside the environment This operation can take a while to
- * complete.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginStopEnvironment(
- String username, EnvironmentOperationsPayload environmentOperationsPayload, Context context);
-
- /**
- * Stops an environment by stopping all resources inside the environment This operation can take a while to
- * complete.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 stopEnvironment(String username, EnvironmentOperationsPayload environmentOperationsPayload);
-
- /**
- * Stops an environment by stopping all resources inside the environment This operation can take a while to
- * complete.
- *
- * @param username The name of the user.
- * @param environmentOperationsPayload Represents payload for any Environment operations like get, start, stop,
- * connect.
- * @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 stopEnvironment(String username, EnvironmentOperationsPayload environmentOperationsPayload, Context context);
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ImagesClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ImagesClient.java
new file mode 100644
index 000000000000..138b59b9d54e
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ImagesClient.java
@@ -0,0 +1,147 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.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.util.Context;
+import com.azure.resourcemanager.labservices.fluent.models.ImageInner;
+import com.azure.resourcemanager.labservices.models.ImageUpdate;
+
+/** An instance of this class provides access to all the operations defined in ImagesClient. */
+public interface ImagesClient {
+ /**
+ * Gets all images from galleries attached to a lab plan.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @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 images from galleries attached to a lab plan.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByLabPlan(String resourceGroupName, String labPlanName);
+
+ /**
+ * Gets all images from galleries attached to a lab plan.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param filter The filter to apply to the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return all images from galleries attached to a lab plan.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByLabPlan(
+ String resourceGroupName, String labPlanName, String filter, Context context);
+
+ /**
+ * Gets an image resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param imageName The image name.
+ * @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 an image resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ImageInner get(String resourceGroupName, String labPlanName, String imageName);
+
+ /**
+ * Gets an image resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param imageName The image name.
+ * @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 an image resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String labPlanName, String imageName, Context context);
+
+ /**
+ * Updates an image resource via PUT. Creating new resources via PUT will not function.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param imageName The image name.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab services virtual machine image.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ImageInner createOrUpdate(String resourceGroupName, String labPlanName, String imageName, ImageInner body);
+
+ /**
+ * Updates an image resource via PUT. Creating new resources via PUT will not function.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param imageName The image name.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab services virtual machine image.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName, String labPlanName, String imageName, ImageInner body, Context context);
+
+ /**
+ * Updates an image resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param imageName The image name.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab services virtual machine image.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ImageInner update(String resourceGroupName, String labPlanName, String imageName, ImageUpdate body);
+
+ /**
+ * Updates an image resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param imageName The image name.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab services virtual machine image.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response updateWithResponse(
+ String resourceGroupName, String labPlanName, String imageName, ImageUpdate body, Context context);
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabAccountsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabAccountsClient.java
deleted file mode 100644
index 3a2111adae27..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabAccountsClient.java
+++ /dev/null
@@ -1,274 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.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.labservices.fluent.models.GetRegionalAvailabilityResponseInner;
-import com.azure.resourcemanager.labservices.fluent.models.LabAccountInner;
-import com.azure.resourcemanager.labservices.models.CreateLabProperties;
-import com.azure.resourcemanager.labservices.models.LabAccountFragment;
-
-/** An instance of this class provides access to all the operations defined in LabAccountsClient. */
-public interface LabAccountsClient {
- /**
- * List lab accounts in a 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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list();
-
- /**
- * List lab accounts in a subscription.
- *
- * @param expand Specify the $expand query. Example: 'properties($expand=sizeConfiguration)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String expand, String filter, Integer top, String orderby, Context context);
-
- /**
- * List lab accounts in a resource group.
- *
- * @param resourceGroupName The name of the resource group.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable listByResourceGroup(String resourceGroupName);
-
- /**
- * List lab accounts in a resource group.
- *
- * @param resourceGroupName The name of the resource group.
- * @param expand Specify the $expand query. Example: 'properties($expand=sizeConfiguration)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @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 response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable listByResourceGroup(
- String resourceGroupName, String expand, String filter, Integer top, String orderby, Context context);
-
- /**
- * Get lab account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 lab account.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- LabAccountInner getByResourceGroup(String resourceGroupName, String labAccountName);
-
- /**
- * Get lab account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param expand Specify the $expand query. Example: 'properties($expand=sizeConfiguration)'.
- * @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 lab account.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getByResourceGroupWithResponse(
- String resourceGroupName, String labAccountName, String expand, Context context);
-
- /**
- * Create or replace an existing Lab Account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labAccount Represents a lab account.
- * @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 represents a lab account.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- LabAccountInner createOrUpdate(String resourceGroupName, String labAccountName, LabAccountInner labAccount);
-
- /**
- * Create or replace an existing Lab Account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labAccount Represents a lab account.
- * @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 represents a lab account.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response createOrUpdateWithResponse(
- String resourceGroupName, String labAccountName, LabAccountInner labAccount, Context context);
-
- /**
- * Delete lab account. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(String resourceGroupName, String labAccountName);
-
- /**
- * Delete lab account. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(String resourceGroupName, String labAccountName, Context context);
-
- /**
- * Delete lab account. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 labAccountName);
-
- /**
- * Delete lab account. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 labAccountName, Context context);
-
- /**
- * Modify properties of lab accounts.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labAccount Represents a lab account.
- * @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 represents a lab account.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- LabAccountInner update(String resourceGroupName, String labAccountName, LabAccountFragment labAccount);
-
- /**
- * Modify properties of lab accounts.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labAccount Represents a lab account.
- * @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 represents a lab account.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response updateWithResponse(
- String resourceGroupName, String labAccountName, LabAccountFragment labAccount, Context context);
-
- /**
- * Create a lab in a lab account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param createLabProperties Properties for creating a managed lab and a default environment setting.
- * @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 createLab(String resourceGroupName, String labAccountName, CreateLabProperties createLabProperties);
-
- /**
- * Create a lab in a lab account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param createLabProperties Properties for creating a managed lab and a default environment setting.
- * @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 response.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response createLabWithResponse(
- String resourceGroupName, String labAccountName, CreateLabProperties createLabProperties, Context context);
-
- /**
- * Get regional availability information for each size category configured under a lab account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 regional availability information for each size category configured under a lab account.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- GetRegionalAvailabilityResponseInner getRegionalAvailability(String resourceGroupName, String labAccountName);
-
- /**
- * Get regional availability information for each size category configured under a lab account.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 regional availability information for each size category configured under a lab account.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getRegionalAvailabilityWithResponse(
- String resourceGroupName, String labAccountName, Context context);
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabPlansClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabPlansClient.java
new file mode 100644
index 000000000000..4ae00e4e7636
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabPlansClient.java
@@ -0,0 +1,346 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.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.labservices.fluent.models.LabPlanInner;
+import com.azure.resourcemanager.labservices.models.LabPlanUpdate;
+import com.azure.resourcemanager.labservices.models.SaveImageBody;
+
+/** An instance of this class provides access to all the operations defined in LabPlansClient. */
+public interface LabPlansClient {
+ /**
+ * Returns a list of all lab plans within a 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 paged list of lab plans.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Returns a list of all lab plans within a subscription.
+ *
+ * @param filter The filter to apply to the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return paged list of lab plans.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String filter, Context context);
+
+ /**
+ * Returns a list of all lab plans for a subscription and resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return paged list of lab plans.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Returns a list of all lab plans for a subscription and resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return paged list of lab plans.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Retrieves the properties of a Lab Plan.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @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 lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ LabPlanInner getByResourceGroup(String resourceGroupName, String labPlanName);
+
+ /**
+ * Retrieves the properties of a Lab Plan.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @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 lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String labPlanName, Context context);
+
+ /**
+ * Operation to create or update a Lab Plan resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, LabPlanInner> beginCreateOrUpdate(
+ String resourceGroupName, String labPlanName, LabPlanInner body);
+
+ /**
+ * Operation to create or update a Lab Plan resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, LabPlanInner> beginCreateOrUpdate(
+ String resourceGroupName, String labPlanName, LabPlanInner body, Context context);
+
+ /**
+ * Operation to create or update a Lab Plan resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ LabPlanInner createOrUpdate(String resourceGroupName, String labPlanName, LabPlanInner body);
+
+ /**
+ * Operation to create or update a Lab Plan resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ LabPlanInner createOrUpdate(String resourceGroupName, String labPlanName, LabPlanInner body, Context context);
+
+ /**
+ * Operation to update a Lab Plan resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, LabPlanInner> beginUpdate(
+ String resourceGroupName, String labPlanName, LabPlanUpdate body);
+
+ /**
+ * Operation to update a Lab Plan resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, LabPlanInner> beginUpdate(
+ String resourceGroupName, String labPlanName, LabPlanUpdate body, Context context);
+
+ /**
+ * Operation to update a Lab Plan resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ LabPlanInner update(String resourceGroupName, String labPlanName, LabPlanUpdate body);
+
+ /**
+ * Operation to update a Lab Plan resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return lab Plans act as a permission container for creating labs via labs.azure.com.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ LabPlanInner update(String resourceGroupName, String labPlanName, LabPlanUpdate body, Context context);
+
+ /**
+ * Operation to delete a Lab Plan resource. Deleting a lab plan does not delete labs associated with a lab plan, nor
+ * does it delete shared images added to a gallery via the lab plan permission container.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String labPlanName);
+
+ /**
+ * Operation to delete a Lab Plan resource. Deleting a lab plan does not delete labs associated with a lab plan, nor
+ * does it delete shared images added to a gallery via the lab plan permission container.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String labPlanName, Context context);
+
+ /**
+ * Operation to delete a Lab Plan resource. Deleting a lab plan does not delete labs associated with a lab plan, nor
+ * does it delete shared images added to a gallery via the lab plan permission container.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @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 labPlanName);
+
+ /**
+ * Operation to delete a Lab Plan resource. Deleting a lab plan does not delete labs associated with a lab plan, nor
+ * does it delete shared images added to a gallery via the lab plan permission container.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @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 labPlanName, Context context);
+
+ /**
+ * Saves an image from a lab VM to the attached shared image gallery.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginSaveImage(String resourceGroupName, String labPlanName, SaveImageBody body);
+
+ /**
+ * Saves an image from a lab VM to the attached shared image gallery.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginSaveImage(
+ String resourceGroupName, String labPlanName, SaveImageBody body, Context context);
+
+ /**
+ * Saves an image from a lab VM to the attached shared image gallery.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void saveImage(String resourceGroupName, String labPlanName, SaveImageBody body);
+
+ /**
+ * Saves an image from a lab VM to the attached shared image gallery.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labPlanName The name of the lab plan that uniquely identifies it within containing resource group. Used in
+ * resource URIs and in UI.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void saveImage(String resourceGroupName, String labPlanName, SaveImageBody body, Context context);
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ManagedLabsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabServicesClient.java
similarity index 57%
rename from sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ManagedLabsClient.java
rename to sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabServicesClient.java
index c79ae9f6d3a5..2900e66777e5 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ManagedLabsClient.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabServicesClient.java
@@ -7,10 +7,10 @@
import com.azure.core.http.HttpPipeline;
import java.time.Duration;
-/** The interface for ManagedLabsClient class. */
-public interface ManagedLabsClient {
+/** The interface for LabServicesClient class. */
+public interface LabServicesClient {
/**
- * Gets The subscription ID.
+ * Gets The ID of the target subscription.
*
* @return the subscriptionId value.
*/
@@ -45,39 +45,32 @@ public interface ManagedLabsClient {
Duration getDefaultPollInterval();
/**
- * Gets the ProviderOperationsClient object to access its operations.
- *
- * @return the ProviderOperationsClient object.
- */
- ProviderOperationsClient getProviderOperations();
-
- /**
- * Gets the GlobalUsersClient object to access its operations.
+ * Gets the OperationsClient object to access its operations.
*
- * @return the GlobalUsersClient object.
+ * @return the OperationsClient object.
*/
- GlobalUsersClient getGlobalUsers();
+ OperationsClient getOperations();
/**
- * Gets the LabAccountsClient object to access its operations.
+ * Gets the OperationResultsClient object to access its operations.
*
- * @return the LabAccountsClient object.
+ * @return the OperationResultsClient object.
*/
- LabAccountsClient getLabAccounts();
+ OperationResultsClient getOperationResults();
/**
- * Gets the OperationsClient object to access its operations.
+ * Gets the LabPlansClient object to access its operations.
*
- * @return the OperationsClient object.
+ * @return the LabPlansClient object.
*/
- OperationsClient getOperations();
+ LabPlansClient getLabPlans();
/**
- * Gets the GalleryImagesClient object to access its operations.
+ * Gets the ImagesClient object to access its operations.
*
- * @return the GalleryImagesClient object.
+ * @return the ImagesClient object.
*/
- GalleryImagesClient getGalleryImages();
+ ImagesClient getImages();
/**
* Gets the LabsClient object to access its operations.
@@ -87,23 +80,23 @@ public interface ManagedLabsClient {
LabsClient getLabs();
/**
- * Gets the EnvironmentSettingsClient object to access its operations.
+ * Gets the UsersClient object to access its operations.
*
- * @return the EnvironmentSettingsClient object.
+ * @return the UsersClient object.
*/
- EnvironmentSettingsClient getEnvironmentSettings();
+ UsersClient getUsers();
/**
- * Gets the EnvironmentsClient object to access its operations.
+ * Gets the VirtualMachinesClient object to access its operations.
*
- * @return the EnvironmentsClient object.
+ * @return the VirtualMachinesClient object.
*/
- EnvironmentsClient getEnvironments();
+ VirtualMachinesClient getVirtualMachines();
/**
- * Gets the UsersClient object to access its operations.
+ * Gets the SchedulesClient object to access its operations.
*
- * @return the UsersClient object.
+ * @return the SchedulesClient object.
*/
- UsersClient getUsers();
+ SchedulesClient getSchedules();
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabsClient.java
index 05fae4c04f04..e124fb67e27e 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabsClient.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabsClient.java
@@ -12,132 +12,234 @@
import com.azure.core.util.Context;
import com.azure.core.util.polling.SyncPoller;
import com.azure.resourcemanager.labservices.fluent.models.LabInner;
-import com.azure.resourcemanager.labservices.models.AddUsersPayload;
-import com.azure.resourcemanager.labservices.models.LabFragment;
+import com.azure.resourcemanager.labservices.models.LabUpdate;
/** An instance of this class provides access to all the operations defined in LabsClient. */
public interface LabsClient {
/**
- * List labs in a given lab account.
+ * Returns a list of all labs for a subscription.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @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 response of a list operation.
+ * @return paged list of labs.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String resourceGroupName, String labAccountName);
+ PagedIterable list();
/**
- * List labs in a given lab account.
+ * Returns a list of all labs for a subscription.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param expand Specify the $expand query. Example: 'properties($select=maxUsersInLab)'.
* @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
* @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 response of a list operation.
+ * @return paged list of labs.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String filter, Context context);
+
+ /**
+ * Returns a list of all labs in a resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return paged list of labs.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(
- String resourceGroupName,
- String labAccountName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context);
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Returns a list of all labs in a resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return paged list of labs.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Returns the properties of a lab resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @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 lab resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ LabInner getByResourceGroup(String resourceGroupName, String labName);
+
+ /**
+ * Returns the properties of a lab resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @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 lab resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(String resourceGroupName, String labName, Context context);
+
+ /**
+ * Operation to create or update a lab resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the lab resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, LabInner> beginCreateOrUpdate(
+ String resourceGroupName, String labName, LabInner body);
+
+ /**
+ * Operation to create or update a lab resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the lab resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, LabInner> beginCreateOrUpdate(
+ String resourceGroupName, String labName, LabInner body, Context context);
/**
- * Get lab.
+ * Operation to create or update a lab resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param body The request body.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return lab.
+ * @return the lab resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- LabInner get(String resourceGroupName, String labAccountName, String labName);
+ LabInner createOrUpdate(String resourceGroupName, String labName, LabInner body);
/**
- * Get lab.
+ * Operation to create or update a lab resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param expand Specify the $expand query. Example: 'properties($select=maxUsersInLab)'.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param body The request body.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return lab.
+ * @return the lab resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(
- String resourceGroupName, String labAccountName, String labName, String expand, Context context);
+ LabInner createOrUpdate(String resourceGroupName, String labName, LabInner body, Context context);
/**
- * Create or replace an existing Lab.
+ * Operation to update a lab resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param lab Represents a lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param body The request body.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents a lab.
+ * @return the lab resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- LabInner createOrUpdate(String resourceGroupName, String labAccountName, String labName, LabInner lab);
+ SyncPoller, LabInner> beginUpdate(String resourceGroupName, String labName, LabUpdate body);
/**
- * Create or replace an existing Lab.
+ * Operation to update a lab resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param lab Represents a lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param body The request body.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents a lab.
+ * @return the lab resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response createOrUpdateWithResponse(
- String resourceGroupName, String labAccountName, String labName, LabInner lab, Context context);
+ SyncPoller, LabInner> beginUpdate(
+ String resourceGroupName, String labName, LabUpdate body, Context context);
/**
- * Delete lab. This operation can take a while to complete.
+ * Operation to update a lab resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the lab resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ LabInner update(String resourceGroupName, String labName, LabUpdate body);
+
+ /**
+ * Operation to update a lab resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the lab resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ LabInner update(String resourceGroupName, String labName, LabUpdate body, Context context);
+
+ /**
+ * Operation to delete a lab resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(String resourceGroupName, String labAccountName, String labName);
+ SyncPoller, Void> beginDelete(String resourceGroupName, String labName);
/**
- * Delete lab. This operation can take a while to complete.
+ * Operation to delete a lab resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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.
@@ -145,129 +247,144 @@ Response createOrUpdateWithResponse(
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(
- String resourceGroupName, String labAccountName, String labName, Context context);
+ SyncPoller, Void> beginDelete(String resourceGroupName, String labName, Context context);
+
+ /**
+ * Operation to delete a lab resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @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 labName);
+
+ /**
+ * Operation to delete a lab resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @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 labName, Context context);
/**
- * Delete lab. This operation can take a while to complete.
+ * Publish or re-publish a lab. This will create or update all lab resources, such as virtual machines.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void delete(String resourceGroupName, String labAccountName, String labName);
+ SyncPoller, Void> beginPublish(String resourceGroupName, String labName);
/**
- * Delete lab. This operation can take a while to complete.
+ * Publish or re-publish a lab. This will create or update all lab resources, such as virtual machines.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void delete(String resourceGroupName, String labAccountName, String labName, Context context);
+ SyncPoller, Void> beginPublish(String resourceGroupName, String labName, Context context);
/**
- * Modify properties of labs.
+ * Publish or re-publish a lab. This will create or update all lab resources, such as virtual machines.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param lab Represents a lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 represents a lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- LabInner update(String resourceGroupName, String labAccountName, String labName, LabFragment lab);
+ void publish(String resourceGroupName, String labName);
/**
- * Modify properties of labs.
+ * Publish or re-publish a lab. This will create or update all lab resources, such as virtual machines.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param lab Represents a lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 represents a lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response updateWithResponse(
- String resourceGroupName, String labAccountName, String labName, LabFragment lab, Context context);
+ void publish(String resourceGroupName, String labName, Context context);
/**
- * Add users to a lab.
+ * Action used to manually kick off an AAD group sync job.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param addUsersPayload Payload for Add Users operation on a Lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void addUsers(String resourceGroupName, String labAccountName, String labName, AddUsersPayload addUsersPayload);
+ SyncPoller, Void> beginSyncGroup(String resourceGroupName, String labName);
/**
- * Add users to a lab.
+ * Action used to manually kick off an AAD group sync job.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param addUsersPayload Payload for Add Users operation on a Lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 response.
+ * @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response addUsersWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- AddUsersPayload addUsersPayload,
- Context context);
+ SyncPoller, Void> beginSyncGroup(String resourceGroupName, String labName, Context context);
/**
- * Register to managed lab.
+ * Action used to manually kick off an AAD group sync job.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 register(String resourceGroupName, String labAccountName, String labName);
+ void syncGroup(String resourceGroupName, String labName);
/**
- * Register to managed lab.
+ * Action used to manually kick off an AAD group sync job.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 response.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response registerWithResponse(
- String resourceGroupName, String labAccountName, String labName, Context context);
+ void syncGroup(String resourceGroupName, String labName, Context context);
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ProviderOperationsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationResultsClient.java
similarity index 58%
rename from sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ProviderOperationsClient.java
rename to sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationResultsClient.java
index bada5d64c797..1f7fd1d36a1e 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ProviderOperationsClient.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationResultsClient.java
@@ -6,31 +6,34 @@
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.util.Context;
-import com.azure.resourcemanager.labservices.fluent.models.OperationMetadataInner;
+import com.azure.resourcemanager.labservices.fluent.models.OperationResultInner;
-/** An instance of this class provides access to all the operations defined in ProviderOperationsClient. */
-public interface ProviderOperationsClient {
+/** An instance of this class provides access to all the operations defined in OperationResultsClient. */
+public interface OperationResultsClient {
/**
- * Result of the request to list REST API operations.
+ * Returns an azure operation result.
*
+ * @param operationResultId The operation result ID / name.
+ * @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 result of the request to list REST API operations.
+ * @return a long running operation result.
*/
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list();
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ OperationResultInner get(String operationResultId);
/**
- * Result of the request to list REST API operations.
+ * Returns an azure operation result.
*
+ * @param operationResultId The operation result ID / name.
* @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 result of the request to list REST API operations.
+ * @return a long running operation result.
*/
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(Context context);
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(String operationResultId, Context context);
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationsClient.java
index 4a4b634df9b5..e37b1ec85596 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationsClient.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationsClient.java
@@ -6,36 +6,31 @@
import com.azure.core.annotation.ReturnType;
import com.azure.core.annotation.ServiceMethod;
-import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.PagedIterable;
import com.azure.core.util.Context;
-import com.azure.resourcemanager.labservices.fluent.models.OperationResultInner;
+import com.azure.resourcemanager.labservices.fluent.models.OperationInner;
/** An instance of this class provides access to all the operations defined in OperationsClient. */
public interface OperationsClient {
/**
- * Get operation.
+ * Returns a list of all operations.
*
- * @param locationName The name of the location.
- * @param operationName The name of the operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return operation.
+ * @return a list of REST API operations supported by an Azure Resource Provider.
*/
- @ServiceMethod(returns = ReturnType.SINGLE)
- OperationResultInner get(String locationName, String operationName);
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
/**
- * Get operation.
+ * Returns a list of all operations.
*
- * @param locationName The name of the location.
- * @param operationName The name of the operation.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return operation.
+ * @return a list of REST API operations supported by an Azure Resource Provider.
*/
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(String locationName, String operationName, Context context);
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/SchedulesClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/SchedulesClient.java
new file mode 100644
index 000000000000..27b3b326f245
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/SchedulesClient.java
@@ -0,0 +1,219 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.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.labservices.fluent.models.ScheduleInner;
+import com.azure.resourcemanager.labservices.models.ScheduleUpdate;
+
+/** An instance of this class provides access to all the operations defined in SchedulesClient. */
+public interface SchedulesClient {
+ /**
+ * Returns a list of all schedules for a lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @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 paged list of schedules.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByLab(String resourceGroupName, String labName);
+
+ /**
+ * Returns a list of all schedules for a lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param filter The filter to apply to the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return paged list of schedules.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByLab(String resourceGroupName, String labName, String filter, Context context);
+
+ /**
+ * Returns the properties of a lab Schedule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @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 schedule for automatically turning virtual machines in a lab on and off at specified times.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ScheduleInner get(String resourceGroupName, String labName, String scheduleName);
+
+ /**
+ * Returns the properties of a lab Schedule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @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 schedule for automatically turning virtual machines in a lab on and off at specified times.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String labName, String scheduleName, Context context);
+
+ /**
+ * Operation to create or update a lab schedule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return schedule for automatically turning virtual machines in a lab on and off at specified times.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ScheduleInner createOrUpdate(String resourceGroupName, String labName, String scheduleName, ScheduleInner body);
+
+ /**
+ * Operation to create or update a lab schedule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return schedule for automatically turning virtual machines in a lab on and off at specified times.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ String resourceGroupName, String labName, String scheduleName, ScheduleInner body, Context context);
+
+ /**
+ * Operation to update a lab schedule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return schedule for automatically turning virtual machines in a lab on and off at specified times.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ScheduleInner update(String resourceGroupName, String labName, String scheduleName, ScheduleUpdate body);
+
+ /**
+ * Operation to update a lab schedule.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return schedule for automatically turning virtual machines in a lab on and off at specified times.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response updateWithResponse(
+ String resourceGroupName, String labName, String scheduleName, ScheduleUpdate body, Context context);
+
+ /**
+ * Operation to delete a schedule resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String labName, String scheduleName);
+
+ /**
+ * Operation to delete a schedule resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginDelete(
+ String resourceGroupName, String labName, String scheduleName, Context context);
+
+ /**
+ * Operation to delete a schedule resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @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 labName, String scheduleName);
+
+ /**
+ * Operation to delete a schedule resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param scheduleName The name of the schedule that uniquely identifies it within containing lab. Used in resource
+ * URIs.
+ * @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 labName, String scheduleName, Context context);
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/UsersClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/UsersClient.java
index 67fb01d644a3..9a87877493ca 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/UsersClient.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/UsersClient.java
@@ -12,152 +12,231 @@
import com.azure.core.util.Context;
import com.azure.core.util.polling.SyncPoller;
import com.azure.resourcemanager.labservices.fluent.models.UserInner;
-import com.azure.resourcemanager.labservices.models.UserFragment;
+import com.azure.resourcemanager.labservices.models.InviteBody;
+import com.azure.resourcemanager.labservices.models.UserUpdate;
/** An instance of this class provides access to all the operations defined in UsersClient. */
public interface UsersClient {
/**
- * List users in a given lab.
+ * Returns a list of all users for a lab.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @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 response of a list operation.
+ * @return paged list of users.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String resourceGroupName, String labAccountName, String labName);
+ PagedIterable listByLab(String resourceGroupName, String labName);
/**
- * List users in a given lab.
+ * Returns a list of all users for a lab.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param expand Specify the $expand query. Example: 'properties($select=email)'.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
* @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
* @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 response of a list operation.
+ * @return paged list of users.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context);
+ PagedIterable listByLab(String resourceGroupName, String labName, String filter, Context context);
/**
- * Get user.
+ * Returns the properties of a lab user.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
* @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 user.
+ * @return user of a lab that can register for and use virtual machines within the lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- UserInner get(String resourceGroupName, String labAccountName, String labName, String username);
+ UserInner get(String resourceGroupName, String labName, String username);
/**
- * Get user.
+ * Returns the properties of a lab user.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
- * @param expand Specify the $expand query. Example: 'properties($select=email)'.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
* @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 user.
+ * @return user of a lab that can register for and use virtual machines within the lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String username,
- String expand,
- Context context);
+ Response getWithResponse(String resourceGroupName, String labName, String username, Context context);
/**
- * Create or replace an existing User.
+ * Operation to create or update a lab user.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
- * @param user The User registered to a lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the User registered to a lab.
+ * @return user of a lab that can register for and use virtual machines within the lab.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, UserInner> beginCreateOrUpdate(
+ String resourceGroupName, String labName, String username, UserInner body);
+
+ /**
+ * Operation to create or update a lab user.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return user of a lab that can register for and use virtual machines within the lab.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, UserInner> beginCreateOrUpdate(
+ String resourceGroupName, String labName, String username, UserInner body, Context context);
+
+ /**
+ * Operation to create or update a lab user.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return user of a lab that can register for and use virtual machines within the lab.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ UserInner createOrUpdate(String resourceGroupName, String labName, String username, UserInner body);
+
+ /**
+ * Operation to create or update a lab user.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return user of a lab that can register for and use virtual machines within the lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
UserInner createOrUpdate(
- String resourceGroupName, String labAccountName, String labName, String username, UserInner user);
+ String resourceGroupName, String labName, String username, UserInner body, Context context);
+
+ /**
+ * Operation to update a lab user.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return user of a lab that can register for and use virtual machines within the lab.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, UserInner> beginUpdate(
+ String resourceGroupName, String labName, String username, UserUpdate body);
/**
- * Create or replace an existing User.
+ * Operation to update a lab user.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
- * @param user The User registered to a lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the User registered to a lab.
+ * @return user of a lab that can register for and use virtual machines within the lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response createOrUpdateWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String username,
- UserInner user,
- Context context);
+ SyncPoller, UserInner> beginUpdate(
+ String resourceGroupName, String labName, String username, UserUpdate body, Context context);
/**
- * Delete user. This operation can take a while to complete.
+ * Operation to update a lab user.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return user of a lab that can register for and use virtual machines within the lab.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ UserInner update(String resourceGroupName, String labName, String username, UserUpdate body);
+
+ /**
+ * Operation to update a lab user.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return user of a lab that can register for and use virtual machines within the lab.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ UserInner update(String resourceGroupName, String labName, String username, UserUpdate body, Context context);
+
+ /**
+ * Operation to delete a user resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
* @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 completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(
- String resourceGroupName, String labAccountName, String labName, String username);
+ SyncPoller, Void> beginDelete(String resourceGroupName, String labName, String username);
/**
- * Delete user. This operation can take a while to complete.
+ * Operation to delete a user resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
* @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.
@@ -166,74 +245,100 @@ SyncPoller, Void> beginDelete(
*/
@ServiceMethod(returns = ReturnType.SINGLE)
SyncPoller, Void> beginDelete(
- String resourceGroupName, String labAccountName, String labName, String username, Context context);
+ String resourceGroupName, String labName, String username, Context context);
/**
- * Delete user. This operation can take a while to complete.
+ * Operation to delete a user resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
* @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 labAccountName, String labName, String username);
+ void delete(String resourceGroupName, String labName, String username);
/**
- * Delete user. This operation can take a while to complete.
+ * Operation to delete a user resource.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
* @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 labAccountName, String labName, String username, Context context);
+ void delete(String resourceGroupName, String labName, String username, Context context);
+
+ /**
+ * Operation to invite a user to a lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginInvite(
+ String resourceGroupName, String labName, String username, InviteBody body);
+
+ /**
+ * Operation to invite a user to a lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginInvite(
+ String resourceGroupName, String labName, String username, InviteBody body, Context context);
/**
- * Modify properties of users.
+ * Operation to invite a user to a lab.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
- * @param user The User registered to a lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the User registered to a lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- UserInner update(
- String resourceGroupName, String labAccountName, String labName, String username, UserFragment user);
+ void invite(String resourceGroupName, String labName, String username, InviteBody body);
/**
- * Modify properties of users.
+ * Operation to invite a user to a lab.
*
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param username The name of the user.
- * @param user The User registered to a lab.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param username The name of the user that uniquely identifies it within containing lab. Used in resource URIs.
+ * @param body The request body.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the User registered to a lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response updateWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String username,
- UserFragment user,
- Context context);
+ void invite(String resourceGroupName, String labName, String username, InviteBody body, Context context);
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/VirtualMachinesClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/VirtualMachinesClient.java
new file mode 100644
index 000000000000..2e40d0726f89
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/VirtualMachinesClient.java
@@ -0,0 +1,420 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.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.labservices.fluent.models.VirtualMachineInner;
+import com.azure.resourcemanager.labservices.models.ResetPasswordBody;
+
+/** An instance of this class provides access to all the operations defined in VirtualMachinesClient. */
+public interface VirtualMachinesClient {
+ /**
+ * Returns a list of all virtual machines for a lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @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 paged list of lab services virtual machines.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByLab(String resourceGroupName, String labName);
+
+ /**
+ * Returns a list of all virtual machines for a lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param filter The filter to apply to the operation.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return paged list of lab services virtual machines.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByLab(
+ String resourceGroupName, String labName, String filter, Context context);
+
+ /**
+ * Returns the properties for a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a lab virtual machine resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VirtualMachineInner get(String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Returns the properties for a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a lab virtual machine resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Action to start a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginStart(String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Action to start a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginStart(
+ String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Action to start a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void start(String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Action to start a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void start(String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Action to stop a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginStop(String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Action to stop a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginStop(
+ String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Action to stop a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 stop(String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Action to stop a lab virtual machine.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 stop(String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Re-image a lab virtual machine. The virtual machine will be deleted and recreated using the latest published
+ * snapshot of the reference environment of the lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginReimage(
+ String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Re-image a lab virtual machine. The virtual machine will be deleted and recreated using the latest published
+ * snapshot of the reference environment of the lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginReimage(
+ String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Re-image a lab virtual machine. The virtual machine will be deleted and recreated using the latest published
+ * snapshot of the reference environment of the lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void reimage(String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Re-image a lab virtual machine. The virtual machine will be deleted and recreated using the latest published
+ * snapshot of the reference environment of the lab.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void reimage(String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Action to redeploy a lab virtual machine to a different compute node. For troubleshooting connectivity.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginRedeploy(
+ String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Action to redeploy a lab virtual machine to a different compute node. For troubleshooting connectivity.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginRedeploy(
+ String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Action to redeploy a lab virtual machine to a different compute node. For troubleshooting connectivity.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 redeploy(String resourceGroupName, String labName, String virtualMachineName);
+
+ /**
+ * Action to redeploy a lab virtual machine to a different compute node. For troubleshooting connectivity.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @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 redeploy(String resourceGroupName, String labName, String virtualMachineName, Context context);
+
+ /**
+ * Resets a lab virtual machine password.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginResetPassword(
+ String resourceGroupName, String labName, String virtualMachineName, ResetPasswordBody body);
+
+ /**
+ * Resets a lab virtual machine password.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SyncPoller, Void> beginResetPassword(
+ String resourceGroupName, String labName, String virtualMachineName, ResetPasswordBody body, Context context);
+
+ /**
+ * Resets a lab virtual machine password.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void resetPassword(String resourceGroupName, String labName, String virtualMachineName, ResetPasswordBody body);
+
+ /**
+ * Resets a lab virtual machine password.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param labName The name of the lab that uniquely identifies it within containing lab account. Used in resource
+ * URIs.
+ * @param virtualMachineName The ID of the virtual machine that uniquely identifies it within the containing lab.
+ * Used in resource URIs.
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void resetPassword(
+ String resourceGroupName, String labName, String virtualMachineName, ResetPasswordBody body, Context context);
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/EnvironmentInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/EnvironmentInner.java
deleted file mode 100644
index dc8c63cebbc0..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/EnvironmentInner.java
+++ /dev/null
@@ -1,269 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
-import com.azure.core.management.Resource;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.LatestOperationResult;
-import com.azure.resourcemanager.labservices.models.NetworkInterface;
-import com.azure.resourcemanager.labservices.models.ResourceSet;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.time.Duration;
-import java.time.OffsetDateTime;
-import java.util.Map;
-
-/** Represents an environment instance. */
-@JsonFlatten
-@Fluent
-public class EnvironmentInner extends Resource {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(EnvironmentInner.class);
-
- /*
- * The set of a VM and the setting id it was created for
- */
- @JsonProperty(value = "properties.resourceSets")
- private ResourceSet resourceSets;
-
- /*
- * The AAD object Id of the user who has claimed the environment
- */
- @JsonProperty(value = "properties.claimedByUserObjectId", access = JsonProperty.Access.WRITE_ONLY)
- private String claimedByUserObjectId;
-
- /*
- * The user principal Id of the user who has claimed the environment
- */
- @JsonProperty(value = "properties.claimedByUserPrincipalId", access = JsonProperty.Access.WRITE_ONLY)
- private String claimedByUserPrincipalId;
-
- /*
- * The name or email address of the user who has claimed the environment
- */
- @JsonProperty(value = "properties.claimedByUserName", access = JsonProperty.Access.WRITE_ONLY)
- private String claimedByUsername;
-
- /*
- * Is the environment claimed or not
- */
- @JsonProperty(value = "properties.isClaimed", access = JsonProperty.Access.WRITE_ONLY)
- private Boolean isClaimed;
-
- /*
- * Last known power state of the environment
- */
- @JsonProperty(value = "properties.lastKnownPowerState", access = JsonProperty.Access.WRITE_ONLY)
- private String lastKnownPowerState;
-
- /*
- * Network details of the environment
- */
- @JsonProperty(value = "properties.networkInterface", access = JsonProperty.Access.WRITE_ONLY)
- private NetworkInterface networkInterface;
-
- /*
- * How long the environment has been used by a lab user
- */
- @JsonProperty(value = "properties.totalUsage", access = JsonProperty.Access.WRITE_ONLY)
- private Duration totalUsage;
-
- /*
- * When the password was last reset on the environment.
- */
- @JsonProperty(value = "properties.passwordLastReset", access = JsonProperty.Access.WRITE_ONLY)
- private OffsetDateTime passwordLastReset;
-
- /*
- * The provisioning status of the resource.
- */
- @JsonProperty(value = "properties.provisioningState")
- private String provisioningState;
-
- /*
- * The unique immutable identifier of a resource (Guid).
- */
- @JsonProperty(value = "properties.uniqueIdentifier")
- private String uniqueIdentifier;
-
- /*
- * The details of the latest operation. ex: status, error
- */
- @JsonProperty(value = "properties.latestOperationResult", access = JsonProperty.Access.WRITE_ONLY)
- private LatestOperationResult latestOperationResult;
-
- /**
- * Get the resourceSets property: The set of a VM and the setting id it was created for.
- *
- * @return the resourceSets value.
- */
- public ResourceSet resourceSets() {
- return this.resourceSets;
- }
-
- /**
- * Set the resourceSets property: The set of a VM and the setting id it was created for.
- *
- * @param resourceSets the resourceSets value to set.
- * @return the EnvironmentInner object itself.
- */
- public EnvironmentInner withResourceSets(ResourceSet resourceSets) {
- this.resourceSets = resourceSets;
- return this;
- }
-
- /**
- * Get the claimedByUserObjectId property: The AAD object Id of the user who has claimed the environment.
- *
- * @return the claimedByUserObjectId value.
- */
- public String claimedByUserObjectId() {
- return this.claimedByUserObjectId;
- }
-
- /**
- * Get the claimedByUserPrincipalId property: The user principal Id of the user who has claimed the environment.
- *
- * @return the claimedByUserPrincipalId value.
- */
- public String claimedByUserPrincipalId() {
- return this.claimedByUserPrincipalId;
- }
-
- /**
- * Get the claimedByUsername property: The name or email address of the user who has claimed the environment.
- *
- * @return the claimedByUsername value.
- */
- public String claimedByUsername() {
- return this.claimedByUsername;
- }
-
- /**
- * Get the isClaimed property: Is the environment claimed or not.
- *
- * @return the isClaimed value.
- */
- public Boolean isClaimed() {
- return this.isClaimed;
- }
-
- /**
- * Get the lastKnownPowerState property: Last known power state of the environment.
- *
- * @return the lastKnownPowerState value.
- */
- public String lastKnownPowerState() {
- return this.lastKnownPowerState;
- }
-
- /**
- * Get the networkInterface property: Network details of the environment.
- *
- * @return the networkInterface value.
- */
- public NetworkInterface networkInterface() {
- return this.networkInterface;
- }
-
- /**
- * Get the totalUsage property: How long the environment has been used by a lab user.
- *
- * @return the totalUsage value.
- */
- public Duration totalUsage() {
- return this.totalUsage;
- }
-
- /**
- * Get the passwordLastReset property: When the password was last reset on the environment.
- *
- * @return the passwordLastReset value.
- */
- public OffsetDateTime passwordLastReset() {
- return this.passwordLastReset;
- }
-
- /**
- * Get the provisioningState property: The provisioning status of the resource.
- *
- * @return the provisioningState value.
- */
- public String provisioningState() {
- return this.provisioningState;
- }
-
- /**
- * Set the provisioningState property: The provisioning status of the resource.
- *
- * @param provisioningState the provisioningState value to set.
- * @return the EnvironmentInner object itself.
- */
- public EnvironmentInner withProvisioningState(String provisioningState) {
- this.provisioningState = provisioningState;
- return this;
- }
-
- /**
- * Get the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
- *
- * @return the uniqueIdentifier value.
- */
- public String uniqueIdentifier() {
- return this.uniqueIdentifier;
- }
-
- /**
- * Set the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
- *
- * @param uniqueIdentifier the uniqueIdentifier value to set.
- * @return the EnvironmentInner object itself.
- */
- public EnvironmentInner withUniqueIdentifier(String uniqueIdentifier) {
- this.uniqueIdentifier = uniqueIdentifier;
- return this;
- }
-
- /**
- * Get the latestOperationResult property: The details of the latest operation. ex: status, error.
- *
- * @return the latestOperationResult value.
- */
- public LatestOperationResult latestOperationResult() {
- return this.latestOperationResult;
- }
-
- /** {@inheritDoc} */
- @Override
- public EnvironmentInner withLocation(String location) {
- super.withLocation(location);
- return this;
- }
-
- /** {@inheritDoc} */
- @Override
- public EnvironmentInner withTags(Map tags) {
- super.withTags(tags);
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (resourceSets() != null) {
- resourceSets().validate();
- }
- if (networkInterface() != null) {
- networkInterface().validate();
- }
- if (latestOperationResult() != null) {
- latestOperationResult().validate();
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/EnvironmentSettingInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/EnvironmentSettingInner.java
deleted file mode 100644
index 2e7b0db59a64..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/EnvironmentSettingInner.java
+++ /dev/null
@@ -1,269 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
-import com.azure.core.management.Resource;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.ConfigurationState;
-import com.azure.resourcemanager.labservices.models.LatestOperationResult;
-import com.azure.resourcemanager.labservices.models.PublishingState;
-import com.azure.resourcemanager.labservices.models.ResourceSettings;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.time.OffsetDateTime;
-import java.util.Map;
-
-/** Represents settings of an environment, from which environment instances would be created. */
-@JsonFlatten
-@Fluent
-public class EnvironmentSettingInner extends Resource {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(EnvironmentSettingInner.class);
-
- /*
- * Describes the readiness of this environment setting
- */
- @JsonProperty(value = "properties.publishingState", access = JsonProperty.Access.WRITE_ONLY)
- private PublishingState publishingState;
-
- /*
- * Describes the user's progress in configuring their environment setting
- */
- @JsonProperty(value = "properties.configurationState")
- private ConfigurationState configurationState;
-
- /*
- * Describes the environment and its resource settings
- */
- @JsonProperty(value = "properties.description")
- private String description;
-
- /*
- * Brief title describing the environment and its resource settings
- */
- @JsonProperty(value = "properties.title")
- private String title;
-
- /*
- * The resource specific settings
- */
- @JsonProperty(value = "properties.resourceSettings")
- private ResourceSettings resourceSettings;
-
- /*
- * Time when the template VM was last changed.
- */
- @JsonProperty(value = "properties.lastChanged", access = JsonProperty.Access.WRITE_ONLY)
- private OffsetDateTime lastChanged;
-
- /*
- * Time when the template VM was last sent for publishing.
- */
- @JsonProperty(value = "properties.lastPublished", access = JsonProperty.Access.WRITE_ONLY)
- private OffsetDateTime lastPublished;
-
- /*
- * The provisioning status of the resource.
- */
- @JsonProperty(value = "properties.provisioningState")
- private String provisioningState;
-
- /*
- * The unique immutable identifier of a resource (Guid).
- */
- @JsonProperty(value = "properties.uniqueIdentifier")
- private String uniqueIdentifier;
-
- /*
- * The details of the latest operation. ex: status, error
- */
- @JsonProperty(value = "properties.latestOperationResult", access = JsonProperty.Access.WRITE_ONLY)
- private LatestOperationResult latestOperationResult;
-
- /**
- * Get the publishingState property: Describes the readiness of this environment setting.
- *
- * @return the publishingState value.
- */
- public PublishingState publishingState() {
- return this.publishingState;
- }
-
- /**
- * Get the configurationState property: Describes the user's progress in configuring their environment setting.
- *
- * @return the configurationState value.
- */
- public ConfigurationState configurationState() {
- return this.configurationState;
- }
-
- /**
- * Set the configurationState property: Describes the user's progress in configuring their environment setting.
- *
- * @param configurationState the configurationState value to set.
- * @return the EnvironmentSettingInner object itself.
- */
- public EnvironmentSettingInner withConfigurationState(ConfigurationState configurationState) {
- this.configurationState = configurationState;
- return this;
- }
-
- /**
- * Get the description property: Describes the environment and its resource settings.
- *
- * @return the description value.
- */
- public String description() {
- return this.description;
- }
-
- /**
- * Set the description property: Describes the environment and its resource settings.
- *
- * @param description the description value to set.
- * @return the EnvironmentSettingInner object itself.
- */
- public EnvironmentSettingInner withDescription(String description) {
- this.description = description;
- return this;
- }
-
- /**
- * Get the title property: Brief title describing the environment and its resource settings.
- *
- * @return the title value.
- */
- public String title() {
- return this.title;
- }
-
- /**
- * Set the title property: Brief title describing the environment and its resource settings.
- *
- * @param title the title value to set.
- * @return the EnvironmentSettingInner object itself.
- */
- public EnvironmentSettingInner withTitle(String title) {
- this.title = title;
- return this;
- }
-
- /**
- * Get the resourceSettings property: The resource specific settings.
- *
- * @return the resourceSettings value.
- */
- public ResourceSettings resourceSettings() {
- return this.resourceSettings;
- }
-
- /**
- * Set the resourceSettings property: The resource specific settings.
- *
- * @param resourceSettings the resourceSettings value to set.
- * @return the EnvironmentSettingInner object itself.
- */
- public EnvironmentSettingInner withResourceSettings(ResourceSettings resourceSettings) {
- this.resourceSettings = resourceSettings;
- return this;
- }
-
- /**
- * Get the lastChanged property: Time when the template VM was last changed.
- *
- * @return the lastChanged value.
- */
- public OffsetDateTime lastChanged() {
- return this.lastChanged;
- }
-
- /**
- * Get the lastPublished property: Time when the template VM was last sent for publishing.
- *
- * @return the lastPublished value.
- */
- public OffsetDateTime lastPublished() {
- return this.lastPublished;
- }
-
- /**
- * Get the provisioningState property: The provisioning status of the resource.
- *
- * @return the provisioningState value.
- */
- public String provisioningState() {
- return this.provisioningState;
- }
-
- /**
- * Set the provisioningState property: The provisioning status of the resource.
- *
- * @param provisioningState the provisioningState value to set.
- * @return the EnvironmentSettingInner object itself.
- */
- public EnvironmentSettingInner withProvisioningState(String provisioningState) {
- this.provisioningState = provisioningState;
- return this;
- }
-
- /**
- * Get the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
- *
- * @return the uniqueIdentifier value.
- */
- public String uniqueIdentifier() {
- return this.uniqueIdentifier;
- }
-
- /**
- * Set the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
- *
- * @param uniqueIdentifier the uniqueIdentifier value to set.
- * @return the EnvironmentSettingInner object itself.
- */
- public EnvironmentSettingInner withUniqueIdentifier(String uniqueIdentifier) {
- this.uniqueIdentifier = uniqueIdentifier;
- return this;
- }
-
- /**
- * Get the latestOperationResult property: The details of the latest operation. ex: status, error.
- *
- * @return the latestOperationResult value.
- */
- public LatestOperationResult latestOperationResult() {
- return this.latestOperationResult;
- }
-
- /** {@inheritDoc} */
- @Override
- public EnvironmentSettingInner withLocation(String location) {
- super.withLocation(location);
- return this;
- }
-
- /** {@inheritDoc} */
- @Override
- public EnvironmentSettingInner withTags(Map tags) {
- super.withTags(tags);
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (resourceSettings() != null) {
- resourceSettings().validate();
- }
- if (latestOperationResult() != null) {
- latestOperationResult().validate();
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GalleryImageInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GalleryImageInner.java
deleted file mode 100644
index 2430b363c566..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GalleryImageInner.java
+++ /dev/null
@@ -1,286 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
-import com.azure.core.management.Resource;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.GalleryImageReference;
-import com.azure.resourcemanager.labservices.models.LatestOperationResult;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.time.OffsetDateTime;
-import java.util.Map;
-
-/** Represents an image from the Azure Marketplace. */
-@JsonFlatten
-@Fluent
-public class GalleryImageInner extends Resource {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(GalleryImageInner.class);
-
- /*
- * The author of the gallery image.
- */
- @JsonProperty(value = "properties.author", access = JsonProperty.Access.WRITE_ONLY)
- private String author;
-
- /*
- * The creation date of the gallery image.
- */
- @JsonProperty(value = "properties.createdDate", access = JsonProperty.Access.WRITE_ONLY)
- private OffsetDateTime createdDate;
-
- /*
- * The description of the gallery image.
- */
- @JsonProperty(value = "properties.description", access = JsonProperty.Access.WRITE_ONLY)
- private String description;
-
- /*
- * The image reference of the gallery image.
- */
- @JsonProperty(value = "properties.imageReference", access = JsonProperty.Access.WRITE_ONLY)
- private GalleryImageReference imageReference;
-
- /*
- * The icon of the gallery image.
- */
- @JsonProperty(value = "properties.icon", access = JsonProperty.Access.WRITE_ONLY)
- private String icon;
-
- /*
- * Indicates whether this gallery image is enabled.
- */
- @JsonProperty(value = "properties.isEnabled")
- private Boolean isEnabled;
-
- /*
- * Indicates whether this gallery has been overridden for this lab account
- */
- @JsonProperty(value = "properties.isOverride")
- private Boolean isOverride;
-
- /*
- * The third party plan that applies to this image
- */
- @JsonProperty(value = "properties.planId", access = JsonProperty.Access.WRITE_ONLY)
- private String planId;
-
- /*
- * Indicates if the plan has been authorized for programmatic deployment.
- */
- @JsonProperty(value = "properties.isPlanAuthorized")
- private Boolean isPlanAuthorized;
-
- /*
- * The provisioning status of the resource.
- */
- @JsonProperty(value = "properties.provisioningState")
- private String provisioningState;
-
- /*
- * The unique immutable identifier of a resource (Guid).
- */
- @JsonProperty(value = "properties.uniqueIdentifier")
- private String uniqueIdentifier;
-
- /*
- * The details of the latest operation. ex: status, error
- */
- @JsonProperty(value = "properties.latestOperationResult", access = JsonProperty.Access.WRITE_ONLY)
- private LatestOperationResult latestOperationResult;
-
- /**
- * Get the author property: The author of the gallery image.
- *
- * @return the author value.
- */
- public String author() {
- return this.author;
- }
-
- /**
- * Get the createdDate property: The creation date of the gallery image.
- *
- * @return the createdDate value.
- */
- public OffsetDateTime createdDate() {
- return this.createdDate;
- }
-
- /**
- * Get the description property: The description of the gallery image.
- *
- * @return the description value.
- */
- public String description() {
- return this.description;
- }
-
- /**
- * Get the imageReference property: The image reference of the gallery image.
- *
- * @return the imageReference value.
- */
- public GalleryImageReference imageReference() {
- return this.imageReference;
- }
-
- /**
- * Get the icon property: The icon of the gallery image.
- *
- * @return the icon value.
- */
- public String icon() {
- return this.icon;
- }
-
- /**
- * Get the isEnabled property: Indicates whether this gallery image is enabled.
- *
- * @return the isEnabled value.
- */
- public Boolean isEnabled() {
- return this.isEnabled;
- }
-
- /**
- * Set the isEnabled property: Indicates whether this gallery image is enabled.
- *
- * @param isEnabled the isEnabled value to set.
- * @return the GalleryImageInner object itself.
- */
- public GalleryImageInner withIsEnabled(Boolean isEnabled) {
- this.isEnabled = isEnabled;
- return this;
- }
-
- /**
- * Get the isOverride property: Indicates whether this gallery has been overridden for this lab account.
- *
- * @return the isOverride value.
- */
- public Boolean isOverride() {
- return this.isOverride;
- }
-
- /**
- * Set the isOverride property: Indicates whether this gallery has been overridden for this lab account.
- *
- * @param isOverride the isOverride value to set.
- * @return the GalleryImageInner object itself.
- */
- public GalleryImageInner withIsOverride(Boolean isOverride) {
- this.isOverride = isOverride;
- return this;
- }
-
- /**
- * Get the planId property: The third party plan that applies to this image.
- *
- * @return the planId value.
- */
- public String planId() {
- return this.planId;
- }
-
- /**
- * Get the isPlanAuthorized property: Indicates if the plan has been authorized for programmatic deployment.
- *
- * @return the isPlanAuthorized value.
- */
- public Boolean isPlanAuthorized() {
- return this.isPlanAuthorized;
- }
-
- /**
- * Set the isPlanAuthorized property: Indicates if the plan has been authorized for programmatic deployment.
- *
- * @param isPlanAuthorized the isPlanAuthorized value to set.
- * @return the GalleryImageInner object itself.
- */
- public GalleryImageInner withIsPlanAuthorized(Boolean isPlanAuthorized) {
- this.isPlanAuthorized = isPlanAuthorized;
- return this;
- }
-
- /**
- * Get the provisioningState property: The provisioning status of the resource.
- *
- * @return the provisioningState value.
- */
- public String provisioningState() {
- return this.provisioningState;
- }
-
- /**
- * Set the provisioningState property: The provisioning status of the resource.
- *
- * @param provisioningState the provisioningState value to set.
- * @return the GalleryImageInner object itself.
- */
- public GalleryImageInner withProvisioningState(String provisioningState) {
- this.provisioningState = provisioningState;
- return this;
- }
-
- /**
- * Get the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
- *
- * @return the uniqueIdentifier value.
- */
- public String uniqueIdentifier() {
- return this.uniqueIdentifier;
- }
-
- /**
- * Set the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
- *
- * @param uniqueIdentifier the uniqueIdentifier value to set.
- * @return the GalleryImageInner object itself.
- */
- public GalleryImageInner withUniqueIdentifier(String uniqueIdentifier) {
- this.uniqueIdentifier = uniqueIdentifier;
- return this;
- }
-
- /**
- * Get the latestOperationResult property: The details of the latest operation. ex: status, error.
- *
- * @return the latestOperationResult value.
- */
- public LatestOperationResult latestOperationResult() {
- return this.latestOperationResult;
- }
-
- /** {@inheritDoc} */
- @Override
- public GalleryImageInner withLocation(String location) {
- super.withLocation(location);
- return this;
- }
-
- /** {@inheritDoc} */
- @Override
- public GalleryImageInner withTags(Map tags) {
- super.withTags(tags);
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (imageReference() != null) {
- imageReference().validate();
- }
- if (latestOperationResult() != null) {
- latestOperationResult().validate();
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetEnvironmentResponseInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetEnvironmentResponseInner.java
deleted file mode 100644
index 28789ba5f085..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetEnvironmentResponseInner.java
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Immutable;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.EnvironmentDetails;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** Represents the environments details. */
-@Immutable
-public final class GetEnvironmentResponseInner {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(GetEnvironmentResponseInner.class);
-
- /*
- * Details of the environment
- */
- @JsonProperty(value = "environment", access = JsonProperty.Access.WRITE_ONLY)
- private EnvironmentDetails environment;
-
- /**
- * Get the environment property: Details of the environment.
- *
- * @return the environment value.
- */
- public EnvironmentDetails environment() {
- return this.environment;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (environment() != null) {
- environment().validate();
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetPersonalPreferencesResponseInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetPersonalPreferencesResponseInner.java
deleted file mode 100644
index b9fab2fc1405..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetPersonalPreferencesResponseInner.java
+++ /dev/null
@@ -1,77 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.List;
-
-/** Represents the PersonalPreferences for the user. */
-@Fluent
-public final class GetPersonalPreferencesResponseInner {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(GetPersonalPreferencesResponseInner.class);
-
- /*
- * Id to be used by the cache orchestrator
- */
- @JsonProperty(value = "id")
- private String id;
-
- /*
- * Array of favorite lab resource ids
- */
- @JsonProperty(value = "favoriteLabResourceIds")
- private List favoriteLabResourceIds;
-
- /**
- * Get the id property: Id to be used by the cache orchestrator.
- *
- * @return the id value.
- */
- public String id() {
- return this.id;
- }
-
- /**
- * Set the id property: Id to be used by the cache orchestrator.
- *
- * @param id the id value to set.
- * @return the GetPersonalPreferencesResponseInner object itself.
- */
- public GetPersonalPreferencesResponseInner withId(String id) {
- this.id = id;
- return this;
- }
-
- /**
- * Get the favoriteLabResourceIds property: Array of favorite lab resource ids.
- *
- * @return the favoriteLabResourceIds value.
- */
- public List favoriteLabResourceIds() {
- return this.favoriteLabResourceIds;
- }
-
- /**
- * Set the favoriteLabResourceIds property: Array of favorite lab resource ids.
- *
- * @param favoriteLabResourceIds the favoriteLabResourceIds value to set.
- * @return the GetPersonalPreferencesResponseInner object itself.
- */
- public GetPersonalPreferencesResponseInner withFavoriteLabResourceIds(List favoriteLabResourceIds) {
- this.favoriteLabResourceIds = favoriteLabResourceIds;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetRegionalAvailabilityResponseInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetRegionalAvailabilityResponseInner.java
deleted file mode 100644
index 2335fa78ff39..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetRegionalAvailabilityResponseInner.java
+++ /dev/null
@@ -1,56 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.RegionalAvailability;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.List;
-
-/** The response model from the GetRegionalAvailability action. */
-@Fluent
-public final class GetRegionalAvailabilityResponseInner {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(GetRegionalAvailabilityResponseInner.class);
-
- /*
- * Availability information for different size categories per region
- */
- @JsonProperty(value = "regionalAvailability")
- private List regionalAvailability;
-
- /**
- * Get the regionalAvailability property: Availability information for different size categories per region.
- *
- * @return the regionalAvailability value.
- */
- public List regionalAvailability() {
- return this.regionalAvailability;
- }
-
- /**
- * Set the regionalAvailability property: Availability information for different size categories per region.
- *
- * @param regionalAvailability the regionalAvailability value to set.
- * @return the GetRegionalAvailabilityResponseInner object itself.
- */
- public GetRegionalAvailabilityResponseInner withRegionalAvailability(
- List regionalAvailability) {
- this.regionalAvailability = regionalAvailability;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (regionalAvailability() != null) {
- regionalAvailability().forEach(e -> e.validate());
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageInner.java
new file mode 100644
index 000000000000..1b2723e78c59
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageInner.java
@@ -0,0 +1,311 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.labservices.models.EnableState;
+import com.azure.resourcemanager.labservices.models.OsState;
+import com.azure.resourcemanager.labservices.models.OsType;
+import com.azure.resourcemanager.labservices.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Lab services virtual machine image. */
+@JsonFlatten
+@Fluent
+public class ImageInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ImageInner.class);
+
+ /*
+ * Metadata pertaining to creation and last modification of the image.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Is the image enabled
+ */
+ @JsonProperty(value = "properties.enabledState")
+ private EnableState enabledState;
+
+ /*
+ * Current provisioning state of the image.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The image display name.
+ */
+ @JsonProperty(value = "properties.displayName", access = JsonProperty.Access.WRITE_ONLY)
+ private String displayName;
+
+ /*
+ * A description of the image.
+ */
+ @JsonProperty(value = "properties.description", access = JsonProperty.Access.WRITE_ONLY)
+ private String description;
+
+ /*
+ * URL of the image icon.
+ */
+ @JsonProperty(value = "properties.iconUrl", access = JsonProperty.Access.WRITE_ONLY)
+ private String iconUrl;
+
+ /*
+ * The image author.
+ */
+ @JsonProperty(value = "properties.author", access = JsonProperty.Access.WRITE_ONLY)
+ private String author;
+
+ /*
+ * The OS Type of the image.
+ */
+ @JsonProperty(value = "properties.osType", access = JsonProperty.Access.WRITE_ONLY)
+ private OsType osType;
+
+ /*
+ * The ID of marketplace plan associated with the image (optional).
+ */
+ @JsonProperty(value = "properties.plan", access = JsonProperty.Access.WRITE_ONLY)
+ private String plan;
+
+ /*
+ * The status of image terms of use (enabled = accepted, disabled = not
+ * accepted).
+ */
+ @JsonProperty(value = "properties.termsStatus", access = JsonProperty.Access.WRITE_ONLY)
+ private EnableState termsStatus;
+
+ /*
+ * The ID of an offer associated with the image.
+ */
+ @JsonProperty(value = "properties.offer", access = JsonProperty.Access.WRITE_ONLY)
+ private String offer;
+
+ /*
+ * The ID of the publisher of the image.
+ */
+ @JsonProperty(value = "properties.publisher", access = JsonProperty.Access.WRITE_ONLY)
+ private String publisher;
+
+ /*
+ * The image SKU.
+ */
+ @JsonProperty(value = "properties.sku", access = JsonProperty.Access.WRITE_ONLY)
+ private String sku;
+
+ /*
+ * The image version.
+ */
+ @JsonProperty(value = "properties.version", access = JsonProperty.Access.WRITE_ONLY)
+ private String version;
+
+ /*
+ * The ID for the image in the shared gallery.
+ */
+ @JsonProperty(value = "properties.sharedGalleryId", access = JsonProperty.Access.WRITE_ONLY)
+ private String sharedGalleryId;
+
+ /*
+ * The available regions of the image in the shared gallery.
+ */
+ @JsonProperty(value = "properties.availableRegions")
+ private List availableRegions;
+
+ /*
+ * The OS State of the image.
+ */
+ @JsonProperty(value = "properties.osState", access = JsonProperty.Access.WRITE_ONLY)
+ private OsState osState;
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the image.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the enabledState property: Is the image enabled.
+ *
+ * @return the enabledState value.
+ */
+ public EnableState enabledState() {
+ return this.enabledState;
+ }
+
+ /**
+ * Set the enabledState property: Is the image enabled.
+ *
+ * @param enabledState the enabledState value to set.
+ * @return the ImageInner object itself.
+ */
+ public ImageInner withEnabledState(EnableState enabledState) {
+ this.enabledState = enabledState;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the image.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the displayName property: The image display name.
+ *
+ * @return the displayName value.
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Get the description property: A description of the image.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Get the iconUrl property: URL of the image icon.
+ *
+ * @return the iconUrl value.
+ */
+ public String iconUrl() {
+ return this.iconUrl;
+ }
+
+ /**
+ * Get the author property: The image author.
+ *
+ * @return the author value.
+ */
+ public String author() {
+ return this.author;
+ }
+
+ /**
+ * Get the osType property: The OS Type of the image.
+ *
+ * @return the osType value.
+ */
+ public OsType osType() {
+ return this.osType;
+ }
+
+ /**
+ * Get the plan property: The ID of marketplace plan associated with the image (optional).
+ *
+ * @return the plan value.
+ */
+ public String plan() {
+ return this.plan;
+ }
+
+ /**
+ * Get the termsStatus property: The status of image terms of use (enabled = accepted, disabled = not accepted).
+ *
+ * @return the termsStatus value.
+ */
+ public EnableState termsStatus() {
+ return this.termsStatus;
+ }
+
+ /**
+ * Get the offer property: The ID of an offer associated with the image.
+ *
+ * @return the offer value.
+ */
+ public String offer() {
+ return this.offer;
+ }
+
+ /**
+ * Get the publisher property: The ID of the publisher of the image.
+ *
+ * @return the publisher value.
+ */
+ public String publisher() {
+ return this.publisher;
+ }
+
+ /**
+ * Get the sku property: The image SKU.
+ *
+ * @return the sku value.
+ */
+ public String sku() {
+ return this.sku;
+ }
+
+ /**
+ * Get the version property: The image version.
+ *
+ * @return the version value.
+ */
+ public String version() {
+ return this.version;
+ }
+
+ /**
+ * Get the sharedGalleryId property: The ID for the image in the shared gallery.
+ *
+ * @return the sharedGalleryId value.
+ */
+ public String sharedGalleryId() {
+ return this.sharedGalleryId;
+ }
+
+ /**
+ * Get the availableRegions property: The available regions of the image in the shared gallery.
+ *
+ * @return the availableRegions value.
+ */
+ public List availableRegions() {
+ return this.availableRegions;
+ }
+
+ /**
+ * Set the availableRegions property: The available regions of the image in the shared gallery.
+ *
+ * @param availableRegions the availableRegions value to set.
+ * @return the ImageInner object itself.
+ */
+ public ImageInner withAvailableRegions(List availableRegions) {
+ this.availableRegions = availableRegions;
+ return this;
+ }
+
+ /**
+ * Get the osState property: The OS State of the image.
+ *
+ * @return the osState value.
+ */
+ public OsState osState() {
+ return this.osState;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabAccountInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabAccountInner.java
deleted file mode 100644
index 9c34f94743a5..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabAccountInner.java
+++ /dev/null
@@ -1,158 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.annotation.JsonFlatten;
-import com.azure.core.management.Resource;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.LatestOperationResult;
-import com.azure.resourcemanager.labservices.models.SizeConfigurationProperties;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.Map;
-
-/** Represents a lab account. */
-@JsonFlatten
-@Fluent
-public class LabAccountInner extends Resource {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(LabAccountInner.class);
-
- /*
- * Represents the size configuration under the lab account
- */
- @JsonProperty(value = "properties.sizeConfiguration", access = JsonProperty.Access.WRITE_ONLY)
- private SizeConfigurationProperties sizeConfiguration;
-
- /*
- * Represents if region selection is enabled
- */
- @JsonProperty(value = "properties.enabledRegionSelection")
- private Boolean enabledRegionSelection;
-
- /*
- * The provisioning status of the resource.
- */
- @JsonProperty(value = "properties.provisioningState")
- private String provisioningState;
-
- /*
- * The unique immutable identifier of a resource (Guid).
- */
- @JsonProperty(value = "properties.uniqueIdentifier")
- private String uniqueIdentifier;
-
- /*
- * The details of the latest operation. ex: status, error
- */
- @JsonProperty(value = "properties.latestOperationResult", access = JsonProperty.Access.WRITE_ONLY)
- private LatestOperationResult latestOperationResult;
-
- /**
- * Get the sizeConfiguration property: Represents the size configuration under the lab account.
- *
- * @return the sizeConfiguration value.
- */
- public SizeConfigurationProperties sizeConfiguration() {
- return this.sizeConfiguration;
- }
-
- /**
- * Get the enabledRegionSelection property: Represents if region selection is enabled.
- *
- * @return the enabledRegionSelection value.
- */
- public Boolean enabledRegionSelection() {
- return this.enabledRegionSelection;
- }
-
- /**
- * Set the enabledRegionSelection property: Represents if region selection is enabled.
- *
- * @param enabledRegionSelection the enabledRegionSelection value to set.
- * @return the LabAccountInner object itself.
- */
- public LabAccountInner withEnabledRegionSelection(Boolean enabledRegionSelection) {
- this.enabledRegionSelection = enabledRegionSelection;
- return this;
- }
-
- /**
- * Get the provisioningState property: The provisioning status of the resource.
- *
- * @return the provisioningState value.
- */
- public String provisioningState() {
- return this.provisioningState;
- }
-
- /**
- * Set the provisioningState property: The provisioning status of the resource.
- *
- * @param provisioningState the provisioningState value to set.
- * @return the LabAccountInner object itself.
- */
- public LabAccountInner withProvisioningState(String provisioningState) {
- this.provisioningState = provisioningState;
- return this;
- }
-
- /**
- * Get the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
- *
- * @return the uniqueIdentifier value.
- */
- public String uniqueIdentifier() {
- return this.uniqueIdentifier;
- }
-
- /**
- * Set the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
- *
- * @param uniqueIdentifier the uniqueIdentifier value to set.
- * @return the LabAccountInner object itself.
- */
- public LabAccountInner withUniqueIdentifier(String uniqueIdentifier) {
- this.uniqueIdentifier = uniqueIdentifier;
- return this;
- }
-
- /**
- * Get the latestOperationResult property: The details of the latest operation. ex: status, error.
- *
- * @return the latestOperationResult value.
- */
- public LatestOperationResult latestOperationResult() {
- return this.latestOperationResult;
- }
-
- /** {@inheritDoc} */
- @Override
- public LabAccountInner withLocation(String location) {
- super.withLocation(location);
- return this;
- }
-
- /** {@inheritDoc} */
- @Override
- public LabAccountInner withTags(Map tags) {
- super.withTags(tags);
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (sizeConfiguration() != null) {
- sizeConfiguration().validate();
- }
- if (latestOperationResult() != null) {
- latestOperationResult().validate();
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabInner.java
index 2a9583295228..4a69f835e7df 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabInner.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabInner.java
@@ -7,240 +7,319 @@
import com.azure.core.annotation.Fluent;
import com.azure.core.annotation.JsonFlatten;
import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.LabUserAccessMode;
-import com.azure.resourcemanager.labservices.models.LatestOperationResult;
+import com.azure.resourcemanager.labservices.models.AutoShutdownProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionProfile;
+import com.azure.resourcemanager.labservices.models.LabNetworkProfile;
+import com.azure.resourcemanager.labservices.models.LabState;
+import com.azure.resourcemanager.labservices.models.ProvisioningState;
+import com.azure.resourcemanager.labservices.models.RosterProfile;
+import com.azure.resourcemanager.labservices.models.SecurityProfile;
+import com.azure.resourcemanager.labservices.models.VirtualMachineProfile;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
-import java.time.Duration;
-import java.time.OffsetDateTime;
import java.util.Map;
-/** Represents a lab. */
+/** The lab resource. */
@JsonFlatten
@Fluent
public class LabInner extends Resource {
@JsonIgnore private final ClientLogger logger = new ClientLogger(LabInner.class);
/*
- * Maximum number of users allowed in the lab.
+ * Metadata pertaining to creation and last modification of the lab.
*/
- @JsonProperty(value = "properties.maxUsersInLab")
- private Integer maxUsersInLab;
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
/*
- * Maximum value MaxUsersInLab can be set to, as specified by the service
+ * The resource auto shutdown configuration for the lab. This controls
+ * whether actions are taken on resources that are sitting idle.
*/
- @JsonProperty(value = "properties.userQuota", access = JsonProperty.Access.WRITE_ONLY)
- private Integer userQuota;
+ @JsonProperty(value = "properties.autoShutdownProfile")
+ private AutoShutdownProfile autoShutdownProfile;
/*
- * Invitation code that users can use to join a lab.
+ * The connection profile for the lab. This controls settings such as web
+ * access to lab resources or whether RDP or SSH ports are open.
*/
- @JsonProperty(value = "properties.invitationCode", access = JsonProperty.Access.WRITE_ONLY)
- private String invitationCode;
+ @JsonProperty(value = "properties.connectionProfile")
+ private ConnectionProfile connectionProfile;
/*
- * Object id of the user that created the lab.
+ * The profile used for creating lab virtual machines.
*/
- @JsonProperty(value = "properties.createdByObjectId", access = JsonProperty.Access.WRITE_ONLY)
- private String createdByObjectId;
+ @JsonProperty(value = "properties.virtualMachineProfile")
+ private VirtualMachineProfile virtualMachineProfile;
/*
- * Maximum duration a user can use an environment for in the lab.
+ * The lab security profile.
*/
- @JsonProperty(value = "properties.usageQuota")
- private Duration usageQuota;
+ @JsonProperty(value = "properties.securityProfile")
+ private SecurityProfile securityProfile;
/*
- * Lab user access mode (open to all vs. restricted to those listed on the
- * lab).
+ * The lab user list management profile.
*/
- @JsonProperty(value = "properties.userAccessMode")
- private LabUserAccessMode userAccessMode;
+ @JsonProperty(value = "properties.rosterProfile")
+ private RosterProfile rosterProfile;
/*
- * Lab creator name
+ * The ID of the lab plan. Used during resource creation to provide
+ * defaults and acts as a permission container when creating a lab via
+ * labs.azure.com. Setting a labPlanId on an existing lab provides
+ * organization..
*/
- @JsonProperty(value = "properties.createdByUserPrincipalName", access = JsonProperty.Access.WRITE_ONLY)
- private String createdByUserPrincipalName;
+ @JsonProperty(value = "properties.labPlanId")
+ private String labPlanId;
/*
- * Creation date for the lab
+ * The title of the lab.
*/
- @JsonProperty(value = "properties.createdDate", access = JsonProperty.Access.WRITE_ONLY)
- private OffsetDateTime createdDate;
+ @JsonProperty(value = "properties.title")
+ private String title;
/*
- * The provisioning status of the resource.
+ * The description of the lab.
*/
- @JsonProperty(value = "properties.provisioningState")
- private String provisioningState;
+ @JsonProperty(value = "properties.description")
+ private String description;
/*
- * The unique immutable identifier of a resource (Guid).
+ * Current provisioning state of the lab.
*/
- @JsonProperty(value = "properties.uniqueIdentifier")
- private String uniqueIdentifier;
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
/*
- * The details of the latest operation. ex: status, error
+ * The network profile for the lab, typically applied via a lab plan. This
+ * profile cannot be modified once a lab has been created.
*/
- @JsonProperty(value = "properties.latestOperationResult", access = JsonProperty.Access.WRITE_ONLY)
- private LatestOperationResult latestOperationResult;
+ @JsonProperty(value = "properties.networkProfile")
+ private LabNetworkProfile networkProfile;
+
+ /*
+ * The lab state.
+ */
+ @JsonProperty(value = "properties.state", access = JsonProperty.Access.WRITE_ONLY)
+ private LabState state;
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the lab.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
/**
- * Get the maxUsersInLab property: Maximum number of users allowed in the lab.
+ * Get the autoShutdownProfile property: The resource auto shutdown configuration for the lab. This controls whether
+ * actions are taken on resources that are sitting idle.
*
- * @return the maxUsersInLab value.
+ * @return the autoShutdownProfile value.
*/
- public Integer maxUsersInLab() {
- return this.maxUsersInLab;
+ public AutoShutdownProfile autoShutdownProfile() {
+ return this.autoShutdownProfile;
}
/**
- * Set the maxUsersInLab property: Maximum number of users allowed in the lab.
+ * Set the autoShutdownProfile property: The resource auto shutdown configuration for the lab. This controls whether
+ * actions are taken on resources that are sitting idle.
*
- * @param maxUsersInLab the maxUsersInLab value to set.
+ * @param autoShutdownProfile the autoShutdownProfile value to set.
* @return the LabInner object itself.
*/
- public LabInner withMaxUsersInLab(Integer maxUsersInLab) {
- this.maxUsersInLab = maxUsersInLab;
+ public LabInner withAutoShutdownProfile(AutoShutdownProfile autoShutdownProfile) {
+ this.autoShutdownProfile = autoShutdownProfile;
return this;
}
/**
- * Get the userQuota property: Maximum value MaxUsersInLab can be set to, as specified by the service.
+ * Get the connectionProfile property: The connection profile for the lab. This controls settings such as web access
+ * to lab resources or whether RDP or SSH ports are open.
*
- * @return the userQuota value.
+ * @return the connectionProfile value.
*/
- public Integer userQuota() {
- return this.userQuota;
+ public ConnectionProfile connectionProfile() {
+ return this.connectionProfile;
}
/**
- * Get the invitationCode property: Invitation code that users can use to join a lab.
+ * Set the connectionProfile property: The connection profile for the lab. This controls settings such as web access
+ * to lab resources or whether RDP or SSH ports are open.
*
- * @return the invitationCode value.
+ * @param connectionProfile the connectionProfile value to set.
+ * @return the LabInner object itself.
*/
- public String invitationCode() {
- return this.invitationCode;
+ public LabInner withConnectionProfile(ConnectionProfile connectionProfile) {
+ this.connectionProfile = connectionProfile;
+ return this;
}
/**
- * Get the createdByObjectId property: Object id of the user that created the lab.
+ * Get the virtualMachineProfile property: The profile used for creating lab virtual machines.
*
- * @return the createdByObjectId value.
+ * @return the virtualMachineProfile value.
*/
- public String createdByObjectId() {
- return this.createdByObjectId;
+ public VirtualMachineProfile virtualMachineProfile() {
+ return this.virtualMachineProfile;
}
/**
- * Get the usageQuota property: Maximum duration a user can use an environment for in the lab.
+ * Set the virtualMachineProfile property: The profile used for creating lab virtual machines.
*
- * @return the usageQuota value.
+ * @param virtualMachineProfile the virtualMachineProfile value to set.
+ * @return the LabInner object itself.
*/
- public Duration usageQuota() {
- return this.usageQuota;
+ public LabInner withVirtualMachineProfile(VirtualMachineProfile virtualMachineProfile) {
+ this.virtualMachineProfile = virtualMachineProfile;
+ return this;
}
/**
- * Set the usageQuota property: Maximum duration a user can use an environment for in the lab.
+ * Get the securityProfile property: The lab security profile.
*
- * @param usageQuota the usageQuota value to set.
+ * @return the securityProfile value.
+ */
+ public SecurityProfile securityProfile() {
+ return this.securityProfile;
+ }
+
+ /**
+ * Set the securityProfile property: The lab security profile.
+ *
+ * @param securityProfile the securityProfile value to set.
* @return the LabInner object itself.
*/
- public LabInner withUsageQuota(Duration usageQuota) {
- this.usageQuota = usageQuota;
+ public LabInner withSecurityProfile(SecurityProfile securityProfile) {
+ this.securityProfile = securityProfile;
return this;
}
/**
- * Get the userAccessMode property: Lab user access mode (open to all vs. restricted to those listed on the lab).
+ * Get the rosterProfile property: The lab user list management profile.
*
- * @return the userAccessMode value.
+ * @return the rosterProfile value.
*/
- public LabUserAccessMode userAccessMode() {
- return this.userAccessMode;
+ public RosterProfile rosterProfile() {
+ return this.rosterProfile;
}
/**
- * Set the userAccessMode property: Lab user access mode (open to all vs. restricted to those listed on the lab).
+ * Set the rosterProfile property: The lab user list management profile.
*
- * @param userAccessMode the userAccessMode value to set.
+ * @param rosterProfile the rosterProfile value to set.
* @return the LabInner object itself.
*/
- public LabInner withUserAccessMode(LabUserAccessMode userAccessMode) {
- this.userAccessMode = userAccessMode;
+ public LabInner withRosterProfile(RosterProfile rosterProfile) {
+ this.rosterProfile = rosterProfile;
return this;
}
/**
- * Get the createdByUserPrincipalName property: Lab creator name.
+ * Get the labPlanId property: The ID of the lab plan. Used during resource creation to provide defaults and acts as
+ * a permission container when creating a lab via labs.azure.com. Setting a labPlanId on an existing lab provides
+ * organization..
*
- * @return the createdByUserPrincipalName value.
+ * @return the labPlanId value.
*/
- public String createdByUserPrincipalName() {
- return this.createdByUserPrincipalName;
+ public String labPlanId() {
+ return this.labPlanId;
}
/**
- * Get the createdDate property: Creation date for the lab.
+ * Set the labPlanId property: The ID of the lab plan. Used during resource creation to provide defaults and acts as
+ * a permission container when creating a lab via labs.azure.com. Setting a labPlanId on an existing lab provides
+ * organization..
*
- * @return the createdDate value.
+ * @param labPlanId the labPlanId value to set.
+ * @return the LabInner object itself.
*/
- public OffsetDateTime createdDate() {
- return this.createdDate;
+ public LabInner withLabPlanId(String labPlanId) {
+ this.labPlanId = labPlanId;
+ return this;
}
/**
- * Get the provisioningState property: The provisioning status of the resource.
+ * Get the title property: The title of the lab.
*
- * @return the provisioningState value.
+ * @return the title value.
*/
- public String provisioningState() {
- return this.provisioningState;
+ public String title() {
+ return this.title;
}
/**
- * Set the provisioningState property: The provisioning status of the resource.
+ * Set the title property: The title of the lab.
*
- * @param provisioningState the provisioningState value to set.
+ * @param title the title value to set.
* @return the LabInner object itself.
*/
- public LabInner withProvisioningState(String provisioningState) {
- this.provisioningState = provisioningState;
+ public LabInner withTitle(String title) {
+ this.title = title;
return this;
}
/**
- * Get the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
+ * Get the description property: The description of the lab.
*
- * @return the uniqueIdentifier value.
+ * @return the description value.
*/
- public String uniqueIdentifier() {
- return this.uniqueIdentifier;
+ public String description() {
+ return this.description;
}
/**
- * Set the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
+ * Set the description property: The description of the lab.
*
- * @param uniqueIdentifier the uniqueIdentifier value to set.
+ * @param description the description value to set.
* @return the LabInner object itself.
*/
- public LabInner withUniqueIdentifier(String uniqueIdentifier) {
- this.uniqueIdentifier = uniqueIdentifier;
+ public LabInner withDescription(String description) {
+ this.description = description;
return this;
}
/**
- * Get the latestOperationResult property: The details of the latest operation. ex: status, error.
+ * Get the provisioningState property: Current provisioning state of the lab.
*
- * @return the latestOperationResult value.
+ * @return the provisioningState value.
*/
- public LatestOperationResult latestOperationResult() {
- return this.latestOperationResult;
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the networkProfile property: The network profile for the lab, typically applied via a lab plan. This profile
+ * cannot be modified once a lab has been created.
+ *
+ * @return the networkProfile value.
+ */
+ public LabNetworkProfile networkProfile() {
+ return this.networkProfile;
+ }
+
+ /**
+ * Set the networkProfile property: The network profile for the lab, typically applied via a lab plan. This profile
+ * cannot be modified once a lab has been created.
+ *
+ * @param networkProfile the networkProfile value to set.
+ * @return the LabInner object itself.
+ */
+ public LabInner withNetworkProfile(LabNetworkProfile networkProfile) {
+ this.networkProfile = networkProfile;
+ return this;
+ }
+
+ /**
+ * Get the state property: The lab state.
+ *
+ * @return the state value.
+ */
+ public LabState state() {
+ return this.state;
}
/** {@inheritDoc} */
@@ -263,8 +342,23 @@ public LabInner withTags(Map tags) {
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
- if (latestOperationResult() != null) {
- latestOperationResult().validate();
+ if (autoShutdownProfile() != null) {
+ autoShutdownProfile().validate();
+ }
+ if (connectionProfile() != null) {
+ connectionProfile().validate();
+ }
+ if (virtualMachineProfile() != null) {
+ virtualMachineProfile().validate();
+ }
+ if (securityProfile() != null) {
+ securityProfile().validate();
+ }
+ if (rosterProfile() != null) {
+ rosterProfile().validate();
+ }
+ if (networkProfile() != null) {
+ networkProfile().validate();
}
}
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanInner.java
new file mode 100644
index 000000000000..02ed0d79faa6
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanInner.java
@@ -0,0 +1,300 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.labservices.models.AutoShutdownProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionProfile;
+import com.azure.resourcemanager.labservices.models.LabPlanNetworkProfile;
+import com.azure.resourcemanager.labservices.models.ProvisioningState;
+import com.azure.resourcemanager.labservices.models.SupportInfo;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Lab Plans act as a permission container for creating labs via labs.azure.com. Additionally, they can provide a set of
+ * default configurations that will apply at the time of creating a lab, but these defaults can still be overwritten.
+ */
+@JsonFlatten
+@Fluent
+public class LabPlanInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(LabPlanInner.class);
+
+ /*
+ * Metadata pertaining to creation and last modification of the lab plan.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * The default lab connection profile. This can be changed on a lab
+ * resource and only provides a default profile.
+ */
+ @JsonProperty(value = "properties.defaultConnectionProfile")
+ private ConnectionProfile defaultConnectionProfile;
+
+ /*
+ * The default lab shutdown profile. This can be changed on a lab resource
+ * and only provides a default profile.
+ */
+ @JsonProperty(value = "properties.defaultAutoShutdownProfile")
+ private AutoShutdownProfile defaultAutoShutdownProfile;
+
+ /*
+ * The lab plan network profile. To enforce lab network policies they must
+ * be defined here and cannot be changed when there are existing labs
+ * associated with this lab plan.
+ */
+ @JsonProperty(value = "properties.defaultNetworkProfile")
+ private LabPlanNetworkProfile defaultNetworkProfile;
+
+ /*
+ * The allowed regions for the lab creator to use when creating labs using
+ * this lab plan.
+ */
+ @JsonProperty(value = "properties.allowedRegions")
+ private List allowedRegions;
+
+ /*
+ * Resource ID of the Shared Image Gallery attached to this lab plan. When
+ * saving a lab template virtual machine image it will be persisted in this
+ * gallery. Shared images from the gallery can be made available to use
+ * when creating new labs.
+ */
+ @JsonProperty(value = "properties.sharedGalleryId")
+ private String sharedGalleryId;
+
+ /*
+ * Support contact information and instructions for users of the lab plan.
+ * This information is displayed to lab owners and virtual machine users
+ * for all labs in the lab plan.
+ */
+ @JsonProperty(value = "properties.supportInfo")
+ private SupportInfo supportInfo;
+
+ /*
+ * Base Url of the lms instance this lab plan can link lab rosters against.
+ */
+ @JsonProperty(value = "properties.linkedLmsInstance")
+ private String linkedLmsInstance;
+
+ /*
+ * Current provisioning state of the lab plan.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the lab plan.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the defaultConnectionProfile property: The default lab connection profile. This can be changed on a lab
+ * resource and only provides a default profile.
+ *
+ * @return the defaultConnectionProfile value.
+ */
+ public ConnectionProfile defaultConnectionProfile() {
+ return this.defaultConnectionProfile;
+ }
+
+ /**
+ * Set the defaultConnectionProfile property: The default lab connection profile. This can be changed on a lab
+ * resource and only provides a default profile.
+ *
+ * @param defaultConnectionProfile the defaultConnectionProfile value to set.
+ * @return the LabPlanInner object itself.
+ */
+ public LabPlanInner withDefaultConnectionProfile(ConnectionProfile defaultConnectionProfile) {
+ this.defaultConnectionProfile = defaultConnectionProfile;
+ return this;
+ }
+
+ /**
+ * Get the defaultAutoShutdownProfile property: The default lab shutdown profile. This can be changed on a lab
+ * resource and only provides a default profile.
+ *
+ * @return the defaultAutoShutdownProfile value.
+ */
+ public AutoShutdownProfile defaultAutoShutdownProfile() {
+ return this.defaultAutoShutdownProfile;
+ }
+
+ /**
+ * Set the defaultAutoShutdownProfile property: The default lab shutdown profile. This can be changed on a lab
+ * resource and only provides a default profile.
+ *
+ * @param defaultAutoShutdownProfile the defaultAutoShutdownProfile value to set.
+ * @return the LabPlanInner object itself.
+ */
+ public LabPlanInner withDefaultAutoShutdownProfile(AutoShutdownProfile defaultAutoShutdownProfile) {
+ this.defaultAutoShutdownProfile = defaultAutoShutdownProfile;
+ return this;
+ }
+
+ /**
+ * Get the defaultNetworkProfile property: The lab plan network profile. To enforce lab network policies they must
+ * be defined here and cannot be changed when there are existing labs associated with this lab plan.
+ *
+ * @return the defaultNetworkProfile value.
+ */
+ public LabPlanNetworkProfile defaultNetworkProfile() {
+ return this.defaultNetworkProfile;
+ }
+
+ /**
+ * Set the defaultNetworkProfile property: The lab plan network profile. To enforce lab network policies they must
+ * be defined here and cannot be changed when there are existing labs associated with this lab plan.
+ *
+ * @param defaultNetworkProfile the defaultNetworkProfile value to set.
+ * @return the LabPlanInner object itself.
+ */
+ public LabPlanInner withDefaultNetworkProfile(LabPlanNetworkProfile defaultNetworkProfile) {
+ this.defaultNetworkProfile = defaultNetworkProfile;
+ return this;
+ }
+
+ /**
+ * Get the allowedRegions property: The allowed regions for the lab creator to use when creating labs using this lab
+ * plan.
+ *
+ * @return the allowedRegions value.
+ */
+ public List allowedRegions() {
+ return this.allowedRegions;
+ }
+
+ /**
+ * Set the allowedRegions property: The allowed regions for the lab creator to use when creating labs using this lab
+ * plan.
+ *
+ * @param allowedRegions the allowedRegions value to set.
+ * @return the LabPlanInner object itself.
+ */
+ public LabPlanInner withAllowedRegions(List allowedRegions) {
+ this.allowedRegions = allowedRegions;
+ return this;
+ }
+
+ /**
+ * Get the sharedGalleryId property: Resource ID of the Shared Image Gallery attached to this lab plan. When saving
+ * a lab template virtual machine image it will be persisted in this gallery. Shared images from the gallery can be
+ * made available to use when creating new labs.
+ *
+ * @return the sharedGalleryId value.
+ */
+ public String sharedGalleryId() {
+ return this.sharedGalleryId;
+ }
+
+ /**
+ * Set the sharedGalleryId property: Resource ID of the Shared Image Gallery attached to this lab plan. When saving
+ * a lab template virtual machine image it will be persisted in this gallery. Shared images from the gallery can be
+ * made available to use when creating new labs.
+ *
+ * @param sharedGalleryId the sharedGalleryId value to set.
+ * @return the LabPlanInner object itself.
+ */
+ public LabPlanInner withSharedGalleryId(String sharedGalleryId) {
+ this.sharedGalleryId = sharedGalleryId;
+ return this;
+ }
+
+ /**
+ * Get the supportInfo property: Support contact information and instructions for users of the lab plan. This
+ * information is displayed to lab owners and virtual machine users for all labs in the lab plan.
+ *
+ * @return the supportInfo value.
+ */
+ public SupportInfo supportInfo() {
+ return this.supportInfo;
+ }
+
+ /**
+ * Set the supportInfo property: Support contact information and instructions for users of the lab plan. This
+ * information is displayed to lab owners and virtual machine users for all labs in the lab plan.
+ *
+ * @param supportInfo the supportInfo value to set.
+ * @return the LabPlanInner object itself.
+ */
+ public LabPlanInner withSupportInfo(SupportInfo supportInfo) {
+ this.supportInfo = supportInfo;
+ return this;
+ }
+
+ /**
+ * Get the linkedLmsInstance property: Base Url of the lms instance this lab plan can link lab rosters against.
+ *
+ * @return the linkedLmsInstance value.
+ */
+ public String linkedLmsInstance() {
+ return this.linkedLmsInstance;
+ }
+
+ /**
+ * Set the linkedLmsInstance property: Base Url of the lms instance this lab plan can link lab rosters against.
+ *
+ * @param linkedLmsInstance the linkedLmsInstance value to set.
+ * @return the LabPlanInner object itself.
+ */
+ public LabPlanInner withLinkedLmsInstance(String linkedLmsInstance) {
+ this.linkedLmsInstance = linkedLmsInstance;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the lab plan.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (defaultConnectionProfile() != null) {
+ defaultConnectionProfile().validate();
+ }
+ if (defaultAutoShutdownProfile() != null) {
+ defaultAutoShutdownProfile().validate();
+ }
+ if (defaultNetworkProfile() != null) {
+ defaultNetworkProfile().validate();
+ }
+ if (supportInfo() != null) {
+ supportInfo().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ListEnvironmentsResponseInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ListEnvironmentsResponseInner.java
deleted file mode 100644
index d3961b1e8f43..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ListEnvironmentsResponseInner.java
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.EnvironmentDetails;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.List;
-
-/** Represents the list of environments owned by a user. */
-@Fluent
-public final class ListEnvironmentsResponseInner {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(ListEnvironmentsResponseInner.class);
-
- /*
- * List of all the environments
- */
- @JsonProperty(value = "environments")
- private List environments;
-
- /**
- * Get the environments property: List of all the environments.
- *
- * @return the environments value.
- */
- public List environments() {
- return this.environments;
- }
-
- /**
- * Set the environments property: List of all the environments.
- *
- * @param environments the environments value to set.
- * @return the ListEnvironmentsResponseInner object itself.
- */
- public ListEnvironmentsResponseInner withEnvironments(List environments) {
- this.environments = environments;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (environments() != null) {
- environments().forEach(e -> e.validate());
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ListLabsResponseInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ListLabsResponseInner.java
deleted file mode 100644
index ed1bc3a07f99..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ListLabsResponseInner.java
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.LabDetails;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.List;
-
-/** Lists the labs owned by a user. */
-@Fluent
-public final class ListLabsResponseInner {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(ListLabsResponseInner.class);
-
- /*
- * List of all the labs
- */
- @JsonProperty(value = "labs")
- private List labs;
-
- /**
- * Get the labs property: List of all the labs.
- *
- * @return the labs value.
- */
- public List labs() {
- return this.labs;
- }
-
- /**
- * Set the labs property: List of all the labs.
- *
- * @param labs the labs value to set.
- * @return the ListLabsResponseInner object itself.
- */
- public ListLabsResponseInner withLabs(List labs) {
- this.labs = labs;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (labs() != null) {
- labs().forEach(e -> e.validate());
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationBatchStatusResponseInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationBatchStatusResponseInner.java
deleted file mode 100644
index 32ca741cf67d..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationBatchStatusResponseInner.java
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Immutable;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.OperationBatchStatusResponseItem;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.List;
-
-/** Status Details of the long running operation for an environment. */
-@Immutable
-public final class OperationBatchStatusResponseInner {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationBatchStatusResponseInner.class);
-
- /*
- * Gets a collection of items that contain the operation url and status.
- */
- @JsonProperty(value = "items", access = JsonProperty.Access.WRITE_ONLY)
- private List items;
-
- /**
- * Get the items property: Gets a collection of items that contain the operation url and status.
- *
- * @return the items value.
- */
- public List items() {
- return this.items;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (items() != null) {
- items().forEach(e -> e.validate());
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationInner.java
new file mode 100644
index 000000000000..6ed316ad2457
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationInner.java
@@ -0,0 +1,125 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.labservices.models.ActionType;
+import com.azure.resourcemanager.labservices.models.OperationDisplay;
+import com.azure.resourcemanager.labservices.models.Origin;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** REST API Operation Details of a REST API operation, returned from the Resource Provider Operations API. */
+@Fluent
+public final class OperationInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationInner.class);
+
+ /*
+ * The name of the operation, as per Resource-Based Access Control (RBAC).
+ * Examples: "Microsoft.Compute/virtualMachines/write",
+ * "Microsoft.Compute/virtualMachines/capture/action"
+ */
+ @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /*
+ * Whether the operation applies to data-plane. This is "true" for
+ * data-plane operations and "false" for ARM/control-plane operations.
+ */
+ @JsonProperty(value = "isDataAction", access = JsonProperty.Access.WRITE_ONLY)
+ private Boolean isDataAction;
+
+ /*
+ * Localized display information for this particular operation.
+ */
+ @JsonProperty(value = "display")
+ private OperationDisplay display;
+
+ /*
+ * The intended executor of the operation; as in Resource Based Access
+ * Control (RBAC) and audit logs UX. Default value is "user,system"
+ */
+ @JsonProperty(value = "origin", access = JsonProperty.Access.WRITE_ONLY)
+ private Origin origin;
+
+ /*
+ * Enum. Indicates the action type. "Internal" refers to actions that are
+ * for internal only APIs.
+ */
+ @JsonProperty(value = "actionType", access = JsonProperty.Access.WRITE_ONLY)
+ private ActionType actionType;
+
+ /**
+ * Get the name property: The name of the operation, as per Resource-Based Access Control (RBAC). Examples:
+ * "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action".
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the isDataAction property: Whether the operation applies to data-plane. This is "true" for data-plane
+ * operations and "false" for ARM/control-plane operations.
+ *
+ * @return the isDataAction value.
+ */
+ public Boolean isDataAction() {
+ return this.isDataAction;
+ }
+
+ /**
+ * Get the display property: Localized display information for this particular operation.
+ *
+ * @return the display value.
+ */
+ public OperationDisplay display() {
+ return this.display;
+ }
+
+ /**
+ * Set the display property: Localized display information for this particular operation.
+ *
+ * @param display the display value to set.
+ * @return the OperationInner object itself.
+ */
+ public OperationInner withDisplay(OperationDisplay display) {
+ this.display = display;
+ return this;
+ }
+
+ /**
+ * Get the origin property: The intended executor of the operation; as in Resource Based Access Control (RBAC) and
+ * audit logs UX. Default value is "user,system".
+ *
+ * @return the origin value.
+ */
+ public Origin origin() {
+ return this.origin;
+ }
+
+ /**
+ * Get the actionType property: Enum. Indicates the action type. "Internal" refers to actions that are for internal
+ * only APIs.
+ *
+ * @return the actionType value.
+ */
+ public ActionType actionType() {
+ return this.actionType;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (display() != null) {
+ display().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationMetadataInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationMetadataInner.java
deleted file mode 100644
index 2e15ebffd10c..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationMetadataInner.java
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.OperationMetadataDisplay;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** The REST API operation supported by ManagedLab ResourceProvider. */
-@Fluent
-public final class OperationMetadataInner {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationMetadataInner.class);
-
- /*
- * Operation name: {provider}/{resource}/{operation}
- */
- @JsonProperty(value = "name")
- private String name;
-
- /*
- * The object that describes the operations
- */
- @JsonProperty(value = "display")
- private OperationMetadataDisplay display;
-
- /**
- * Get the name property: Operation name: {provider}/{resource}/{operation}.
- *
- * @return the name value.
- */
- public String name() {
- return this.name;
- }
-
- /**
- * Set the name property: Operation name: {provider}/{resource}/{operation}.
- *
- * @param name the name value to set.
- * @return the OperationMetadataInner object itself.
- */
- public OperationMetadataInner withName(String name) {
- this.name = name;
- return this;
- }
-
- /**
- * Get the display property: The object that describes the operations.
- *
- * @return the display value.
- */
- public OperationMetadataDisplay display() {
- return this.display;
- }
-
- /**
- * Set the display property: The object that describes the operations.
- *
- * @param display the display value to set.
- * @return the OperationMetadataInner object itself.
- */
- public OperationMetadataInner withDisplay(OperationMetadataDisplay display) {
- this.display = display;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (display() != null) {
- display().validate();
- }
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationResultInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationResultInner.java
index 7041c69f0052..f87735fbf465 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationResultInner.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationResultInner.java
@@ -5,34 +5,86 @@
package com.azure.resourcemanager.labservices.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.labservices.models.OperationError;
+import com.azure.resourcemanager.labservices.models.OperationStatus;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
-/** An Operation Result. */
+/** A long running operation result. */
@Fluent
public final class OperationResultInner {
@JsonIgnore private final ClientLogger logger = new ClientLogger(OperationResultInner.class);
/*
- * The operation status.
+ * Fully qualified resource ID for the resource. Ex -
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
*/
- @JsonProperty(value = "status")
- private String status;
+ @JsonProperty(value = "id", access = JsonProperty.Access.WRITE_ONLY)
+ private String id;
/*
- * Error details for the operation in case of a failure.
+ * The name of the resource
+ */
+ @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /*
+ * The operation status
+ */
+ @JsonProperty(value = "status", required = true)
+ private OperationStatus status;
+
+ /*
+ * Start time
+ */
+ @JsonProperty(value = "startTime")
+ private OffsetDateTime startTime;
+
+ /*
+ * End time
+ */
+ @JsonProperty(value = "endTime")
+ private OffsetDateTime endTime;
+
+ /*
+ * Percent completion
+ */
+ @JsonProperty(value = "percentComplete")
+ private Float percentComplete;
+
+ /*
+ * The error for a failure if the operation failed.
*/
@JsonProperty(value = "error")
- private OperationError error;
+ private ManagementError error;
+
+ /**
+ * Get the id property: Fully qualified resource ID for the resource. Ex -
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
+ *
+ * @return the id value.
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
/**
* Get the status property: The operation status.
*
* @return the status value.
*/
- public String status() {
+ public OperationStatus status() {
return this.status;
}
@@ -42,27 +94,87 @@ public String status() {
* @param status the status value to set.
* @return the OperationResultInner object itself.
*/
- public OperationResultInner withStatus(String status) {
+ public OperationResultInner withStatus(OperationStatus status) {
this.status = status;
return this;
}
/**
- * Get the error property: Error details for the operation in case of a failure.
+ * Get the startTime property: Start time.
+ *
+ * @return the startTime value.
+ */
+ public OffsetDateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Set the startTime property: Start time.
+ *
+ * @param startTime the startTime value to set.
+ * @return the OperationResultInner object itself.
+ */
+ public OperationResultInner withStartTime(OffsetDateTime startTime) {
+ this.startTime = startTime;
+ return this;
+ }
+
+ /**
+ * Get the endTime property: End time.
+ *
+ * @return the endTime value.
+ */
+ public OffsetDateTime endTime() {
+ return this.endTime;
+ }
+
+ /**
+ * Set the endTime property: End time.
+ *
+ * @param endTime the endTime value to set.
+ * @return the OperationResultInner object itself.
+ */
+ public OperationResultInner withEndTime(OffsetDateTime endTime) {
+ this.endTime = endTime;
+ return this;
+ }
+
+ /**
+ * Get the percentComplete property: Percent completion.
+ *
+ * @return the percentComplete value.
+ */
+ public Float percentComplete() {
+ return this.percentComplete;
+ }
+
+ /**
+ * Set the percentComplete property: Percent completion.
+ *
+ * @param percentComplete the percentComplete value to set.
+ * @return the OperationResultInner object itself.
+ */
+ public OperationResultInner withPercentComplete(Float percentComplete) {
+ this.percentComplete = percentComplete;
+ return this;
+ }
+
+ /**
+ * Get the error property: The error for a failure if the operation failed.
*
* @return the error value.
*/
- public OperationError error() {
+ public ManagementError error() {
return this.error;
}
/**
- * Set the error property: Error details for the operation in case of a failure.
+ * Set the error property: The error for a failure if the operation failed.
*
* @param error the error value to set.
* @return the OperationResultInner object itself.
*/
- public OperationResultInner withError(OperationError error) {
+ public OperationResultInner withError(ManagementError error) {
this.error = error;
return this;
}
@@ -73,8 +185,10 @@ public OperationResultInner withError(OperationError error) {
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
- if (error() != null) {
- error().validate();
+ if (status() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property status in model OperationResultInner"));
}
}
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationStatusResponseInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationStatusResponseInner.java
deleted file mode 100644
index 92c298cb2704..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationStatusResponseInner.java
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.fluent.models;
-
-import com.azure.core.annotation.Immutable;
-import com.azure.core.util.logging.ClientLogger;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** Status Details of the long running operation for an environment. */
-@Immutable
-public final class OperationStatusResponseInner {
- @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationStatusResponseInner.class);
-
- /*
- * status of the long running operation for an environment
- */
- @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
- private String status;
-
- /**
- * Get the status property: status of the long running operation for an environment.
- *
- * @return the status value.
- */
- public String status() {
- return this.status;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleInner.java
new file mode 100644
index 000000000000..6acbfae5efb6
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleInner.java
@@ -0,0 +1,200 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.labservices.models.ProvisioningState;
+import com.azure.resourcemanager.labservices.models.RecurrencePattern;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Schedule for automatically turning virtual machines in a lab on and off at specified times. */
+@JsonFlatten
+@Fluent
+public class ScheduleInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ScheduleInner.class);
+
+ /*
+ * Metadata pertaining to creation and last modification of the schedule.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * When lab user virtual machines will be started. Timestamp offsets will
+ * be ignored and timeZoneId is used instead.
+ */
+ @JsonProperty(value = "properties.startAt")
+ private OffsetDateTime startAt;
+
+ /*
+ * When lab user virtual machines will be stopped. Timestamp offsets will
+ * be ignored and timeZoneId is used instead.
+ */
+ @JsonProperty(value = "properties.stopAt")
+ private OffsetDateTime stopAt;
+
+ /*
+ * The recurrence pattern of the scheduled actions.
+ */
+ @JsonProperty(value = "properties.recurrencePattern")
+ private RecurrencePattern recurrencePattern;
+
+ /*
+ * The IANA timezone id for the schedule.
+ */
+ @JsonProperty(value = "properties.timeZoneId")
+ private String timeZoneId;
+
+ /*
+ * Notes for this schedule.
+ */
+ @JsonProperty(value = "properties.notes")
+ private String notes;
+
+ /*
+ * Current provisioning state of the schedule.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the schedule.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the startAt property: When lab user virtual machines will be started. Timestamp offsets will be ignored and
+ * timeZoneId is used instead.
+ *
+ * @return the startAt value.
+ */
+ public OffsetDateTime startAt() {
+ return this.startAt;
+ }
+
+ /**
+ * Set the startAt property: When lab user virtual machines will be started. Timestamp offsets will be ignored and
+ * timeZoneId is used instead.
+ *
+ * @param startAt the startAt value to set.
+ * @return the ScheduleInner object itself.
+ */
+ public ScheduleInner withStartAt(OffsetDateTime startAt) {
+ this.startAt = startAt;
+ return this;
+ }
+
+ /**
+ * Get the stopAt property: When lab user virtual machines will be stopped. Timestamp offsets will be ignored and
+ * timeZoneId is used instead.
+ *
+ * @return the stopAt value.
+ */
+ public OffsetDateTime stopAt() {
+ return this.stopAt;
+ }
+
+ /**
+ * Set the stopAt property: When lab user virtual machines will be stopped. Timestamp offsets will be ignored and
+ * timeZoneId is used instead.
+ *
+ * @param stopAt the stopAt value to set.
+ * @return the ScheduleInner object itself.
+ */
+ public ScheduleInner withStopAt(OffsetDateTime stopAt) {
+ this.stopAt = stopAt;
+ return this;
+ }
+
+ /**
+ * Get the recurrencePattern property: The recurrence pattern of the scheduled actions.
+ *
+ * @return the recurrencePattern value.
+ */
+ public RecurrencePattern recurrencePattern() {
+ return this.recurrencePattern;
+ }
+
+ /**
+ * Set the recurrencePattern property: The recurrence pattern of the scheduled actions.
+ *
+ * @param recurrencePattern the recurrencePattern value to set.
+ * @return the ScheduleInner object itself.
+ */
+ public ScheduleInner withRecurrencePattern(RecurrencePattern recurrencePattern) {
+ this.recurrencePattern = recurrencePattern;
+ return this;
+ }
+
+ /**
+ * Get the timeZoneId property: The IANA timezone id for the schedule.
+ *
+ * @return the timeZoneId value.
+ */
+ public String timeZoneId() {
+ return this.timeZoneId;
+ }
+
+ /**
+ * Set the timeZoneId property: The IANA timezone id for the schedule.
+ *
+ * @param timeZoneId the timeZoneId value to set.
+ * @return the ScheduleInner object itself.
+ */
+ public ScheduleInner withTimeZoneId(String timeZoneId) {
+ this.timeZoneId = timeZoneId;
+ return this;
+ }
+
+ /**
+ * Get the notes property: Notes for this schedule.
+ *
+ * @return the notes value.
+ */
+ public String notes() {
+ return this.notes;
+ }
+
+ /**
+ * Set the notes property: Notes for this schedule.
+ *
+ * @param notes the notes value to set.
+ * @return the ScheduleInner object itself.
+ */
+ public ScheduleInner withNotes(String notes) {
+ this.notes = notes;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the schedule.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (recurrencePattern() != null) {
+ recurrencePattern().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserInner.java
index 6465c52bcfbb..e0a40fc8d1b6 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserInner.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserInner.java
@@ -6,174 +6,182 @@
import com.azure.core.annotation.Fluent;
import com.azure.core.annotation.JsonFlatten;
-import com.azure.core.management.Resource;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.labservices.models.LatestOperationResult;
+import com.azure.resourcemanager.labservices.models.InvitationState;
+import com.azure.resourcemanager.labservices.models.ProvisioningState;
+import com.azure.resourcemanager.labservices.models.RegistrationState;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.time.Duration;
-import java.util.Map;
+import java.time.OffsetDateTime;
-/** The User registered to a lab. */
+/** User of a lab that can register for and use virtual machines within the lab. */
@JsonFlatten
@Fluent
-public class UserInner extends Resource {
+public class UserInner extends ProxyResource {
@JsonIgnore private final ClientLogger logger = new ClientLogger(UserInner.class);
/*
- * The user email address, as it was specified during registration.
+ * Metadata pertaining to creation and last modification of the user
+ * resource.
*/
- @JsonProperty(value = "properties.email", access = JsonProperty.Access.WRITE_ONLY)
- private String email;
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
/*
- * The user family name, as it was specified during registration.
+ * The amount of usage quota time the user gets in addition to the lab
+ * usage quota.
*/
- @JsonProperty(value = "properties.familyName", access = JsonProperty.Access.WRITE_ONLY)
- private String familyName;
+ @JsonProperty(value = "properties.additionalUsageQuota")
+ private Duration additionalUsageQuota;
/*
- * The user given name, as it was specified during registration.
+ * Current provisioning state of the user resource.
*/
- @JsonProperty(value = "properties.givenName", access = JsonProperty.Access.WRITE_ONLY)
- private String givenName;
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
/*
- * The user tenant ID, as it was specified during registration.
+ * Display name of the user, for example user's full name.
*/
- @JsonProperty(value = "properties.tenantId", access = JsonProperty.Access.WRITE_ONLY)
- private String tenantId;
+ @JsonProperty(value = "properties.displayName", access = JsonProperty.Access.WRITE_ONLY)
+ private String displayName;
/*
- * How long the user has used his VMs in this lab
+ * Email address of the user.
*/
- @JsonProperty(value = "properties.totalUsage", access = JsonProperty.Access.WRITE_ONLY)
- private Duration totalUsage;
+ @JsonProperty(value = "properties.email", required = true)
+ private String email;
/*
- * The provisioning status of the resource.
+ * State of the user's registration within the lab.
*/
- @JsonProperty(value = "properties.provisioningState")
- private String provisioningState;
+ @JsonProperty(value = "properties.registrationState", access = JsonProperty.Access.WRITE_ONLY)
+ private RegistrationState registrationState;
/*
- * The unique immutable identifier of a resource (Guid).
+ * State of the invitation message for the user.
*/
- @JsonProperty(value = "properties.uniqueIdentifier")
- private String uniqueIdentifier;
+ @JsonProperty(value = "properties.invitationState", access = JsonProperty.Access.WRITE_ONLY)
+ private InvitationState invitationState;
/*
- * The details of the latest operation. ex: status, error
+ * Date and time when the invitation message was sent to the user.
*/
- @JsonProperty(value = "properties.latestOperationResult", access = JsonProperty.Access.WRITE_ONLY)
- private LatestOperationResult latestOperationResult;
+ @JsonProperty(value = "properties.invitationSent", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime invitationSent;
+
+ /*
+ * How long the user has used their virtual machines in this lab.
+ */
+ @JsonProperty(value = "properties.totalUsage", access = JsonProperty.Access.WRITE_ONLY)
+ private Duration totalUsage;
/**
- * Get the email property: The user email address, as it was specified during registration.
+ * Get the systemData property: Metadata pertaining to creation and last modification of the user resource.
*
- * @return the email value.
+ * @return the systemData value.
*/
- public String email() {
- return this.email;
+ public SystemData systemData() {
+ return this.systemData;
}
/**
- * Get the familyName property: The user family name, as it was specified during registration.
+ * Get the additionalUsageQuota property: The amount of usage quota time the user gets in addition to the lab usage
+ * quota.
*
- * @return the familyName value.
+ * @return the additionalUsageQuota value.
*/
- public String familyName() {
- return this.familyName;
+ public Duration additionalUsageQuota() {
+ return this.additionalUsageQuota;
}
/**
- * Get the givenName property: The user given name, as it was specified during registration.
+ * Set the additionalUsageQuota property: The amount of usage quota time the user gets in addition to the lab usage
+ * quota.
*
- * @return the givenName value.
+ * @param additionalUsageQuota the additionalUsageQuota value to set.
+ * @return the UserInner object itself.
*/
- public String givenName() {
- return this.givenName;
+ public UserInner withAdditionalUsageQuota(Duration additionalUsageQuota) {
+ this.additionalUsageQuota = additionalUsageQuota;
+ return this;
}
/**
- * Get the tenantId property: The user tenant ID, as it was specified during registration.
+ * Get the provisioningState property: Current provisioning state of the user resource.
*
- * @return the tenantId value.
+ * @return the provisioningState value.
*/
- public String tenantId() {
- return this.tenantId;
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
}
/**
- * Get the totalUsage property: How long the user has used his VMs in this lab.
+ * Get the displayName property: Display name of the user, for example user's full name.
*
- * @return the totalUsage value.
+ * @return the displayName value.
*/
- public Duration totalUsage() {
- return this.totalUsage;
+ public String displayName() {
+ return this.displayName;
}
/**
- * Get the provisioningState property: The provisioning status of the resource.
+ * Get the email property: Email address of the user.
*
- * @return the provisioningState value.
+ * @return the email value.
*/
- public String provisioningState() {
- return this.provisioningState;
+ public String email() {
+ return this.email;
}
/**
- * Set the provisioningState property: The provisioning status of the resource.
+ * Set the email property: Email address of the user.
*
- * @param provisioningState the provisioningState value to set.
+ * @param email the email value to set.
* @return the UserInner object itself.
*/
- public UserInner withProvisioningState(String provisioningState) {
- this.provisioningState = provisioningState;
+ public UserInner withEmail(String email) {
+ this.email = email;
return this;
}
/**
- * Get the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
+ * Get the registrationState property: State of the user's registration within the lab.
*
- * @return the uniqueIdentifier value.
+ * @return the registrationState value.
*/
- public String uniqueIdentifier() {
- return this.uniqueIdentifier;
+ public RegistrationState registrationState() {
+ return this.registrationState;
}
/**
- * Set the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
+ * Get the invitationState property: State of the invitation message for the user.
*
- * @param uniqueIdentifier the uniqueIdentifier value to set.
- * @return the UserInner object itself.
+ * @return the invitationState value.
*/
- public UserInner withUniqueIdentifier(String uniqueIdentifier) {
- this.uniqueIdentifier = uniqueIdentifier;
- return this;
+ public InvitationState invitationState() {
+ return this.invitationState;
}
/**
- * Get the latestOperationResult property: The details of the latest operation. ex: status, error.
+ * Get the invitationSent property: Date and time when the invitation message was sent to the user.
*
- * @return the latestOperationResult value.
+ * @return the invitationSent value.
*/
- public LatestOperationResult latestOperationResult() {
- return this.latestOperationResult;
- }
-
- /** {@inheritDoc} */
- @Override
- public UserInner withLocation(String location) {
- super.withLocation(location);
- return this;
+ public OffsetDateTime invitationSent() {
+ return this.invitationSent;
}
- /** {@inheritDoc} */
- @Override
- public UserInner withTags(Map tags) {
- super.withTags(tags);
- return this;
+ /**
+ * Get the totalUsage property: How long the user has used their virtual machines in this lab.
+ *
+ * @return the totalUsage value.
+ */
+ public Duration totalUsage() {
+ return this.totalUsage;
}
/**
@@ -182,8 +190,10 @@ public UserInner withTags(Map tags) {
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
- if (latestOperationResult() != null) {
- latestOperationResult().validate();
+ if (email() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property email in model UserInner"));
}
}
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineInner.java
new file mode 100644
index 000000000000..0d2019172ef1
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineInner.java
@@ -0,0 +1,125 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.annotation.JsonFlatten;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.labservices.models.ProvisioningState;
+import com.azure.resourcemanager.labservices.models.VirtualMachineConnectionProfile;
+import com.azure.resourcemanager.labservices.models.VirtualMachineState;
+import com.azure.resourcemanager.labservices.models.VirtualMachineType;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** A lab virtual machine resource. */
+@JsonFlatten
+@Immutable
+public class VirtualMachineInner extends ProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(VirtualMachineInner.class);
+
+ /*
+ * System data of the Lab virtual machine.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Current provisioning state of the virtual machine.
+ */
+ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The current state of the virtual machine
+ */
+ @JsonProperty(value = "properties.state", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualMachineState state;
+
+ /*
+ * Profile for information about connecting to the virtual machine.
+ */
+ @JsonProperty(value = "properties.connectionProfile", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualMachineConnectionProfile connectionProfile;
+
+ /*
+ * The lab user ID (not the PUID!) of who claimed the virtual machine.
+ */
+ @JsonProperty(value = "properties.claimedByUserId", access = JsonProperty.Access.WRITE_ONLY)
+ private String claimedByUserId;
+
+ /*
+ * The type of this VM resource
+ */
+ @JsonProperty(value = "properties.vmType", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualMachineType vmType;
+
+ /**
+ * Get the systemData property: System data of the Lab virtual machine.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the virtual machine.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the state property: The current state of the virtual machine.
+ *
+ * @return the state value.
+ */
+ public VirtualMachineState state() {
+ return this.state;
+ }
+
+ /**
+ * Get the connectionProfile property: Profile for information about connecting to the virtual machine.
+ *
+ * @return the connectionProfile value.
+ */
+ public VirtualMachineConnectionProfile connectionProfile() {
+ return this.connectionProfile;
+ }
+
+ /**
+ * Get the claimedByUserId property: The lab user ID (not the PUID!) of who claimed the virtual machine.
+ *
+ * @return the claimedByUserId value.
+ */
+ public String claimedByUserId() {
+ return this.claimedByUserId;
+ }
+
+ /**
+ * Get the vmType property: The type of this VM resource.
+ *
+ * @return the vmType value.
+ */
+ public VirtualMachineType vmType() {
+ return this.vmType;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (connectionProfile() != null) {
+ connectionProfile().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/package-info.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/package-info.java
index cdcb8a87f169..9b1275969ca1 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/package-info.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/package-info.java
@@ -2,5 +2,5 @@
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
-/** Package containing the inner data models for ManagedLabsClient. The Managed Labs Client. */
+/** Package containing the inner data models for LabServicesClient. Azure Lab Services REST API. */
package com.azure.resourcemanager.labservices.fluent.models;
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/package-info.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/package-info.java
index 631cad509ed2..b5d91cb02075 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/package-info.java
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/package-info.java
@@ -2,5 +2,5 @@
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
-/** Package containing the service clients for ManagedLabsClient. The Managed Labs Client. */
+/** Package containing the service clients for LabServicesClient. Azure Lab Services REST API. */
package com.azure.resourcemanager.labservices.fluent;
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentImpl.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentImpl.java
deleted file mode 100644
index 7fea7452b2a6..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentImpl.java
+++ /dev/null
@@ -1,379 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.implementation;
-
-import com.azure.core.http.rest.Response;
-import com.azure.core.management.Region;
-import com.azure.core.util.Context;
-import com.azure.resourcemanager.labservices.fluent.models.EnvironmentInner;
-import com.azure.resourcemanager.labservices.models.Environment;
-import com.azure.resourcemanager.labservices.models.EnvironmentFragment;
-import com.azure.resourcemanager.labservices.models.LatestOperationResult;
-import com.azure.resourcemanager.labservices.models.NetworkInterface;
-import com.azure.resourcemanager.labservices.models.ResetPasswordPayload;
-import com.azure.resourcemanager.labservices.models.ResourceSet;
-import com.azure.resourcemanager.labservices.models.ResourceSetFragment;
-import java.time.Duration;
-import java.time.OffsetDateTime;
-import java.util.Collections;
-import java.util.Map;
-
-public final class EnvironmentImpl implements Environment, Environment.Definition, Environment.Update {
- private EnvironmentInner innerObject;
-
- private final com.azure.resourcemanager.labservices.ManagedLabsManager serviceManager;
-
- public String id() {
- return this.innerModel().id();
- }
-
- public String name() {
- return this.innerModel().name();
- }
-
- public String type() {
- return this.innerModel().type();
- }
-
- public String location() {
- return this.innerModel().location();
- }
-
- public Map tags() {
- Map inner = this.innerModel().tags();
- if (inner != null) {
- return Collections.unmodifiableMap(inner);
- } else {
- return Collections.emptyMap();
- }
- }
-
- public ResourceSet resourceSets() {
- return this.innerModel().resourceSets();
- }
-
- public String claimedByUserObjectId() {
- return this.innerModel().claimedByUserObjectId();
- }
-
- public String claimedByUserPrincipalId() {
- return this.innerModel().claimedByUserPrincipalId();
- }
-
- public String claimedByUsername() {
- return this.innerModel().claimedByUsername();
- }
-
- public Boolean isClaimed() {
- return this.innerModel().isClaimed();
- }
-
- public String lastKnownPowerState() {
- return this.innerModel().lastKnownPowerState();
- }
-
- public NetworkInterface networkInterface() {
- return this.innerModel().networkInterface();
- }
-
- public Duration totalUsage() {
- return this.innerModel().totalUsage();
- }
-
- public OffsetDateTime passwordLastReset() {
- return this.innerModel().passwordLastReset();
- }
-
- public String provisioningState() {
- return this.innerModel().provisioningState();
- }
-
- public String uniqueIdentifier() {
- return this.innerModel().uniqueIdentifier();
- }
-
- public LatestOperationResult latestOperationResult() {
- return this.innerModel().latestOperationResult();
- }
-
- public Region region() {
- return Region.fromName(this.regionName());
- }
-
- public String regionName() {
- return this.location();
- }
-
- public EnvironmentInner innerModel() {
- return this.innerObject;
- }
-
- private com.azure.resourcemanager.labservices.ManagedLabsManager manager() {
- return this.serviceManager;
- }
-
- private String resourceGroupName;
-
- private String labAccountName;
-
- private String labName;
-
- private String environmentSettingName;
-
- private String environmentName;
-
- private EnvironmentFragment updateEnvironment;
-
- public EnvironmentImpl withExistingEnvironmentsetting(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- this.resourceGroupName = resourceGroupName;
- this.labAccountName = labAccountName;
- this.labName = labName;
- this.environmentSettingName = environmentSettingName;
- return this;
- }
-
- public Environment create() {
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironments()
- .createOrUpdateWithResponse(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- environmentName,
- this.innerModel(),
- Context.NONE)
- .getValue();
- return this;
- }
-
- public Environment create(Context context) {
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironments()
- .createOrUpdateWithResponse(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- environmentName,
- this.innerModel(),
- context)
- .getValue();
- return this;
- }
-
- EnvironmentImpl(String name, com.azure.resourcemanager.labservices.ManagedLabsManager serviceManager) {
- this.innerObject = new EnvironmentInner();
- this.serviceManager = serviceManager;
- this.environmentName = name;
- }
-
- public EnvironmentImpl update() {
- this.updateEnvironment = new EnvironmentFragment();
- return this;
- }
-
- public Environment apply() {
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironments()
- .updateWithResponse(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- environmentName,
- updateEnvironment,
- Context.NONE)
- .getValue();
- return this;
- }
-
- public Environment apply(Context context) {
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironments()
- .updateWithResponse(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- environmentName,
- updateEnvironment,
- context)
- .getValue();
- return this;
- }
-
- EnvironmentImpl(
- EnvironmentInner innerObject, com.azure.resourcemanager.labservices.ManagedLabsManager serviceManager) {
- this.innerObject = innerObject;
- this.serviceManager = serviceManager;
- this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourceGroups");
- this.labAccountName = Utils.getValueFromIdByName(innerObject.id(), "labaccounts");
- this.labName = Utils.getValueFromIdByName(innerObject.id(), "labs");
- this.environmentSettingName = Utils.getValueFromIdByName(innerObject.id(), "environmentsettings");
- this.environmentName = Utils.getValueFromIdByName(innerObject.id(), "environments");
- }
-
- public Environment refresh() {
- String localExpand = null;
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironments()
- .getWithResponse(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- environmentName,
- localExpand,
- Context.NONE)
- .getValue();
- return this;
- }
-
- public Environment refresh(Context context) {
- String localExpand = null;
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironments()
- .getWithResponse(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- environmentName,
- localExpand,
- context)
- .getValue();
- return this;
- }
-
- public void claim() {
- serviceManager
- .environments()
- .claim(resourceGroupName, labAccountName, labName, environmentSettingName, environmentName);
- }
-
- public Response claimWithResponse(Context context) {
- return serviceManager
- .environments()
- .claimWithResponse(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentName, context);
- }
-
- public void resetPassword(ResetPasswordPayload resetPasswordPayload) {
- serviceManager
- .environments()
- .resetPassword(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- environmentName,
- resetPasswordPayload);
- }
-
- public void resetPassword(ResetPasswordPayload resetPasswordPayload, Context context) {
- serviceManager
- .environments()
- .resetPassword(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- environmentName,
- resetPasswordPayload,
- context);
- }
-
- public void start() {
- serviceManager
- .environments()
- .start(resourceGroupName, labAccountName, labName, environmentSettingName, environmentName);
- }
-
- public void start(Context context) {
- serviceManager
- .environments()
- .start(resourceGroupName, labAccountName, labName, environmentSettingName, environmentName, context);
- }
-
- public void stop() {
- serviceManager
- .environments()
- .stop(resourceGroupName, labAccountName, labName, environmentSettingName, environmentName);
- }
-
- public void stop(Context context) {
- serviceManager
- .environments()
- .stop(resourceGroupName, labAccountName, labName, environmentSettingName, environmentName, context);
- }
-
- public EnvironmentImpl withRegion(Region location) {
- this.innerModel().withLocation(location.toString());
- return this;
- }
-
- public EnvironmentImpl withRegion(String location) {
- this.innerModel().withLocation(location);
- return this;
- }
-
- public EnvironmentImpl withTags(Map tags) {
- if (isInCreateMode()) {
- this.innerModel().withTags(tags);
- return this;
- } else {
- this.updateEnvironment.withTags(tags);
- return this;
- }
- }
-
- public EnvironmentImpl withResourceSets(ResourceSet resourceSets) {
- this.innerModel().withResourceSets(resourceSets);
- return this;
- }
-
- public EnvironmentImpl withProvisioningState(String provisioningState) {
- if (isInCreateMode()) {
- this.innerModel().withProvisioningState(provisioningState);
- return this;
- } else {
- this.updateEnvironment.withProvisioningState(provisioningState);
- return this;
- }
- }
-
- public EnvironmentImpl withUniqueIdentifier(String uniqueIdentifier) {
- if (isInCreateMode()) {
- this.innerModel().withUniqueIdentifier(uniqueIdentifier);
- return this;
- } else {
- this.updateEnvironment.withUniqueIdentifier(uniqueIdentifier);
- return this;
- }
- }
-
- public EnvironmentImpl withResourceSets(ResourceSetFragment resourceSets) {
- this.updateEnvironment.withResourceSets(resourceSets);
- return this;
- }
-
- private boolean isInCreateMode() {
- return this.innerModel().id() == null;
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingImpl.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingImpl.java
deleted file mode 100644
index 80c766e21ee5..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingImpl.java
+++ /dev/null
@@ -1,357 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.implementation;
-
-import com.azure.core.http.rest.Response;
-import com.azure.core.management.Region;
-import com.azure.core.util.Context;
-import com.azure.resourcemanager.labservices.fluent.models.EnvironmentSettingInner;
-import com.azure.resourcemanager.labservices.models.ConfigurationState;
-import com.azure.resourcemanager.labservices.models.EnvironmentSetting;
-import com.azure.resourcemanager.labservices.models.EnvironmentSettingFragment;
-import com.azure.resourcemanager.labservices.models.LatestOperationResult;
-import com.azure.resourcemanager.labservices.models.PublishPayload;
-import com.azure.resourcemanager.labservices.models.PublishingState;
-import com.azure.resourcemanager.labservices.models.ResourceSettings;
-import com.azure.resourcemanager.labservices.models.ResourceSettingsFragment;
-import java.time.OffsetDateTime;
-import java.util.Collections;
-import java.util.Map;
-
-public final class EnvironmentSettingImpl
- implements EnvironmentSetting, EnvironmentSetting.Definition, EnvironmentSetting.Update {
- private EnvironmentSettingInner innerObject;
-
- private final com.azure.resourcemanager.labservices.ManagedLabsManager serviceManager;
-
- public String id() {
- return this.innerModel().id();
- }
-
- public String name() {
- return this.innerModel().name();
- }
-
- public String type() {
- return this.innerModel().type();
- }
-
- public String location() {
- return this.innerModel().location();
- }
-
- public Map tags() {
- Map inner = this.innerModel().tags();
- if (inner != null) {
- return Collections.unmodifiableMap(inner);
- } else {
- return Collections.emptyMap();
- }
- }
-
- public PublishingState publishingState() {
- return this.innerModel().publishingState();
- }
-
- public ConfigurationState configurationState() {
- return this.innerModel().configurationState();
- }
-
- public String description() {
- return this.innerModel().description();
- }
-
- public String title() {
- return this.innerModel().title();
- }
-
- public ResourceSettings resourceSettings() {
- return this.innerModel().resourceSettings();
- }
-
- public OffsetDateTime lastChanged() {
- return this.innerModel().lastChanged();
- }
-
- public OffsetDateTime lastPublished() {
- return this.innerModel().lastPublished();
- }
-
- public String provisioningState() {
- return this.innerModel().provisioningState();
- }
-
- public String uniqueIdentifier() {
- return this.innerModel().uniqueIdentifier();
- }
-
- public LatestOperationResult latestOperationResult() {
- return this.innerModel().latestOperationResult();
- }
-
- public Region region() {
- return Region.fromName(this.regionName());
- }
-
- public String regionName() {
- return this.location();
- }
-
- public EnvironmentSettingInner innerModel() {
- return this.innerObject;
- }
-
- private com.azure.resourcemanager.labservices.ManagedLabsManager manager() {
- return this.serviceManager;
- }
-
- private String resourceGroupName;
-
- private String labAccountName;
-
- private String labName;
-
- private String environmentSettingName;
-
- private EnvironmentSettingFragment updateEnvironmentSetting;
-
- public EnvironmentSettingImpl withExistingLab(String resourceGroupName, String labAccountName, String labName) {
- this.resourceGroupName = resourceGroupName;
- this.labAccountName = labAccountName;
- this.labName = labName;
- return this;
- }
-
- public EnvironmentSetting create() {
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironmentSettings()
- .createOrUpdate(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.innerModel(),
- Context.NONE);
- return this;
- }
-
- public EnvironmentSetting create(Context context) {
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironmentSettings()
- .createOrUpdate(
- resourceGroupName, labAccountName, labName, environmentSettingName, this.innerModel(), context);
- return this;
- }
-
- EnvironmentSettingImpl(String name, com.azure.resourcemanager.labservices.ManagedLabsManager serviceManager) {
- this.innerObject = new EnvironmentSettingInner();
- this.serviceManager = serviceManager;
- this.environmentSettingName = name;
- }
-
- public EnvironmentSettingImpl update() {
- this.updateEnvironmentSetting = new EnvironmentSettingFragment();
- return this;
- }
-
- public EnvironmentSetting apply() {
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironmentSettings()
- .updateWithResponse(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- updateEnvironmentSetting,
- Context.NONE)
- .getValue();
- return this;
- }
-
- public EnvironmentSetting apply(Context context) {
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironmentSettings()
- .updateWithResponse(
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- updateEnvironmentSetting,
- context)
- .getValue();
- return this;
- }
-
- EnvironmentSettingImpl(
- EnvironmentSettingInner innerObject, com.azure.resourcemanager.labservices.ManagedLabsManager serviceManager) {
- this.innerObject = innerObject;
- this.serviceManager = serviceManager;
- this.resourceGroupName = Utils.getValueFromIdByName(innerObject.id(), "resourceGroups");
- this.labAccountName = Utils.getValueFromIdByName(innerObject.id(), "labaccounts");
- this.labName = Utils.getValueFromIdByName(innerObject.id(), "labs");
- this.environmentSettingName = Utils.getValueFromIdByName(innerObject.id(), "environmentsettings");
- }
-
- public EnvironmentSetting refresh() {
- String localExpand = null;
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironmentSettings()
- .getWithResponse(
- resourceGroupName, labAccountName, labName, environmentSettingName, localExpand, Context.NONE)
- .getValue();
- return this;
- }
-
- public EnvironmentSetting refresh(Context context) {
- String localExpand = null;
- this.innerObject =
- serviceManager
- .serviceClient()
- .getEnvironmentSettings()
- .getWithResponse(
- resourceGroupName, labAccountName, labName, environmentSettingName, localExpand, context)
- .getValue();
- return this;
- }
-
- public void claimAny() {
- serviceManager
- .environmentSettings()
- .claimAny(resourceGroupName, labAccountName, labName, environmentSettingName);
- }
-
- public Response claimAnyWithResponse(Context context) {
- return serviceManager
- .environmentSettings()
- .claimAnyWithResponse(resourceGroupName, labAccountName, labName, environmentSettingName, context);
- }
-
- public void publish(PublishPayload publishPayload) {
- serviceManager
- .environmentSettings()
- .publish(resourceGroupName, labAccountName, labName, environmentSettingName, publishPayload);
- }
-
- public Response publishWithResponse(PublishPayload publishPayload, Context context) {
- return serviceManager
- .environmentSettings()
- .publishWithResponse(
- resourceGroupName, labAccountName, labName, environmentSettingName, publishPayload, context);
- }
-
- public void start() {
- serviceManager.environmentSettings().start(resourceGroupName, labAccountName, labName, environmentSettingName);
- }
-
- public void start(Context context) {
- serviceManager
- .environmentSettings()
- .start(resourceGroupName, labAccountName, labName, environmentSettingName, context);
- }
-
- public void stop() {
- serviceManager.environmentSettings().stop(resourceGroupName, labAccountName, labName, environmentSettingName);
- }
-
- public void stop(Context context) {
- serviceManager
- .environmentSettings()
- .stop(resourceGroupName, labAccountName, labName, environmentSettingName, context);
- }
-
- public EnvironmentSettingImpl withRegion(Region location) {
- this.innerModel().withLocation(location.toString());
- return this;
- }
-
- public EnvironmentSettingImpl withRegion(String location) {
- this.innerModel().withLocation(location);
- return this;
- }
-
- public EnvironmentSettingImpl withTags(Map tags) {
- if (isInCreateMode()) {
- this.innerModel().withTags(tags);
- return this;
- } else {
- this.updateEnvironmentSetting.withTags(tags);
- return this;
- }
- }
-
- public EnvironmentSettingImpl withConfigurationState(ConfigurationState configurationState) {
- if (isInCreateMode()) {
- this.innerModel().withConfigurationState(configurationState);
- return this;
- } else {
- this.updateEnvironmentSetting.withConfigurationState(configurationState);
- return this;
- }
- }
-
- public EnvironmentSettingImpl withDescription(String description) {
- if (isInCreateMode()) {
- this.innerModel().withDescription(description);
- return this;
- } else {
- this.updateEnvironmentSetting.withDescription(description);
- return this;
- }
- }
-
- public EnvironmentSettingImpl withTitle(String title) {
- if (isInCreateMode()) {
- this.innerModel().withTitle(title);
- return this;
- } else {
- this.updateEnvironmentSetting.withTitle(title);
- return this;
- }
- }
-
- public EnvironmentSettingImpl withResourceSettings(ResourceSettings resourceSettings) {
- this.innerModel().withResourceSettings(resourceSettings);
- return this;
- }
-
- public EnvironmentSettingImpl withProvisioningState(String provisioningState) {
- if (isInCreateMode()) {
- this.innerModel().withProvisioningState(provisioningState);
- return this;
- } else {
- this.updateEnvironmentSetting.withProvisioningState(provisioningState);
- return this;
- }
- }
-
- public EnvironmentSettingImpl withUniqueIdentifier(String uniqueIdentifier) {
- if (isInCreateMode()) {
- this.innerModel().withUniqueIdentifier(uniqueIdentifier);
- return this;
- } else {
- this.updateEnvironmentSetting.withUniqueIdentifier(uniqueIdentifier);
- return this;
- }
- }
-
- public EnvironmentSettingImpl withResourceSettings(ResourceSettingsFragment resourceSettings) {
- this.updateEnvironmentSetting.withResourceSettings(resourceSettings);
- return this;
- }
-
- private boolean isInCreateMode() {
- return this.innerModel().id() == null;
- }
-}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingsClientImpl.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingsClientImpl.java
deleted file mode 100644
index f509b4f67fb0..000000000000
--- a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingsClientImpl.java
+++ /dev/null
@@ -1,2731 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.labservices.implementation;
-
-import com.azure.core.annotation.BodyParam;
-import com.azure.core.annotation.Delete;
-import com.azure.core.annotation.ExpectedResponses;
-import com.azure.core.annotation.Get;
-import com.azure.core.annotation.HeaderParam;
-import com.azure.core.annotation.Headers;
-import com.azure.core.annotation.Host;
-import com.azure.core.annotation.HostParam;
-import com.azure.core.annotation.Patch;
-import com.azure.core.annotation.PathParam;
-import com.azure.core.annotation.Post;
-import com.azure.core.annotation.Put;
-import com.azure.core.annotation.QueryParam;
-import com.azure.core.annotation.ReturnType;
-import com.azure.core.annotation.ServiceInterface;
-import com.azure.core.annotation.ServiceMethod;
-import com.azure.core.annotation.UnexpectedResponseExceptionType;
-import com.azure.core.http.rest.PagedFlux;
-import com.azure.core.http.rest.PagedIterable;
-import com.azure.core.http.rest.PagedResponse;
-import com.azure.core.http.rest.PagedResponseBase;
-import com.azure.core.http.rest.Response;
-import com.azure.core.http.rest.RestProxy;
-import com.azure.core.management.exception.ManagementException;
-import com.azure.core.management.polling.PollResult;
-import com.azure.core.util.Context;
-import com.azure.core.util.FluxUtil;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.core.util.polling.PollerFlux;
-import com.azure.core.util.polling.SyncPoller;
-import com.azure.resourcemanager.labservices.fluent.EnvironmentSettingsClient;
-import com.azure.resourcemanager.labservices.fluent.models.EnvironmentSettingInner;
-import com.azure.resourcemanager.labservices.models.EnvironmentSettingFragment;
-import com.azure.resourcemanager.labservices.models.PublishPayload;
-import com.azure.resourcemanager.labservices.models.ResponseWithContinuationEnvironmentSetting;
-import java.nio.ByteBuffer;
-import reactor.core.publisher.Flux;
-import reactor.core.publisher.Mono;
-
-/** An instance of this class provides access to all the operations defined in EnvironmentSettingsClient. */
-public final class EnvironmentSettingsClientImpl implements EnvironmentSettingsClient {
- private final ClientLogger logger = new ClientLogger(EnvironmentSettingsClientImpl.class);
-
- /** The proxy service used to perform REST calls. */
- private final EnvironmentSettingsService service;
-
- /** The service client containing this operation class. */
- private final ManagedLabsClientImpl client;
-
- /**
- * Initializes an instance of EnvironmentSettingsClientImpl.
- *
- * @param client the instance of the service client containing this operation class.
- */
- EnvironmentSettingsClientImpl(ManagedLabsClientImpl client) {
- this.service =
- RestProxy.create(EnvironmentSettingsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
- this.client = client;
- }
-
- /**
- * The interface defining all the services for ManagedLabsClientEnvironmentSettings to be used by the proxy service
- * to perform REST calls.
- */
- @Host("{$host}")
- @ServiceInterface(name = "ManagedLabsClientEnv")
- private interface EnvironmentSettingsService {
- @Headers({"Content-Type: application/json"})
- @Get(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings")
- @ExpectedResponses({200})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono> list(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @QueryParam("$expand") String expand,
- @QueryParam("$filter") String filter,
- @QueryParam("$top") Integer top,
- @QueryParam("$orderby") String orderby,
- @QueryParam("api-version") String apiVersion,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Get(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings/{environmentSettingName}")
- @ExpectedResponses({200})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono> get(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @PathParam("environmentSettingName") String environmentSettingName,
- @QueryParam("$expand") String expand,
- @QueryParam("api-version") String apiVersion,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Put(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings/{environmentSettingName}")
- @ExpectedResponses({200, 201})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono>> createOrUpdate(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @PathParam("environmentSettingName") String environmentSettingName,
- @QueryParam("api-version") String apiVersion,
- @BodyParam("application/json") EnvironmentSettingInner environmentSetting,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Delete(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings/{environmentSettingName}")
- @ExpectedResponses({202, 204})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono>> delete(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @PathParam("environmentSettingName") String environmentSettingName,
- @QueryParam("api-version") String apiVersion,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Patch(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings/{environmentSettingName}")
- @ExpectedResponses({200})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono> update(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @PathParam("environmentSettingName") String environmentSettingName,
- @QueryParam("api-version") String apiVersion,
- @BodyParam("application/json") EnvironmentSettingFragment environmentSetting,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Post(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings/{environmentSettingName}/claimAny")
- @ExpectedResponses({200})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono> claimAny(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @PathParam("environmentSettingName") String environmentSettingName,
- @QueryParam("api-version") String apiVersion,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Post(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings/{environmentSettingName}/publish")
- @ExpectedResponses({200})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono> publish(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @PathParam("environmentSettingName") String environmentSettingName,
- @QueryParam("api-version") String apiVersion,
- @BodyParam("application/json") PublishPayload publishPayload,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Post(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings/{environmentSettingName}/start")
- @ExpectedResponses({200, 202})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono>> start(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @PathParam("environmentSettingName") String environmentSettingName,
- @QueryParam("api-version") String apiVersion,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Post(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices"
- + "/labaccounts/{labAccountName}/labs/{labName}/environmentsettings/{environmentSettingName}/stop")
- @ExpectedResponses({200, 202})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono>> stop(
- @HostParam("$host") String endpoint,
- @PathParam("subscriptionId") String subscriptionId,
- @PathParam("resourceGroupName") String resourceGroupName,
- @PathParam("labAccountName") String labAccountName,
- @PathParam("labName") String labName,
- @PathParam("environmentSettingName") String environmentSettingName,
- @QueryParam("api-version") String apiVersion,
- @HeaderParam("Accept") String accept,
- Context context);
-
- @Headers({"Content-Type: application/json"})
- @Get("{nextLink}")
- @ExpectedResponses({200})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono> listNext(
- @PathParam(value = "nextLink", encoded = true) String nextLink,
- @HostParam("$host") String endpoint,
- @HeaderParam("Accept") String accept,
- Context context);
- }
-
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listSinglePageAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String expand,
- String filter,
- Integer top,
- String orderby) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service
- .list(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- expand,
- filter,
- top,
- orderby,
- this.client.getApiVersion(),
- accept,
- context))
- .>map(
- res ->
- new PagedResponseBase<>(
- res.getRequest(),
- res.getStatusCode(),
- res.getHeaders(),
- res.getValue().value(),
- res.getValue().nextLink(),
- null))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listSinglePageAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service
- .list(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- expand,
- filter,
- top,
- orderby,
- this.client.getApiVersion(),
- accept,
- context)
- .map(
- res ->
- new PagedResponseBase<>(
- res.getRequest(),
- res.getStatusCode(),
- res.getHeaders(),
- res.getValue().value(),
- res.getValue().nextLink(),
- null));
- }
-
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- private PagedFlux listAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String expand,
- String filter,
- Integer top,
- String orderby) {
- return new PagedFlux<>(
- () -> listSinglePageAsync(resourceGroupName, labAccountName, labName, expand, filter, top, orderby),
- nextLink -> listNextSinglePageAsync(nextLink));
- }
-
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- private PagedFlux listAsync(
- String resourceGroupName, String labAccountName, String labName) {
- final String expand = null;
- final String filter = null;
- final Integer top = null;
- final String orderby = null;
- return new PagedFlux<>(
- () -> listSinglePageAsync(resourceGroupName, labAccountName, labName, expand, filter, top, orderby),
- nextLink -> listNextSinglePageAsync(nextLink));
- }
-
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- private PagedFlux listAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context) {
- return new PagedFlux<>(
- () ->
- listSinglePageAsync(resourceGroupName, labAccountName, labName, expand, filter, top, orderby, context),
- nextLink -> listNextSinglePageAsync(nextLink, context));
- }
-
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable list(
- String resourceGroupName, String labAccountName, String labName) {
- final String expand = null;
- final String filter = null;
- final Integer top = null;
- final String orderby = null;
- return new PagedIterable<>(listAsync(resourceGroupName, labAccountName, labName, expand, filter, top, orderby));
- }
-
- /**
- * List environment setting in a given lab.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @param filter The filter to apply to the operation.
- * @param top The maximum number of resources to return from the operation.
- * @param orderby The ordering expression for the results, using OData notation.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response of a list operation.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable list(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context) {
- return new PagedIterable<>(
- listAsync(resourceGroupName, labAccountName, labName, expand, filter, top, orderby, context));
- }
-
- /**
- * Get environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return environment setting.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> getWithResponseAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName, String expand) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service
- .get(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- expand,
- this.client.getApiVersion(),
- accept,
- context))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * Get environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return environment setting.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> getWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String expand,
- Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service
- .get(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- expand,
- this.client.getApiVersion(),
- accept,
- context);
- }
-
- /**
- * Get environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return environment setting.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono getAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName, String expand) {
- return getWithResponseAsync(resourceGroupName, labAccountName, labName, environmentSettingName, expand)
- .flatMap(
- (Response res) -> {
- if (res.getValue() != null) {
- return Mono.just(res.getValue());
- } else {
- return Mono.empty();
- }
- });
- }
-
- /**
- * Get environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return environment setting.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono getAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- final String expand = null;
- return getWithResponseAsync(resourceGroupName, labAccountName, labName, environmentSettingName, expand)
- .flatMap(
- (Response res) -> {
- if (res.getValue() != null) {
- return Mono.just(res.getValue());
- } else {
- return Mono.empty();
- }
- });
- }
-
- /**
- * Get environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return environment setting.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public EnvironmentSettingInner get(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- final String expand = null;
- return getAsync(resourceGroupName, labAccountName, labName, environmentSettingName, expand).block();
- }
-
- /**
- * Get environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param expand Specify the $expand query. Example: 'properties($select=publishingState)'.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return environment setting.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response getWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- String expand,
- Context context) {
- return getWithResponseAsync(resourceGroupName, labAccountName, labName, environmentSettingName, expand, context)
- .block();
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono>> createOrUpdateWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- if (environmentSetting == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter environmentSetting is required and cannot be null."));
- } else {
- environmentSetting.validate();
- }
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service
- .createOrUpdate(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- environmentSetting,
- accept,
- context))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono>> createOrUpdateWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting,
- Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- if (environmentSetting == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter environmentSetting is required and cannot be null."));
- } else {
- environmentSetting.validate();
- }
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service
- .createOrUpdate(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- environmentSetting,
- accept,
- context);
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private PollerFlux, EnvironmentSettingInner> beginCreateOrUpdateAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting) {
- Mono>> mono =
- createOrUpdateWithResponseAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting);
- return this
- .client
- .getLroResult(
- mono,
- this.client.getHttpPipeline(),
- EnvironmentSettingInner.class,
- EnvironmentSettingInner.class,
- Context.NONE);
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private PollerFlux, EnvironmentSettingInner> beginCreateOrUpdateAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting,
- Context context) {
- context = this.client.mergeContext(context);
- Mono>> mono =
- createOrUpdateWithResponseAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting, context);
- return this
- .client
- .getLroResult(
- mono,
- this.client.getHttpPipeline(),
- EnvironmentSettingInner.class,
- EnvironmentSettingInner.class,
- context);
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public SyncPoller, EnvironmentSettingInner> beginCreateOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting) {
- return beginCreateOrUpdateAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting)
- .getSyncPoller();
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public SyncPoller, EnvironmentSettingInner> beginCreateOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting,
- Context context) {
- return beginCreateOrUpdateAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting, context)
- .getSyncPoller();
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono createOrUpdateAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting) {
- return beginCreateOrUpdateAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting)
- .last()
- .flatMap(this.client::getLroFinalResultOrError);
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono createOrUpdateAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting,
- Context context) {
- return beginCreateOrUpdateAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting, context)
- .last()
- .flatMap(this.client::getLroFinalResultOrError);
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public EnvironmentSettingInner createOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting) {
- return createOrUpdateAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting)
- .block();
- }
-
- /**
- * Create or replace an existing Environment Setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public EnvironmentSettingInner createOrUpdate(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingInner environmentSetting,
- Context context) {
- return createOrUpdateAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting, context)
- .block();
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono>> deleteWithResponseAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service
- .delete(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- accept,
- context))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono>> deleteWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service
- .delete(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- accept,
- context);
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private PollerFlux, Void> beginDeleteAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- Mono>> mono =
- deleteWithResponseAsync(resourceGroupName, labAccountName, labName, environmentSettingName);
- return this
- .client
- .getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, Context.NONE);
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private PollerFlux, Void> beginDeleteAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- context = this.client.mergeContext(context);
- Mono>> mono =
- deleteWithResponseAsync(resourceGroupName, labAccountName, labName, environmentSettingName, context);
- return this
- .client
- .getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, context);
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public SyncPoller, Void> beginDelete(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- return beginDeleteAsync(resourceGroupName, labAccountName, labName, environmentSettingName).getSyncPoller();
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public SyncPoller, Void> beginDelete(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- return beginDeleteAsync(resourceGroupName, labAccountName, labName, environmentSettingName, context)
- .getSyncPoller();
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono deleteAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- return beginDeleteAsync(resourceGroupName, labAccountName, labName, environmentSettingName)
- .last()
- .flatMap(this.client::getLroFinalResultOrError);
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono deleteAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- return beginDeleteAsync(resourceGroupName, labAccountName, labName, environmentSettingName, context)
- .last()
- .flatMap(this.client::getLroFinalResultOrError);
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public void delete(String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- deleteAsync(resourceGroupName, labAccountName, labName, environmentSettingName).block();
- }
-
- /**
- * Delete environment setting. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public void delete(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- deleteAsync(resourceGroupName, labAccountName, labName, environmentSettingName, context).block();
- }
-
- /**
- * Modify properties of environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> updateWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingFragment environmentSetting) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- if (environmentSetting == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter environmentSetting is required and cannot be null."));
- } else {
- environmentSetting.validate();
- }
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service
- .update(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- environmentSetting,
- accept,
- context))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * Modify properties of environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> updateWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingFragment environmentSetting,
- Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- if (environmentSetting == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter environmentSetting is required and cannot be null."));
- } else {
- environmentSetting.validate();
- }
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service
- .update(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- environmentSetting,
- accept,
- context);
- }
-
- /**
- * Modify properties of environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono updateAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingFragment environmentSetting) {
- return updateWithResponseAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting)
- .flatMap(
- (Response res) -> {
- if (res.getValue() != null) {
- return Mono.just(res.getValue());
- } else {
- return Mono.empty();
- }
- });
- }
-
- /**
- * Modify properties of environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public EnvironmentSettingInner update(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingFragment environmentSetting) {
- return updateAsync(resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting)
- .block();
- }
-
- /**
- * Modify properties of environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param environmentSetting Represents settings of an environment, from which environment instances would be
- * created.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return represents settings of an environment, from which environment instances would be created.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response updateWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- EnvironmentSettingFragment environmentSetting,
- Context context) {
- return updateWithResponseAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, environmentSetting, context)
- .block();
- }
-
- /**
- * Claims a random environment for a user in an environment settings.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> claimAnyWithResponseAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service
- .claimAny(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- accept,
- context))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * Claims a random environment for a user in an environment settings.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> claimAnyWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service
- .claimAny(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- accept,
- context);
- }
-
- /**
- * Claims a random environment for a user in an environment settings.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono claimAnyAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- return claimAnyWithResponseAsync(resourceGroupName, labAccountName, labName, environmentSettingName)
- .flatMap((Response res) -> Mono.empty());
- }
-
- /**
- * Claims a random environment for a user in an environment settings.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public void claimAny(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- claimAnyAsync(resourceGroupName, labAccountName, labName, environmentSettingName).block();
- }
-
- /**
- * Claims a random environment for a user in an environment settings.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response claimAnyWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- return claimAnyWithResponseAsync(resourceGroupName, labAccountName, labName, environmentSettingName, context)
- .block();
- }
-
- /**
- * Provisions/deprovisions required resources for an environment setting based on current state of the
- * lab/environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param publishPayload Payload for Publish operation on EnvironmentSetting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> publishWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- PublishPayload publishPayload) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- if (publishPayload == null) {
- return Mono.error(new IllegalArgumentException("Parameter publishPayload is required and cannot be null."));
- } else {
- publishPayload.validate();
- }
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service
- .publish(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- publishPayload,
- accept,
- context))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * Provisions/deprovisions required resources for an environment setting based on current state of the
- * lab/environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param publishPayload Payload for Publish operation on EnvironmentSetting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> publishWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- PublishPayload publishPayload,
- Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- if (publishPayload == null) {
- return Mono.error(new IllegalArgumentException("Parameter publishPayload is required and cannot be null."));
- } else {
- publishPayload.validate();
- }
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service
- .publish(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- publishPayload,
- accept,
- context);
- }
-
- /**
- * Provisions/deprovisions required resources for an environment setting based on current state of the
- * lab/environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param publishPayload Payload for Publish operation on EnvironmentSetting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono publishAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- PublishPayload publishPayload) {
- return publishWithResponseAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, publishPayload)
- .flatMap((Response res) -> Mono.empty());
- }
-
- /**
- * Provisions/deprovisions required resources for an environment setting based on current state of the
- * lab/environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param publishPayload Payload for Publish operation on EnvironmentSetting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public void publish(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- PublishPayload publishPayload) {
- publishAsync(resourceGroupName, labAccountName, labName, environmentSettingName, publishPayload).block();
- }
-
- /**
- * Provisions/deprovisions required resources for an environment setting based on current state of the
- * lab/environment setting.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param publishPayload Payload for Publish operation on EnvironmentSetting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the response.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response publishWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- PublishPayload publishPayload,
- Context context) {
- return publishWithResponseAsync(
- resourceGroupName, labAccountName, labName, environmentSettingName, publishPayload, context)
- .block();
- }
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono>> startWithResponseAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service
- .start(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- accept,
- context))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono>> startWithResponseAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (this.client.getSubscriptionId() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getSubscriptionId() is required and cannot be null."));
- }
- if (resourceGroupName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
- }
- if (labAccountName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labAccountName is required and cannot be null."));
- }
- if (labName == null) {
- return Mono.error(new IllegalArgumentException("Parameter labName is required and cannot be null."));
- }
- if (environmentSettingName == null) {
- return Mono
- .error(
- new IllegalArgumentException("Parameter environmentSettingName is required and cannot be null."));
- }
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service
- .start(
- this.client.getEndpoint(),
- this.client.getSubscriptionId(),
- resourceGroupName,
- labAccountName,
- labName,
- environmentSettingName,
- this.client.getApiVersion(),
- accept,
- context);
- }
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private PollerFlux, Void> beginStartAsync(
- String resourceGroupName, String labAccountName, String labName, String environmentSettingName) {
- Mono>> mono =
- startWithResponseAsync(resourceGroupName, labAccountName, labName, environmentSettingName);
- return this
- .client
- .getLroResult(mono, this.client.getHttpPipeline(), Void.class, Void.class, Context.NONE);
- }
-
- /**
- * Starts a template by starting all resources inside the template. This operation can take a while to complete.
- *
- * @param resourceGroupName The name of the resource group.
- * @param labAccountName The name of the lab Account.
- * @param labName The name of the lab.
- * @param environmentSettingName The name of the environment Setting.
- * @param context The context to associate with this operation.
- * @throws IllegalArgumentException thrown if parameters fail the validation.
- * @throws ManagementException thrown if the request is rejected by server.
- * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
- * @return the completion.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private PollerFlux, Void> beginStartAsync(
- String resourceGroupName,
- String labAccountName,
- String labName,
- String environmentSettingName,
- Context context) {
- context = this.client.mergeContext(context);
- Mono