From 79558e0044f2908fdbf695139c8d0defecc995ce Mon Sep 17 00:00:00 2001
From: Azure SDK Bot <53356347+azure-sdk@users.noreply.github.com>
Date: Sun, 16 Jan 2022 20:05:18 -0800
Subject: [PATCH] [Automation] Generate Fluent Lite from
labservices#package-preview-2021-11 (#26530)
---
.../CHANGELOG.md | 581 ++-
.../README.md | 13 +-
.../SAMPLE.md | 1118 ++++++
.../azure-resourcemanager-labservices/pom.xml | 98 +-
...bsManager.java => LabServicesManager.java} | 199 +-
.../fluent/EnvironmentSettingsClient.java | 530 ---
.../fluent/EnvironmentsClient.java | 609 ----
.../fluent/GalleryImagesClient.java | 188 -
.../labservices/fluent/GlobalUsersClient.java | 404 ---
.../labservices/fluent/ImagesClient.java | 147 +
.../labservices/fluent/LabAccountsClient.java | 274 --
.../labservices/fluent/LabPlansClient.java | 351 ++
...LabsClient.java => LabServicesClient.java} | 65 +-
.../labservices/fluent/LabsClient.java | 362 +-
.../fluent/OperationResultsClient.java | 39 +
.../labservices/fluent/OperationsClient.java | 25 +-
.../labservices/fluent/SchedulesClient.java | 223 ++
...rOperationsClient.java => SkusClient.java} | 19 +-
.../labservices/fluent/UsagesClient.java | 40 +
.../labservices/fluent/UsersClient.java | 346 +-
.../fluent/VirtualMachinesClient.java | 421 +++
.../fluent/models/EnvironmentInner.java | 269 --
.../models/EnvironmentSettingInner.java | 269 --
.../fluent/models/GalleryImageInner.java | 286 --
.../models/GetEnvironmentResponseInner.java | 43 -
.../GetPersonalPreferencesResponseInner.java | 77 -
.../GetRegionalAvailabilityResponseInner.java | 56 -
.../labservices/fluent/models/ImageInner.java | 240 ++
.../fluent/models/ImageProperties.java | 275 ++
.../fluent/models/ImageUpdateProperties.java | 51 +
.../fluent/models/LabAccountInner.java | 158 -
.../labservices/fluent/models/LabInner.java | 321 +-
.../fluent/models/LabPlanInner.java | 271 ++
.../fluent/models/LabPlanProperties.java | 96 +
.../models/LabPlanUpdateProperties.java | 247 ++
.../fluent/models/LabProperties.java | 152 +
.../fluent/models/LabServicesSkuInner.java | 203 ++
.../fluent/models/LabUpdateProperties.java | 265 ++
.../models/ListEnvironmentsResponseInner.java | 55 -
.../fluent/models/ListLabsResponseInner.java | 55 -
.../OperationBatchStatusResponseInner.java | 44 -
.../fluent/models/OperationInner.java | 125 +
.../fluent/models/OperationMetadataInner.java | 80 -
.../fluent/models/OperationResultInner.java | 144 +-
.../models/OperationStatusResponseInner.java | 39 -
.../fluent/models/ScheduleInner.java | 194 +
.../fluent/models/ScheduleProperties.java | 79 +
.../models/ScheduleUpdateProperties.java | 165 +
.../labservices/fluent/models/UsageInner.java | 159 +
.../labservices/fluent/models/UserInner.java | 190 +-
.../fluent/models/UserProperties.java | 159 +
.../fluent/models/UserUpdateProperties.java | 54 +
.../fluent/models/VirtualMachineInner.java | 113 +
.../models/VirtualMachineProperties.java | 106 +
.../fluent/models/package-info.java | 2 +-
.../labservices/fluent/package-info.java | 2 +-
.../implementation/EnvironmentImpl.java | 379 --
.../EnvironmentSettingImpl.java | 357 --
.../EnvironmentSettingsClientImpl.java | 2731 --------------
.../EnvironmentSettingsImpl.java | 323 --
.../EnvironmentsClientImpl.java | 3144 -----------------
.../implementation/EnvironmentsImpl.java | 428 ---
.../implementation/GalleryImageImpl.java | 284 --
.../implementation/GalleryImagesImpl.java | 200 --
.../GetEnvironmentResponseImpl.java | 34 -
.../GetPersonalPreferencesResponseImpl.java | 44 -
.../GetRegionalAvailabilityResponseImpl.java | 41 -
.../implementation/GlobalUsersClientImpl.java | 1908 ----------
.../implementation/GlobalUsersImpl.java | 237 --
.../labservices/implementation/ImageImpl.java | 228 ++
.../implementation/ImagesClientImpl.java | 966 +++++
.../implementation/ImagesImpl.java | 130 +
.../implementation/LabAccountImpl.java | 251 --
.../implementation/LabAccountsImpl.java | 214 --
.../labservices/implementation/LabImpl.java | 195 +-
.../implementation/LabPlanImpl.java | 293 ++
...lientImpl.java => LabPlansClientImpl.java} | 1415 ++++----
.../implementation/LabPlansImpl.java | 179 +
...der.java => LabServicesClientBuilder.java} | 44 +-
...ntImpl.java => LabServicesClientImpl.java} | 156 +-
.../implementation/LabServicesSkuImpl.java | 95 +
.../implementation/LabsClientImpl.java | 1667 +++++----
.../labservices/implementation/LabsImpl.java | 114 +-
.../ListEnvironmentsResponseImpl.java | 41 -
.../implementation/ListLabsResponseImpl.java | 40 -
.../OperationBatchStatusResponseImpl.java | 41 -
.../implementation/OperationImpl.java | 50 +
.../implementation/OperationMetadataImpl.java | 37 -
.../implementation/OperationResultImpl.java | 34 +-
.../OperationResultsClientImpl.java | 202 ++
.../implementation/OperationResultsImpl.java | 59 +
.../OperationStatusResponseImpl.java | 33 -
.../implementation/OperationsClientImpl.java | 242 +-
.../implementation/OperationsImpl.java | 38 +-
.../ProviderOperationsImpl.java | 46 -
.../implementation/ScheduleImpl.java | 215 ++
...ientImpl.java => SchedulesClientImpl.java} | 1010 +++---
.../implementation/SchedulesImpl.java | 189 +
...onsClientImpl.java => SkusClientImpl.java} | 150 +-
.../labservices/implementation/SkusImpl.java | 45 +
.../labservices/implementation/UsageImpl.java | 49 +
.../implementation/UsagesClientImpl.java | 341 ++
.../implementation/UsagesImpl.java | 46 +
.../labservices/implementation/UserImpl.java | 139 +-
.../implementation/UsersClientImpl.java | 1402 +++++---
.../labservices/implementation/UsersImpl.java | 99 +-
.../implementation/VirtualMachineImpl.java | 69 +
.../VirtualMachinesClientImpl.java | 2062 +++++++++++
.../implementation/VirtualMachinesImpl.java | 117 +
.../implementation/package-info.java | 2 +-
.../labservices/models/ActionType.java | 31 +
.../labservices/models/AddRemove.java | 34 -
.../labservices/models/AddUsersPayload.java | 56 -
.../models/AutoShutdownProfile.java | 191 +
.../models/ConfigurationState.java | 34 -
.../labservices/models/ConnectionProfile.java | 128 +
.../labservices/models/ConnectionType.java | 50 +
.../models/CreateLabProperties.java | 172 -
.../labservices/models/CreateOption.java | 47 +
...erenceVmFragment.java => Credentials.java} | 35 +-
.../labservices/models/EnableState.java | 47 +
.../labservices/models/Environment.java | 431 ---
.../models/EnvironmentDetails.java | 171 -
.../models/EnvironmentFragment.java | 123 -
.../models/EnvironmentOperationsPayload.java | 56 -
.../models/EnvironmentSetting.java | 481 ---
.../EnvironmentSettingCreationParameters.java | 60 -
.../models/EnvironmentSettingFragment.java | 201 --
.../models/EnvironmentSettings.java | 313 --
.../labservices/models/EnvironmentSize.java | 134 -
.../models/EnvironmentSizeFragment.java | 80 -
.../labservices/models/Environments.java | 361 --
.../labservices/models/GalleryImage.java | 394 ---
.../models/GalleryImageFragment.java | 172 -
.../models/GetEnvironmentResponse.java | 24 -
.../GetPersonalPreferencesResponse.java | 32 -
.../GetRegionalAvailabilityResponse.java | 25 -
.../labservices/models/GlobalUsers.java | 272 --
.../labservices/models/Image.java | 274 ++
...mageReference.java => ImageReference.java} | 111 +-
.../labservices/models/ImageUpdate.java | 66 +
.../labservices/models/Images.java | 100 +
.../labservices/models/InvitationState.java | 53 +
...vironmentsPayload.java => InviteBody.java} | 30 +-
.../labservices/models/Lab.java | 338 +-
.../labservices/models/LabAccount.java | 338 --
.../models/LabAccountFragment.java | 120 -
.../labservices/models/LabAccounts.java | 220 --
.../models/LabCreationParameters.java | 50 -
.../labservices/models/LabDetails.java | 118 -
.../labservices/models/LabFragment.java | 174 -
.../labservices/models/LabNetworkProfile.java | 102 +
.../labservices/models/LabPlan.java | 475 +++
.../models/LabPlanNetworkProfile.java | 50 +
.../labservices/models/LabPlanUpdate.java | 228 ++
.../labservices/models/LabPlans.java | 191 +
.../labservices/models/LabServicesSku.java | 88 +
.../models/LabServicesSkuCapabilities.java | 54 +
.../models/LabServicesSkuCapacity.java | 84 +
.../models/LabServicesSkuCost.java | 69 +
.../models/LabServicesSkuRestrictions.java | 70 +
.../models/LabServicesSkuTier.java | 34 +
.../labservices/models/LabState.java | 56 +
.../labservices/models/LabUpdate.java | 245 ++
.../labservices/models/LabUserAccessMode.java | 34 -
.../labservices/models/Labs.java | 161 +-
.../models/LatestOperationResult.java | 114 -
.../models/ListEnvironmentsResponse.java | 25 -
.../labservices/models/ListLabsResponse.java | 25 -
.../labservices/models/ListUsagesResult.java | 59 +
.../labservices/models/ManagedLabVmSize.java | 37 -
.../labservices/models/NetworkInterface.java | 84 -
.../labservices/models/Operation.java | 56 +
.../models/OperationBatchStatusPayload.java | 57 -
.../models/OperationBatchStatusResponse.java | 25 -
.../OperationBatchStatusResponseItem.java | 54 -
.../labservices/models/OperationDisplay.java | 93 +
.../labservices/models/OperationError.java | 76 -
...onResult.java => OperationListResult.java} | 38 +-
.../labservices/models/OperationMetadata.java | 31 -
.../models/OperationMetadataDisplay.java | 128 -
.../labservices/models/OperationResult.java | 44 +-
.../labservices/models/OperationResults.java | 34 +
.../labservices/models/OperationStatus.java | 56 +
.../models/OperationStatusPayload.java | 56 -
.../models/OperationStatusResponse.java | 24 -
.../labservices/models/Operations.java | 19 +-
.../labservices/models/Origin.java | 37 +
.../labservices/models/OsState.java | 47 +
.../labservices/models/OsType.java | 47 +
.../labservices/models/PagedImages.java | 59 +
.../labservices/models/PagedLabPlans.java | 59 +
.../models/PagedLabServicesSkus.java | 59 +
...ithContinuationLab.java => PagedLabs.java} | 44 +-
.../labservices/models/PagedSchedules.java | 59 +
...hContinuationUser.java => PagedUsers.java} | 44 +-
.../models/PagedVirtualMachines.java | 59 +
.../PersonalPreferencesOperationsPayload.java | 102 -
.../labservices/models/ProvisioningState.java | 59 +
.../labservices/models/PublishPayload.java | 50 -
.../labservices/models/PublishingState.java | 43 -
.../models/RecurrenceFrequency.java | 47 +
.../labservices/models/RecurrencePattern.java | 146 +
.../labservices/models/ReferenceVm.java | 115 -
.../models/RegionalAvailability.java | 80 -
.../labservices/models/RegistrationState.java | 47 +
...Parameters.java => ResetPasswordBody.java} | 34 +-
.../models/ResetPasswordPayload.java | 108 -
.../labservices/models/ResourceSet.java | 76 -
.../models/ResourceSetFragment.java | 76 -
.../ResourceSettingCreationParameters.java | 173 -
.../labservices/models/ResourceSettings.java | 157 -
.../models/ResourceSettingsFragment.java | 108 -
.../ResponseWithContinuationEnvironment.java | 81 -
...nseWithContinuationEnvironmentSetting.java | 81 -
.../ResponseWithContinuationGalleryImage.java | 81 -
.../ResponseWithContinuationLabAccount.java | 81 -
.../models/RestrictionReasonCode.java | 35 +
.../labservices/models/RestrictionType.java | 31 +
.../labservices/models/RosterProfile.java | 160 +
.../labservices/models/SaveImageBody.java | 76 +
.../labservices/models/ScaleType.java | 37 +
.../labservices/models/Schedule.java | 294 ++
.../labservices/models/ScheduleUpdate.java | 163 +
.../{GalleryImages.java => Schedules.java} | 121 +-
...isterPayload.java => SecurityProfile.java} | 37 +-
.../models/ShutdownOnIdleMode.java | 50 +
.../labservices/models/SizeAvailability.java | 76 -
.../models/SizeConfigurationProperties.java | 57 -
.../labservices/models/SizeInfo.java | 133 -
.../labservices/models/SizeInfoFragment.java | 133 -
.../labservices/models/Sku.java | 171 +
.../labservices/models/SkuTier.java | 53 +
.../{ProviderOperations.java => Skus.java} | 17 +-
.../labservices/models/SupportInfo.java | 128 +
.../models/TrackedResourceUpdate.java | 51 +
.../labservices/models/Usage.java | 52 +
.../labservices/models/UsageName.java | 76 +
.../labservices/models/UsageUnit.java | 31 +
.../labservices/models/Usages.java | 35 +
.../labservices/models/User.java | 209 +-
.../labservices/models/UserFragment.java | 94 -
.../labservices/models/UserUpdate.java | 69 +
.../labservices/models/Users.java | 138 +-
.../labservices/models/VirtualMachine.java | 81 +
.../VirtualMachineAdditionalCapabilities.java | 50 +
.../VirtualMachineConnectionProfile.java | 135 +
.../models/VirtualMachineDetails.java | 114 -
.../models/VirtualMachineProfile.java | 293 ++
.../models/VirtualMachineState.java | 62 +
.../models/VirtualMachineType.java | 47 +
.../labservices/models/VirtualMachines.java | 222 ++
.../labservices/models/VmStateDetails.java | 88 -
.../labservices/models/WeekDay.java | 62 +
.../labservices/models/package-info.java | 2 +-
.../labservices/package-info.java | 2 +-
.../ImagesCreateOrUpdateSamples.java | 27 +
.../generated/ImagesGetSamples.java | 22 +
.../generated/ImagesListByLabPlanSamples.java | 22 +
.../generated/ImagesUpdateSamples.java | 26 +
.../LabPlansCreateOrUpdateSamples.java | 60 +
.../generated/LabPlansDeleteSamples.java | 22 +
.../LabPlansGetByResourceGroupSamples.java | 22 +
.../LabPlansListByResourceGroupSamples.java | 22 +
.../generated/LabPlansListSamples.java | 22 +
.../generated/LabPlansSaveImageSamples.java | 32 +
.../generated/LabPlansUpdateSamples.java | 35 +
.../generated/LabsCreateOrUpdateSamples.java | 78 +
.../generated/LabsDeleteSamples.java | 22 +
.../LabsGetByResourceGroupSamples.java | 22 +
.../LabsListByResourceGroupSamples.java | 22 +
.../generated/LabsListSamples.java | 22 +
.../generated/LabsPublishSamples.java | 22 +
.../generated/LabsSyncGroupSamples.java | 22 +
.../generated/LabsUpdateSamples.java | 26 +
.../generated/OperationResultsGetSamples.java | 22 +
.../generated/OperationsListSamples.java | 22 +
.../SchedulesCreateOrUpdateSamples.java | 38 +
.../generated/SchedulesDeleteSamples.java | 22 +
.../generated/SchedulesGetSamples.java | 22 +
.../generated/SchedulesListByLabSamples.java | 22 +
.../generated/SchedulesUpdateSamples.java | 35 +
.../generated/SkusListSamples.java | 22 +
.../UsagesListByLocationSamples.java | 22 +
.../generated/UsersCreateOrUpdateSamples.java | 28 +
.../generated/UsersDeleteSamples.java | 22 +
.../generated/UsersGetSamples.java | 22 +
.../generated/UsersInviteSamples.java | 30 +
.../generated/UsersListByLabSamples.java | 22 +
.../generated/UsersUpdateSamples.java | 25 +
.../generated/VirtualMachinesGetSamples.java | 22 +
.../VirtualMachinesListByLabSamples.java | 22 +
.../VirtualMachinesRedeploySamples.java | 22 +
.../VirtualMachinesReimageSamples.java | 22 +
.../VirtualMachinesResetPasswordSamples.java | 30 +
.../VirtualMachinesStartSamples.java | 22 +
.../generated/VirtualMachinesStopSamples.java | 22 +
297 files changed, 24166 insertions(+), 26038 deletions(-)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/SAMPLE.md
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/{ManagedLabsManager.java => LabServicesManager.java} (60%)
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/EnvironmentSettingsClient.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/EnvironmentsClient.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/GalleryImagesClient.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/GlobalUsersClient.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/ImagesClient.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabAccountsClient.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabPlansClient.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/{ManagedLabsClient.java => LabServicesClient.java} (57%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationResultsClient.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/SchedulesClient.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/{ProviderOperationsClient.java => SkusClient.java} (68%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/UsagesClient.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/VirtualMachinesClient.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/EnvironmentInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/EnvironmentSettingInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GalleryImageInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetEnvironmentResponseInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetPersonalPreferencesResponseInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/GetRegionalAvailabilityResponseInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageUpdateProperties.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabAccountInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanUpdateProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabServicesSkuInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabUpdateProperties.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ListEnvironmentsResponseInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ListLabsResponseInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationBatchStatusResponseInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationMetadataInner.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/OperationStatusResponseInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleUpdateProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UsageInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserUpdateProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineInner.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineProperties.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingsClientImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentSettingsImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentsClientImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/EnvironmentsImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/GalleryImageImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/GalleryImagesImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/GetEnvironmentResponseImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/GetPersonalPreferencesResponseImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/GetRegionalAvailabilityResponseImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/GlobalUsersClientImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/GlobalUsersImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/ImageImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/ImagesClientImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/ImagesImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/LabAccountImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/LabAccountsImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/LabPlanImpl.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/{LabAccountsClientImpl.java => LabPlansClientImpl.java} (53%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/LabPlansImpl.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/{ManagedLabsClientBuilder.java => LabServicesClientBuilder.java} (74%)
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/{ManagedLabsClientImpl.java => LabServicesClientImpl.java} (74%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/LabServicesSkuImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/ListEnvironmentsResponseImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/ListLabsResponseImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/OperationBatchStatusResponseImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/OperationImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/OperationMetadataImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/OperationResultsClientImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/OperationResultsImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/OperationStatusResponseImpl.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/ProviderOperationsImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/ScheduleImpl.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/{GalleryImagesClientImpl.java => SchedulesClientImpl.java} (51%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/SchedulesImpl.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/{ProviderOperationsClientImpl.java => SkusClientImpl.java} (60%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/SkusImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/UsageImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/UsagesClientImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/UsagesImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/VirtualMachineImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/VirtualMachinesClientImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/implementation/VirtualMachinesImpl.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ActionType.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/AddRemove.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/AddUsersPayload.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/AutoShutdownProfile.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ConfigurationState.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ConnectionProfile.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ConnectionType.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/CreateLabProperties.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/CreateOption.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{ReferenceVmFragment.java => Credentials.java} (54%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnableState.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Environment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentDetails.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentFragment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentOperationsPayload.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentSetting.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentSettingCreationParameters.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentSettingFragment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentSettings.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentSize.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/EnvironmentSizeFragment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Environments.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/GalleryImage.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/GalleryImageFragment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/GetEnvironmentResponse.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/GetPersonalPreferencesResponse.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/GetRegionalAvailabilityResponse.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/GlobalUsers.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Image.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{GalleryImageReference.java => ImageReference.java} (51%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ImageUpdate.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Images.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/InvitationState.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{ListEnvironmentsPayload.java => InviteBody.java} (53%)
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabAccount.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabAccountFragment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabAccounts.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabCreationParameters.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabDetails.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabFragment.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabNetworkProfile.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabPlan.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabPlanNetworkProfile.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabPlanUpdate.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabPlans.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabServicesSku.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabServicesSkuCapabilities.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabServicesSkuCapacity.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabServicesSkuCost.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabServicesSkuRestrictions.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabServicesSkuTier.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabState.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabUpdate.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LabUserAccessMode.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/LatestOperationResult.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ListEnvironmentsResponse.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ListLabsResponse.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ListUsagesResult.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ManagedLabVmSize.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/NetworkInterface.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Operation.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationBatchStatusPayload.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationBatchStatusResponse.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationBatchStatusResponseItem.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationDisplay.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationError.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{ProviderOperationResult.java => OperationListResult.java} (59%)
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationMetadata.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationMetadataDisplay.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationResults.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationStatus.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationStatusPayload.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OperationStatusResponse.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Origin.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OsState.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/OsType.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/PagedImages.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/PagedLabPlans.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/PagedLabServicesSkus.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{ResponseWithContinuationLab.java => PagedLabs.java} (50%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/PagedSchedules.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{ResponseWithContinuationUser.java => PagedUsers.java} (50%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/PagedVirtualMachines.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/PersonalPreferencesOperationsPayload.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ProvisioningState.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/PublishPayload.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/PublishingState.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/RecurrenceFrequency.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/RecurrencePattern.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ReferenceVm.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/RegionalAvailability.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/RegistrationState.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{ReferenceVmCreationParameters.java => ResetPasswordBody.java} (57%)
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResetPasswordPayload.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResourceSet.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResourceSetFragment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResourceSettingCreationParameters.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResourceSettings.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResourceSettingsFragment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResponseWithContinuationEnvironment.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResponseWithContinuationEnvironmentSetting.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResponseWithContinuationGalleryImage.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ResponseWithContinuationLabAccount.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/RestrictionReasonCode.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/RestrictionType.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/RosterProfile.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/SaveImageBody.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ScaleType.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Schedule.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ScheduleUpdate.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{GalleryImages.java => Schedules.java} (51%)
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{RegisterPayload.java => SecurityProfile.java} (50%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/ShutdownOnIdleMode.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/SizeAvailability.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/SizeConfigurationProperties.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/SizeInfo.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/SizeInfoFragment.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Sku.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/SkuTier.java
rename sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/{ProviderOperations.java => Skus.java} (66%)
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/SupportInfo.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/TrackedResourceUpdate.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Usage.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/UsageName.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/UsageUnit.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/Usages.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/UserFragment.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/UserUpdate.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VirtualMachine.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VirtualMachineAdditionalCapabilities.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VirtualMachineConnectionProfile.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VirtualMachineDetails.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VirtualMachineProfile.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VirtualMachineState.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VirtualMachineType.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VirtualMachines.java
delete mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/VmStateDetails.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/models/WeekDay.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/ImagesCreateOrUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/ImagesGetSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/ImagesListByLabPlanSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/ImagesUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabPlansCreateOrUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabPlansDeleteSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabPlansGetByResourceGroupSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabPlansListByResourceGroupSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabPlansListSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabPlansSaveImageSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabPlansUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabsCreateOrUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabsDeleteSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabsGetByResourceGroupSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabsListByResourceGroupSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabsListSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabsPublishSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabsSyncGroupSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/LabsUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/OperationResultsGetSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/OperationsListSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/SchedulesCreateOrUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/SchedulesDeleteSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/SchedulesGetSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/SchedulesListByLabSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/SchedulesUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/SkusListSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/UsagesListByLocationSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/UsersCreateOrUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/UsersDeleteSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/UsersGetSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/UsersInviteSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/UsersListByLabSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/UsersUpdateSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/VirtualMachinesGetSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/VirtualMachinesListByLabSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/VirtualMachinesRedeploySamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/VirtualMachinesReimageSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/VirtualMachinesResetPasswordSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/VirtualMachinesStartSamples.java
create mode 100644 sdk/labservices/azure-resourcemanager-labservices/src/samples/java/com/azure/resourcemanager/labservices/generated/VirtualMachinesStopSamples.java
diff --git a/sdk/labservices/azure-resourcemanager-labservices/CHANGELOG.md b/sdk/labservices/azure-resourcemanager-labservices/CHANGELOG.md
index 2f20902d274ed..5acad6d96d299 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/CHANGELOG.md
+++ b/sdk/labservices/azure-resourcemanager-labservices/CHANGELOG.md
@@ -1,7 +1,586 @@
# Release History
-## 1.0.0-beta.2 (Unreleased)
+## 1.0.0-beta.2 (2022-01-17)
+- Azure Resource Manager LabServices client library for Java. This package contains Microsoft Azure SDK for LabServices Management SDK. REST API for managing Azure Lab Services images. Package tag package-preview-2021-11. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+
+### Breaking Changes
+
+* `models.GalleryImage$DefinitionStages` was removed
+
+* `ManagedLabsManager` was removed
+
+* `models.LabAccount$UpdateStages` was removed
+
+* `models.SizeInfoFragment` was removed
+
+* `models.EnvironmentFragment` was removed
+
+* `models.UserFragment` was removed
+
+* `models.ResponseWithContinuationUser` was removed
+
+* `models.ResourceSettingsFragment` was removed
+
+* `models.EnvironmentSettings` was removed
+
+* `models.GetPersonalPreferencesResponse` was removed
+
+* `models.ConfigurationState` was removed
+
+* `models.EnvironmentOperationsPayload` was removed
+
+* `models.EnvironmentSettingCreationParameters` was removed
+
+* `models.CreateLabProperties` was removed
+
+* `models.EnvironmentDetails` was removed
+
+* `models.SizeAvailability` was removed
+
+* `models.LabUserAccessMode` was removed
+
+* `models.ResponseWithContinuationLab` was removed
+
+* `models.EnvironmentSetting$Definition` was removed
+
+* `models.ProviderOperationResult` was removed
+
+* `models.ListLabsResponse` was removed
+
+* `models.LabAccounts` was removed
+
+* `models.Environments` was removed
+
+* `models.ResourceSettingCreationParameters` was removed
+
+* `models.GalleryImageFragment` was removed
+
+* `models.Environment$Update` was removed
+
+* `models.AddUsersPayload` was removed
+
+* `models.LabAccount` was removed
+
+* `models.Environment$DefinitionStages` was removed
+
+* `models.ManagedLabVmSize` was removed
+
+* `models.GalleryImages` was removed
+
+* `models.RegisterPayload` was removed
+
+* `models.EnvironmentSetting$Update` was removed
+
+* `models.ResponseWithContinuationEnvironment` was removed
+
+* `models.GetRegionalAvailabilityResponse` was removed
+
+* `models.ProviderOperations` was removed
+
+* `models.EnvironmentSetting` was removed
+
+* `models.Environment$Definition` was removed
+
+* `models.LabAccountFragment` was removed
+
+* `models.OperationStatusPayload` was removed
+
+* `models.OperationMetadata` was removed
+
+* `ManagedLabsManager$Configurable` was removed
+
+* `models.LabAccount$Update` was removed
+
+* `models.PublishPayload` was removed
+
+* `models.GalleryImageReference` was removed
+
+* `models.ResourceSettings` was removed
+
+* `models.GalleryImage$Update` was removed
+
+* `models.GetEnvironmentResponse` was removed
+
+* `models.SizeInfo` was removed
+
+* `models.EnvironmentSizeFragment` was removed
+
+* `models.PersonalPreferencesOperationsPayload` was removed
+
+* `models.AddRemove` was removed
+
+* `models.LabAccount$Definition` was removed
+
+* `models.OperationBatchStatusResponse` was removed
+
+* `models.EnvironmentSize` was removed
+
+* `models.OperationStatusResponse` was removed
+
+* `models.ResetPasswordPayload` was removed
+
+* `models.GlobalUsers` was removed
+
+* `models.ReferenceVm` was removed
+
+* `models.VirtualMachineDetails` was removed
+
+* `models.ListEnvironmentsResponse` was removed
+
+* `models.Environment$UpdateStages` was removed
+
+* `models.GalleryImage$Definition` was removed
+
+* `models.OperationError` was removed
+
+* `models.EnvironmentSettingFragment` was removed
+
+* `models.ReferenceVmCreationParameters` was removed
+
+* `models.PublishingState` was removed
+
+* `models.EnvironmentSetting$UpdateStages` was removed
+
+* `models.RegionalAvailability` was removed
+
+* `models.LatestOperationResult` was removed
+
+* `models.EnvironmentSetting$DefinitionStages` was removed
+
+* `models.ResponseWithContinuationGalleryImage` was removed
+
+* `models.OperationBatchStatusPayload` was removed
+
+* `models.GalleryImage$UpdateStages` was removed
+
+* `models.OperationBatchStatusResponseItem` was removed
+
+* `models.GalleryImage` was removed
+
+* `models.NetworkInterface` was removed
+
+* `models.LabDetails` was removed
+
+* `models.ListEnvironmentsPayload` was removed
+
+* `models.ResponseWithContinuationLabAccount` was removed
+
+* `models.ResponseWithContinuationEnvironmentSetting` was removed
+
+* `models.VmStateDetails` was removed
+
+* `models.LabCreationParameters` was removed
+
+* `models.LabAccount$DefinitionStages` was removed
+
+* `models.ResourceSetFragment` was removed
+
+* `models.SizeConfigurationProperties` was removed
+
+* `models.Environment` was removed
+
+* `models.LabFragment` was removed
+
+* `models.OperationMetadataDisplay` was removed
+
+* `models.ReferenceVmFragment` was removed
+
+* `models.ResourceSet` was removed
+
+#### `models.Lab$DefinitionStages` was modified
+
+* `withExistingLabaccount(java.lang.String,java.lang.String)` was removed in stage 2
+
+#### `models.User$DefinitionStages` was modified
+
+* `withRegion(java.lang.String)` was removed in stage 1
+* `withExistingLab(java.lang.String,java.lang.String,java.lang.String)` was removed in stage 1
+* `withRegion(com.azure.core.management.Region)` was removed in stage 1
+* Stage 2 was added
+
+#### `models.Lab$Update` was modified
+
+* `withTags(java.util.Map)` was removed
+* `withMaxUsersInLab(java.lang.Integer)` was removed
+* `withUsageQuota(java.time.Duration)` was removed
+* `withUserAccessMode(models.LabUserAccessMode)` was removed
+* `withUniqueIdentifier(java.lang.String)` was removed
+* `withProvisioningState(java.lang.String)` was removed
+
+#### `models.User$Update` was modified
+
+* `withUniqueIdentifier(java.lang.String)` was removed
+* `withProvisioningState(java.lang.String)` was removed
+* `withTags(java.util.Map)` was removed
+
+#### `models.OperationResult` was modified
+
+* `models.OperationError error()` -> `com.azure.core.management.exception.ManagementError error()`
+* `java.lang.String status()` -> `models.OperationStatus status()`
+
+#### `models.Users` was modified
+
+* `getByIdWithResponse(java.lang.String,java.lang.String,com.azure.core.util.Context)` was removed
+* `get(java.lang.String,java.lang.String,java.lang.String,java.lang.String)` was removed
+* `delete(java.lang.String,java.lang.String,java.lang.String,java.lang.String,com.azure.core.util.Context)` was removed
+* `list(java.lang.String,java.lang.String,java.lang.String)` was removed
+* `list(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.Integer,java.lang.String,com.azure.core.util.Context)` was removed
+* `delete(java.lang.String,java.lang.String,java.lang.String,java.lang.String)` was removed
+* `getWithResponse(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,com.azure.core.util.Context)` was removed
+
+#### `models.Operations` was modified
+
+* `get(java.lang.String,java.lang.String)` was removed
+* `getWithResponse(java.lang.String,java.lang.String,com.azure.core.util.Context)` was removed
+
+#### `models.Lab$Definition` was modified
+
+* `withUserAccessMode(models.LabUserAccessMode)` was removed
+* `withExistingLabaccount(java.lang.String,java.lang.String)` was removed
+* `withMaxUsersInLab(java.lang.Integer)` was removed
+* `withUsageQuota(java.time.Duration)` was removed
+* `withProvisioningState(java.lang.String)` was removed
+* `withUniqueIdentifier(java.lang.String)` was removed
+
+#### `models.User` was modified
+
+* `tags()` was removed
+* `familyName()` was removed
+* `regionName()` was removed
+* `java.lang.String provisioningState()` -> `models.ProvisioningState provisioningState()`
+* `tenantId()` was removed
+* `latestOperationResult()` was removed
+* `uniqueIdentifier()` was removed
+* `location()` was removed
+* `givenName()` was removed
+* `region()` was removed
+
+#### `models.Lab` was modified
+
+* `register()` was removed
+* `createdDate()` was removed
+* `createdByObjectId()` was removed
+* `java.lang.String provisioningState()` -> `models.ProvisioningState provisioningState()`
+* `maxUsersInLab()` was removed
+* `userQuota()` was removed
+* `registerWithResponse(com.azure.core.util.Context)` was removed
+* `usageQuota()` was removed
+* `userAccessMode()` was removed
+* `createdByUserPrincipalName()` was removed
+* `uniqueIdentifier()` was removed
+* `latestOperationResult()` was removed
+* `invitationCode()` was removed
+* `addUsersWithResponse(models.AddUsersPayload,com.azure.core.util.Context)` was removed
+* `addUsers(models.AddUsersPayload)` was removed
+
+#### `models.Labs` was modified
+
+* `addUsersWithResponse(java.lang.String,java.lang.String,java.lang.String,models.AddUsersPayload,com.azure.core.util.Context)` was removed
+* `list(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.Integer,java.lang.String,com.azure.core.util.Context)` was removed
+* `register(java.lang.String,java.lang.String,java.lang.String)` was removed
+* `addUsers(java.lang.String,java.lang.String,java.lang.String,models.AddUsersPayload)` was removed
+* `delete(java.lang.String,java.lang.String,java.lang.String)` was removed
+* `getWithResponse(java.lang.String,java.lang.String,java.lang.String,java.lang.String,com.azure.core.util.Context)` was removed
+* `delete(java.lang.String,java.lang.String,java.lang.String,com.azure.core.util.Context)` was removed
+* `registerWithResponse(java.lang.String,java.lang.String,java.lang.String,com.azure.core.util.Context)` was removed
+* `list(java.lang.String,java.lang.String)` was removed
+* `get(java.lang.String,java.lang.String,java.lang.String)` was removed
+* `getByIdWithResponse(java.lang.String,java.lang.String,com.azure.core.util.Context)` was removed
+
+#### `models.User$Definition` was modified
+
+* `withTags(java.util.Map)` was removed
+* `withRegion(java.lang.String)` was removed
+* `withProvisioningState(java.lang.String)` was removed
+* `withUniqueIdentifier(java.lang.String)` was removed
+* `withExistingLab(java.lang.String,java.lang.String,java.lang.String)` was removed
+* `withRegion(com.azure.core.management.Region)` was removed
+
+### Features Added
+
+* `models.VirtualMachineAdditionalCapabilities` was added
+
+* `models.Usages` was added
+
+* `models.LabServicesSku` was added
+
+* `models.LabPlanNetworkProfile` was added
+
+* `models.InviteBody` was added
+
+* `models.LabPlan$UpdateStages` was added
+
+* `models.OperationResults` was added
+
+* `models.LabState` was added
+
+* `models.PagedVirtualMachines` was added
+
+* `models.SupportInfo` was added
+
+* `models.UsageName` was added
+
+* `models.LabUpdate` was added
+
+* `models.ResetPasswordBody` was added
+
+* `LabServicesManager` was added
+
+* `models.Schedule$Update` was added
+
+* `models.RestrictionReasonCode` was added
+
+* `models.LabPlan$Update` was added
+
+* `models.Image$UpdateStages` was added
+
+* `models.Images` was added
+
+* `models.PagedUsers` was added
+
+* `LabServicesManager$Configurable` was added
+
+* `models.Schedules` was added
+
+* `models.Operation` was added
+
+* `models.LabServicesSkuCapabilities` was added
+
+* `models.OperationDisplay` was added
+
+* `models.LabPlanUpdate` was added
+
+* `models.Schedule$UpdateStages` was added
+
+* `models.OperationListResult` was added
+
+* `models.VirtualMachineType` was added
+
+* `models.Sku` was added
+
+* `models.LabServicesSkuCost` was added
+
+* `models.UsageUnit` was added
+
+* `models.Credentials` was added
+
+* `models.RecurrenceFrequency` was added
+
+* `models.VirtualMachine` was added
+
+* `models.LabServicesSkuTier` was added
+
+* `models.LabPlan` was added
+
+* `models.Schedule$Definition` was added
+
+* `models.LabServicesSkuCapacity` was added
+
+* `models.PagedLabs` was added
+
+* `models.LabPlan$Definition` was added
+
+* `models.PagedSchedules` was added
+
+* `models.LabPlans` was added
+
+* `models.Image$Update` was added
+
+* `models.ProvisioningState` was added
+
+* `models.Schedule` was added
+
+* `models.VirtualMachineConnectionProfile` was added
+
+* `models.ConnectionType` was added
+
+* `models.OperationStatus` was added
+
+* `models.ScheduleUpdate` was added
+
+* `models.TrackedResourceUpdate` was added
+
+* `models.Usage` was added
+
+* `models.PagedLabServicesSkus` was added
+
+* `models.Image$DefinitionStages` was added
+
+* `models.SecurityProfile` was added
+
+* `models.UserUpdate` was added
+
+* `models.Schedule$DefinitionStages` was added
+
+* `models.ListUsagesResult` was added
+
+* `models.CreateOption` was added
+
+* `models.SkuTier` was added
+
+* `models.RecurrencePattern` was added
+
+* `models.PagedImages` was added
+
+* `models.WeekDay` was added
+
+* `models.Image$Definition` was added
+
+* `models.LabNetworkProfile` was added
+
+* `models.VirtualMachineState` was added
+
+* `models.RegistrationState` was added
+
+* `models.VirtualMachineProfile` was added
+
+* `models.ImageUpdate` was added
+
+* `models.Image` was added
+
+* `models.ShutdownOnIdleMode` was added
+
+* `models.OsState` was added
+
+* `models.Origin` was added
+
+* `models.SaveImageBody` was added
+
+* `models.ConnectionProfile` was added
+
+* `models.LabPlan$DefinitionStages` was added
+
+* `models.VirtualMachines` was added
+
+* `models.AutoShutdownProfile` was added
+
+* `models.OsType` was added
+
+* `models.RestrictionType` was added
+
+* `models.EnableState` was added
+
+* `models.ImageReference` was added
+
+* `models.LabServicesSkuRestrictions` was added
+
+* `models.RosterProfile` was added
+
+* `models.ActionType` was added
+
+* `models.InvitationState` was added
+
+* `models.PagedLabPlans` was added
+
+* `models.Skus` was added
+
+* `models.ScaleType` was added
+
+#### `models.Lab$Update` was modified
+
+* `withVirtualMachineProfile(models.VirtualMachineProfile)` was added
+* `withTitle(java.lang.String)` was added
+* `withTags(java.util.List)` was added
+* `withDescription(java.lang.String)` was added
+* `withConnectionProfile(models.ConnectionProfile)` was added
+* `withLabPlanId(java.lang.String)` was added
+* `withSecurityProfile(models.SecurityProfile)` was added
+* `withAutoShutdownProfile(models.AutoShutdownProfile)` was added
+* `withRosterProfile(models.RosterProfile)` was added
+
+#### `models.User$Update` was modified
+
+* `withAdditionalUsageQuota(java.time.Duration)` was added
+
+#### `models.OperationResult` was modified
+
+* `percentComplete()` was added
+* `id()` was added
+* `startTime()` was added
+* `name()` was added
+* `endTime()` was added
+
+#### `models.Users` was modified
+
+* `getByIdWithResponse(java.lang.String,com.azure.core.util.Context)` was added
+* `get(java.lang.String,java.lang.String,java.lang.String)` was added
+* `getWithResponse(java.lang.String,java.lang.String,java.lang.String,com.azure.core.util.Context)` was added
+* `delete(java.lang.String,java.lang.String,java.lang.String)` was added
+* `listByLab(java.lang.String,java.lang.String)` was added
+* `listByLab(java.lang.String,java.lang.String,java.lang.String,com.azure.core.util.Context)` was added
+* `invite(java.lang.String,java.lang.String,java.lang.String,models.InviteBody,com.azure.core.util.Context)` was added
+* `delete(java.lang.String,java.lang.String,java.lang.String,com.azure.core.util.Context)` was added
+* `invite(java.lang.String,java.lang.String,java.lang.String,models.InviteBody)` was added
+
+#### `models.Operations` was modified
+
+* `list()` was added
+* `list(com.azure.core.util.Context)` was added
+
+#### `models.Lab$Definition` was modified
+
+* `withTitle(java.lang.String)` was added
+* `withLabPlanId(java.lang.String)` was added
+* `withNetworkProfile(models.LabNetworkProfile)` was added
+* `withDescription(java.lang.String)` was added
+* `withAutoShutdownProfile(models.AutoShutdownProfile)` was added
+* `withVirtualMachineProfile(models.VirtualMachineProfile)` was added
+* `withSecurityProfile(models.SecurityProfile)` was added
+* `withExistingResourceGroup(java.lang.String)` was added
+* `withRosterProfile(models.RosterProfile)` was added
+* `withConnectionProfile(models.ConnectionProfile)` was added
+
+#### `models.User` was modified
+
+* `invitationSent()` was added
+* `invitationState()` was added
+* `invite(models.InviteBody,com.azure.core.util.Context)` was added
+* `invite(models.InviteBody)` was added
+* `registrationState()` was added
+* `displayName()` was added
+* `systemData()` was added
+* `additionalUsageQuota()` was added
+
+#### `models.Lab` was modified
+
+* `systemData()` was added
+* `connectionProfile()` was added
+* `syncGroup(com.azure.core.util.Context)` was added
+* `autoShutdownProfile()` was added
+* `state()` was added
+* `labPlanId()` was added
+* `publish(com.azure.core.util.Context)` was added
+* `rosterProfile()` was added
+* `networkProfile()` was added
+* `title()` was added
+* `publish()` was added
+* `securityProfile()` was added
+* `virtualMachineProfile()` was added
+* `syncGroup()` was added
+* `description()` was added
+
+#### `models.Labs` was modified
+
+* `syncGroup(java.lang.String,java.lang.String)` was added
+* `list(java.lang.String,com.azure.core.util.Context)` was added
+* `listByResourceGroup(java.lang.String,com.azure.core.util.Context)` was added
+* `getByResourceGroup(java.lang.String,java.lang.String)` was added
+* `syncGroup(java.lang.String,java.lang.String,com.azure.core.util.Context)` was added
+* `listByResourceGroup(java.lang.String)` was added
+* `deleteByResourceGroup(java.lang.String,java.lang.String)` was added
+* `list()` was added
+* `publish(java.lang.String,java.lang.String,com.azure.core.util.Context)` was added
+* `delete(java.lang.String,java.lang.String,com.azure.core.util.Context)` was added
+* `getByIdWithResponse(java.lang.String,com.azure.core.util.Context)` was added
+* `getByResourceGroupWithResponse(java.lang.String,java.lang.String,com.azure.core.util.Context)` was added
+* `publish(java.lang.String,java.lang.String)` was added
+
+#### `models.User$Definition` was modified
+
+* `withAdditionalUsageQuota(java.time.Duration)` was added
+* `withExistingLab(java.lang.String,java.lang.String)` was added
+* `withEmail(java.lang.String)` was added
## 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 db7667367c8b1..54e4970422aa0 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. REST API for managing Azure Lab Services images. Package tag package-preview-2021-11. 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,9 @@ See [API design][design] for general introduction on design and key concepts on
## Examples
+[Code snippets and samples](https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/labservices/azure-resourcemanager-labservices/SAMPLE.md)
+
+
## Troubleshooting
## Next steps
diff --git a/sdk/labservices/azure-resourcemanager-labservices/SAMPLE.md b/sdk/labservices/azure-resourcemanager-labservices/SAMPLE.md
new file mode 100644
index 0000000000000..c46de5140a0a4
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/SAMPLE.md
@@ -0,0 +1,1118 @@
+# Code snippets and samples
+
+
+## Images
+
+- [CreateOrUpdate](#images_createorupdate)
+- [Get](#images_get)
+- [ListByLabPlan](#images_listbylabplan)
+- [Update](#images_update)
+
+## LabPlans
+
+- [CreateOrUpdate](#labplans_createorupdate)
+- [Delete](#labplans_delete)
+- [GetByResourceGroup](#labplans_getbyresourcegroup)
+- [List](#labplans_list)
+- [ListByResourceGroup](#labplans_listbyresourcegroup)
+- [SaveImage](#labplans_saveimage)
+- [Update](#labplans_update)
+
+## Labs
+
+- [CreateOrUpdate](#labs_createorupdate)
+- [Delete](#labs_delete)
+- [GetByResourceGroup](#labs_getbyresourcegroup)
+- [List](#labs_list)
+- [ListByResourceGroup](#labs_listbyresourcegroup)
+- [Publish](#labs_publish)
+- [SyncGroup](#labs_syncgroup)
+- [Update](#labs_update)
+
+## OperationResults
+
+- [Get](#operationresults_get)
+
+## Operations
+
+- [List](#operations_list)
+
+## Schedules
+
+- [CreateOrUpdate](#schedules_createorupdate)
+- [Delete](#schedules_delete)
+- [Get](#schedules_get)
+- [ListByLab](#schedules_listbylab)
+- [Update](#schedules_update)
+
+## Skus
+
+- [List](#skus_list)
+
+## Usages
+
+- [ListByLocation](#usages_listbylocation)
+
+## Users
+
+- [CreateOrUpdate](#users_createorupdate)
+- [Delete](#users_delete)
+- [Get](#users_get)
+- [Invite](#users_invite)
+- [ListByLab](#users_listbylab)
+- [Update](#users_update)
+
+## VirtualMachines
+
+- [Get](#virtualmachines_get)
+- [ListByLab](#virtualmachines_listbylab)
+- [Redeploy](#virtualmachines_redeploy)
+- [Reimage](#virtualmachines_reimage)
+- [ResetPassword](#virtualmachines_resetpassword)
+- [Start](#virtualmachines_start)
+- [Stop](#virtualmachines_stop)
+### Images_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.labservices.models.EnableState;
+
+/** Samples for Images CreateOrUpdate. */
+public final class ImagesCreateOrUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Images/putImage.json
+ */
+ /**
+ * Sample code: putImage.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void putImage(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager
+ .images()
+ .define("image1")
+ .withExistingLabPlan("testrg123", "testlabplan")
+ .withEnabledState(EnableState.ENABLED)
+ .create();
+ }
+}
+```
+
+### Images_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Images Get. */
+public final class ImagesGetSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Images/getImage.json
+ */
+ /**
+ * Sample code: getImage.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void getImage(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.images().getWithResponse("testrg123", "testlabplan", "image1", Context.NONE);
+ }
+}
+```
+
+### Images_ListByLabPlan
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Images ListByLabPlan. */
+public final class ImagesListByLabPlanSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Images/listImages.json
+ */
+ /**
+ * Sample code: listImages.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listImages(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.images().listByLabPlan("testrg123", "testlabplan", null, Context.NONE);
+ }
+}
+```
+
+### Images_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.labservices.models.EnableState;
+import com.azure.resourcemanager.labservices.models.Image;
+
+/** Samples for Images Update. */
+public final class ImagesUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Images/patchImage.json
+ */
+ /**
+ * Sample code: patchImage.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void patchImage(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ Image resource =
+ manager.images().getWithResponse("testrg123", "testlabplan", "image1", Context.NONE).getValue();
+ resource.update().withEnabledState(EnableState.ENABLED).apply();
+ }
+}
+```
+
+### LabPlans_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.labservices.models.AutoShutdownProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionType;
+import com.azure.resourcemanager.labservices.models.EnableState;
+import com.azure.resourcemanager.labservices.models.LabPlanNetworkProfile;
+import com.azure.resourcemanager.labservices.models.ShutdownOnIdleMode;
+import com.azure.resourcemanager.labservices.models.SupportInfo;
+import java.time.Duration;
+
+/** Samples for LabPlans CreateOrUpdate. */
+public final class LabPlansCreateOrUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/LabPlans/putLabPlan.json
+ */
+ /**
+ * Sample code: putLabPlan.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void putLabPlan(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager
+ .labPlans()
+ .define("testlabplan")
+ .withRegion("westus")
+ .withExistingResourceGroup("testrg123")
+ .withDefaultConnectionProfile(
+ new ConnectionProfile()
+ .withWebSshAccess(ConnectionType.NONE)
+ .withWebRdpAccess(ConnectionType.NONE)
+ .withClientSshAccess(ConnectionType.PUBLIC)
+ .withClientRdpAccess(ConnectionType.PUBLIC))
+ .withDefaultAutoShutdownProfile(
+ new AutoShutdownProfile()
+ .withShutdownOnDisconnect(EnableState.ENABLED)
+ .withShutdownWhenNotConnected(EnableState.ENABLED)
+ .withShutdownOnIdle(ShutdownOnIdleMode.USER_ABSENCE)
+ .withDisconnectDelay(Duration.parse("00:05"))
+ .withNoConnectDelay(Duration.parse("01:00"))
+ .withIdleDelay(Duration.parse("01:00")))
+ .withDefaultNetworkProfile(
+ new LabPlanNetworkProfile()
+ .withSubnetId(
+ "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"))
+ .withSharedGalleryId(
+ "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Compute/galleries/testsig")
+ .withSupportInfo(
+ new SupportInfo()
+ .withUrl("help.contoso.com")
+ .withEmail("help@contoso.com")
+ .withPhone("+1-202-555-0123")
+ .withInstructions("Contact support for help."))
+ .create();
+ }
+}
+```
+
+### LabPlans_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for LabPlans Delete. */
+public final class LabPlansDeleteSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/LabPlans/deleteLabPlan.json
+ */
+ /**
+ * Sample code: deleteLabPlan.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void deleteLabPlan(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labPlans().delete("testrg123", "testlabplan", Context.NONE);
+ }
+}
+```
+
+### LabPlans_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for LabPlans GetByResourceGroup. */
+public final class LabPlansGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/LabPlans/getLabPlan.json
+ */
+ /**
+ * Sample code: getLabPlan.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void getLabPlan(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labPlans().getByResourceGroupWithResponse("testrg123", "testlabplan", Context.NONE);
+ }
+}
+```
+
+### LabPlans_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for LabPlans List. */
+public final class LabPlansListSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/LabPlans/listLabPlans.json
+ */
+ /**
+ * Sample code: listLabPlans.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listLabPlans(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labPlans().list(null, Context.NONE);
+ }
+}
+```
+
+### LabPlans_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for LabPlans ListByResourceGroup. */
+public final class LabPlansListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/LabPlans/listResourceGroupLabPlans.json
+ */
+ /**
+ * Sample code: listResourceGroupLabPlans.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listResourceGroupLabPlans(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labPlans().listByResourceGroup("testrg123", Context.NONE);
+ }
+}
+```
+
+### LabPlans_SaveImage
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.labservices.models.SaveImageBody;
+
+/** Samples for LabPlans SaveImage. */
+public final class LabPlansSaveImageSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/LabPlans/saveImageVirtualMachine.json
+ */
+ /**
+ * Sample code: saveImageVirtualMachine.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void saveImageVirtualMachine(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager
+ .labPlans()
+ .saveImage(
+ "testrg123",
+ "testlabplan",
+ new SaveImageBody()
+ .withName("Test Image")
+ .withLabVirtualMachineId(
+ "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labs/testlab/virtualMachines/template"),
+ Context.NONE);
+ }
+}
+```
+
+### LabPlans_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.labservices.models.ConnectionProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionType;
+import com.azure.resourcemanager.labservices.models.LabPlan;
+
+/** Samples for LabPlans Update. */
+public final class LabPlansUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/LabPlans/patchLabPlan.json
+ */
+ /**
+ * Sample code: patchLabPlan.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void patchLabPlan(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ LabPlan resource =
+ manager.labPlans().getByResourceGroupWithResponse("testrg123", "testlabplan", Context.NONE).getValue();
+ resource
+ .update()
+ .withDefaultConnectionProfile(
+ new ConnectionProfile()
+ .withWebSshAccess(ConnectionType.NONE)
+ .withWebRdpAccess(ConnectionType.NONE)
+ .withClientSshAccess(ConnectionType.PUBLIC)
+ .withClientRdpAccess(ConnectionType.PUBLIC))
+ .apply();
+ }
+}
+```
+
+### Labs_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.labservices.models.AutoShutdownProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionType;
+import com.azure.resourcemanager.labservices.models.CreateOption;
+import com.azure.resourcemanager.labservices.models.Credentials;
+import com.azure.resourcemanager.labservices.models.EnableState;
+import com.azure.resourcemanager.labservices.models.ImageReference;
+import com.azure.resourcemanager.labservices.models.LabNetworkProfile;
+import com.azure.resourcemanager.labservices.models.SecurityProfile;
+import com.azure.resourcemanager.labservices.models.ShutdownOnIdleMode;
+import com.azure.resourcemanager.labservices.models.Sku;
+import com.azure.resourcemanager.labservices.models.VirtualMachineAdditionalCapabilities;
+import com.azure.resourcemanager.labservices.models.VirtualMachineProfile;
+import java.time.Duration;
+
+/** Samples for Labs CreateOrUpdate. */
+public final class LabsCreateOrUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Labs/putLab.json
+ */
+ /**
+ * Sample code: putLab.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void putLab(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager
+ .labs()
+ .define("testlab")
+ .withRegion("westus")
+ .withExistingResourceGroup("testrg123")
+ .withNetworkProfile(
+ new LabNetworkProfile()
+ .withSubnetId(
+ "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"))
+ .withAutoShutdownProfile(
+ new AutoShutdownProfile()
+ .withShutdownOnDisconnect(EnableState.ENABLED)
+ .withShutdownWhenNotConnected(EnableState.ENABLED)
+ .withShutdownOnIdle(ShutdownOnIdleMode.USER_ABSENCE)
+ .withDisconnectDelay(Duration.parse("00:05"))
+ .withNoConnectDelay(Duration.parse("01:00"))
+ .withIdleDelay(Duration.parse("01:00")))
+ .withConnectionProfile(
+ new ConnectionProfile()
+ .withWebSshAccess(ConnectionType.NONE)
+ .withWebRdpAccess(ConnectionType.NONE)
+ .withClientSshAccess(ConnectionType.PUBLIC)
+ .withClientRdpAccess(ConnectionType.PUBLIC))
+ .withVirtualMachineProfile(
+ new VirtualMachineProfile()
+ .withCreateOption(CreateOption.TEMPLATE_VM)
+ .withImageReference(
+ new ImageReference()
+ .withOffer("WindowsServer")
+ .withPublisher("Microsoft")
+ .withSku("2019-Datacenter")
+ .withVersion("2019.0.20190410"))
+ .withSku(new Sku().withName("Medium"))
+ .withAdditionalCapabilities(
+ new VirtualMachineAdditionalCapabilities().withInstallGpuDrivers(EnableState.DISABLED))
+ .withUsageQuota(Duration.parse("10:00"))
+ .withUseSharedPassword(EnableState.DISABLED)
+ .withAdminUser(new Credentials().withUsername("test-user")))
+ .withSecurityProfile(new SecurityProfile().withOpenAccess(EnableState.DISABLED))
+ .withLabPlanId(
+ "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.LabServices/labPlans/testlabplan")
+ .withTitle("Test Lab")
+ .withDescription("This is a test lab.")
+ .create();
+ }
+}
+```
+
+### Labs_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Labs Delete. */
+public final class LabsDeleteSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Labs/deleteLab.json
+ */
+ /**
+ * Sample code: deleteLab.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void deleteLab(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labs().delete("testrg123", "testlab", Context.NONE);
+ }
+}
+```
+
+### Labs_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Labs GetByResourceGroup. */
+public final class LabsGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Labs/getLab.json
+ */
+ /**
+ * Sample code: getLab.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void getLab(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labs().getByResourceGroupWithResponse("testrg123", "testlab", Context.NONE);
+ }
+}
+```
+
+### Labs_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Labs List. */
+public final class LabsListSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Labs/listLabs.json
+ */
+ /**
+ * Sample code: listLabs.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listLabs(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labs().list(null, Context.NONE);
+ }
+}
+```
+
+### Labs_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Labs ListByResourceGroup. */
+public final class LabsListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Labs/listResourceGroupLabs.json
+ */
+ /**
+ * Sample code: listResourceGroupLabs.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listResourceGroupLabs(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labs().listByResourceGroup("testrg123", Context.NONE);
+ }
+}
+```
+
+### Labs_Publish
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Labs Publish. */
+public final class LabsPublishSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Labs/publishLab.json
+ */
+ /**
+ * Sample code: publishLab.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void publishLab(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labs().publish("testrg123", "testlab", Context.NONE);
+ }
+}
+```
+
+### Labs_SyncGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Labs SyncGroup. */
+public final class LabsSyncGroupSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Labs/syncLab.json
+ */
+ /**
+ * Sample code: syncLab.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void syncLab(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.labs().syncGroup("testrg123", "testlab", Context.NONE);
+ }
+}
+```
+
+### Labs_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.labservices.models.EnableState;
+import com.azure.resourcemanager.labservices.models.Lab;
+import com.azure.resourcemanager.labservices.models.SecurityProfile;
+
+/** Samples for Labs Update. */
+public final class LabsUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Labs/patchLab.json
+ */
+ /**
+ * Sample code: patchLab.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void patchLab(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ Lab resource = manager.labs().getByResourceGroupWithResponse("testrg123", "testlab", Context.NONE).getValue();
+ resource.update().withSecurityProfile(new SecurityProfile().withOpenAccess(EnableState.ENABLED)).apply();
+ }
+}
+```
+
+### OperationResults_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for OperationResults Get. */
+public final class OperationResultsGetSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/OperationResults/getOperationResult.json
+ */
+ /**
+ * Sample code: getOperationResult.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void getOperationResult(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.operationResults().getWithResponse("a64149d8-84cb-4566-ab8e-b4ee1a074174", Context.NONE);
+ }
+}
+```
+
+### Operations_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Operations List. */
+public final class OperationsListSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/LabServices/listOperations.json
+ */
+ /**
+ * Sample code: listOperations.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listOperations(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.operations().list(Context.NONE);
+ }
+}
+```
+
+### Schedules_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.labservices.models.RecurrenceFrequency;
+import com.azure.resourcemanager.labservices.models.RecurrencePattern;
+import java.time.LocalDate;
+import java.time.OffsetDateTime;
+
+/** Samples for Schedules CreateOrUpdate. */
+public final class SchedulesCreateOrUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Schedules/putSchedule.json
+ */
+ /**
+ * Sample code: putSchedule.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void putSchedule(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager
+ .schedules()
+ .define("schedule1")
+ .withExistingLab("testrg123", "testlab")
+ .withStartAt(OffsetDateTime.parse("2020-05-26T12:00:00Z"))
+ .withStopAt(OffsetDateTime.parse("2020-05-26T18:00:00Z"))
+ .withRecurrencePattern(
+ new RecurrencePattern()
+ .withFrequency(RecurrenceFrequency.DAILY)
+ .withInterval(2)
+ .withExpirationDate(LocalDate.parse("2020-08-14")))
+ .withTimeZoneId("America/Los_Angeles")
+ .withNotes("Schedule 1 for students")
+ .create();
+ }
+}
+```
+
+### Schedules_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Schedules Delete. */
+public final class SchedulesDeleteSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Schedules/deleteSchedule.json
+ */
+ /**
+ * Sample code: deleteSchedule.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void deleteSchedule(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.schedules().delete("testrg123", "testlab", "schedule1", Context.NONE);
+ }
+}
+```
+
+### Schedules_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Schedules Get. */
+public final class SchedulesGetSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Schedules/getSchedule.json
+ */
+ /**
+ * Sample code: getSchedule.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void getSchedule(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.schedules().getWithResponse("testrg123", "testlab", "schedule1", Context.NONE);
+ }
+}
+```
+
+### Schedules_ListByLab
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Schedules ListByLab. */
+public final class SchedulesListByLabSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Schedules/listSchedule.json
+ */
+ /**
+ * Sample code: getListSchedule.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void getListSchedule(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.schedules().listByLab("testrg123", "testlab", null, Context.NONE);
+ }
+}
+```
+
+### Schedules_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.labservices.models.RecurrenceFrequency;
+import com.azure.resourcemanager.labservices.models.RecurrencePattern;
+import com.azure.resourcemanager.labservices.models.Schedule;
+import java.time.LocalDate;
+
+/** Samples for Schedules Update. */
+public final class SchedulesUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Schedules/patchSchedule.json
+ */
+ /**
+ * Sample code: patchSchedule.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void patchSchedule(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ Schedule resource =
+ manager.schedules().getWithResponse("testrg123", "testlab", "schedule1", Context.NONE).getValue();
+ resource
+ .update()
+ .withRecurrencePattern(
+ new RecurrencePattern()
+ .withFrequency(RecurrenceFrequency.DAILY)
+ .withInterval(2)
+ .withExpirationDate(LocalDate.parse("2020-08-14")))
+ .apply();
+ }
+}
+```
+
+### Skus_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Skus List. */
+public final class SkusListSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Skus/listSkus.json
+ */
+ /**
+ * Sample code: listSkus.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listSkus(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.skus().list(null, Context.NONE);
+ }
+}
+```
+
+### Usages_ListByLocation
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Usages ListByLocation. */
+public final class UsagesListByLocationSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Usages/getUsages.json
+ */
+ /**
+ * Sample code: listUsages.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listUsages(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.usages().listByLocation("westus2", null, Context.NONE);
+ }
+}
+```
+
+### Users_CreateOrUpdate
+
+```java
+import java.time.Duration;
+
+/** Samples for Users CreateOrUpdate. */
+public final class UsersCreateOrUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Users/putUser.json
+ */
+ /**
+ * Sample code: putUser.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void putUser(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager
+ .users()
+ .define("testuser")
+ .withExistingLab("testrg123", "testlab")
+ .withEmail("testuser@contoso.com")
+ .withAdditionalUsageQuota(Duration.parse("20:00"))
+ .create();
+ }
+}
+```
+
+### Users_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Users Delete. */
+public final class UsersDeleteSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Users/deleteUser.json
+ */
+ /**
+ * Sample code: deleteUser.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void deleteUser(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.users().delete("testrg123", "testlab", "testuser", Context.NONE);
+ }
+}
+```
+
+### Users_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Users Get. */
+public final class UsersGetSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Users/getUser.json
+ */
+ /**
+ * Sample code: getUser.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void getUser(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.users().getWithResponse("testrg123", "testlab", "testuser", Context.NONE);
+ }
+}
+```
+
+### Users_Invite
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.labservices.models.InviteBody;
+
+/** Samples for Users Invite. */
+public final class UsersInviteSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Users/inviteUser.json
+ */
+ /**
+ * Sample code: inviteUser.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void inviteUser(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager
+ .users()
+ .invite(
+ "testrg123",
+ "testlab",
+ "testuser",
+ new InviteBody().withText("Invitation to lab testlab"),
+ Context.NONE);
+ }
+}
+```
+
+### Users_ListByLab
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Users ListByLab. */
+public final class UsersListByLabSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Users/listUser.json
+ */
+ /**
+ * Sample code: listUser.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listUser(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.users().listByLab("testrg123", "testlab", null, Context.NONE);
+ }
+}
+```
+
+### Users_Update
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.labservices.models.User;
+import java.time.Duration;
+
+/** Samples for Users Update. */
+public final class UsersUpdateSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/Users/patchUser.json
+ */
+ /**
+ * Sample code: patchUser.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void patchUser(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ User resource = manager.users().getWithResponse("testrg123", "testlab", "testuser", Context.NONE).getValue();
+ resource.update().withAdditionalUsageQuota(Duration.parse("20:00")).apply();
+ }
+}
+```
+
+### VirtualMachines_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for VirtualMachines Get. */
+public final class VirtualMachinesGetSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/VirtualMachines/getVirtualMachine.json
+ */
+ /**
+ * Sample code: getVirtualMachine.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void getVirtualMachine(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.virtualMachines().getWithResponse("testrg123", "testlab", "template", Context.NONE);
+ }
+}
+```
+
+### VirtualMachines_ListByLab
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for VirtualMachines ListByLab. */
+public final class VirtualMachinesListByLabSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/VirtualMachines/listVirtualMachine.json
+ */
+ /**
+ * Sample code: listVirtualMachine.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void listVirtualMachine(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.virtualMachines().listByLab("testrg123", "testlab", null, Context.NONE);
+ }
+}
+```
+
+### VirtualMachines_Redeploy
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for VirtualMachines Redeploy. */
+public final class VirtualMachinesRedeploySamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/VirtualMachines/redeployVirtualMachine.json
+ */
+ /**
+ * Sample code: redeployVirtualMachine.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void redeployVirtualMachine(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.virtualMachines().redeploy("testrg123", "testlab", "template", Context.NONE);
+ }
+}
+```
+
+### VirtualMachines_Reimage
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for VirtualMachines Reimage. */
+public final class VirtualMachinesReimageSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/VirtualMachines/reimageVirtualMachine.json
+ */
+ /**
+ * Sample code: reimageVirtualMachine.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void reimageVirtualMachine(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.virtualMachines().reimage("testrg123", "testlab", "template", Context.NONE);
+ }
+}
+```
+
+### VirtualMachines_ResetPassword
+
+```java
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.labservices.models.ResetPasswordBody;
+
+/** Samples for VirtualMachines ResetPassword. */
+public final class VirtualMachinesResetPasswordSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/VirtualMachines/resetPasswordVirtualMachine.json
+ */
+ /**
+ * Sample code: resetPasswordVirtualMachine.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void resetPasswordVirtualMachine(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager
+ .virtualMachines()
+ .resetPassword(
+ "testrg123",
+ "testlab",
+ "template",
+ new ResetPasswordBody().withUsername("example-username").withPassword("example-password"),
+ Context.NONE);
+ }
+}
+```
+
+### VirtualMachines_Start
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for VirtualMachines Start. */
+public final class VirtualMachinesStartSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/VirtualMachines/startVirtualMachine.json
+ */
+ /**
+ * Sample code: startVirtualMachine.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void startVirtualMachine(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.virtualMachines().start("testrg123", "testlab", "template", Context.NONE);
+ }
+}
+```
+
+### VirtualMachines_Stop
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for VirtualMachines Stop. */
+public final class VirtualMachinesStopSamples {
+ /*
+ * x-ms-original-file: specification/labservices/resource-manager/Microsoft.LabServices/preview/2021-11-15-preview/examples/VirtualMachines/stopVirtualMachine.json
+ */
+ /**
+ * Sample code: stopVirtualMachine.
+ *
+ * @param manager Entry point to LabServicesManager.
+ */
+ public static void stopVirtualMachine(com.azure.resourcemanager.labservices.LabServicesManager manager) {
+ manager.virtualMachines().stop("testrg123", "testlab", "template", Context.NONE);
+ }
+}
+```
+
diff --git a/sdk/labservices/azure-resourcemanager-labservices/pom.xml b/sdk/labservices/azure-resourcemanager-labservices/pom.xml
index 4fc946621017f..5b506a2b19aa1 100644
--- a/sdk/labservices/azure-resourcemanager-labservices/pom.xml
+++ b/sdk/labservices/azure-resourcemanager-labservices/pom.xml
@@ -1,55 +1,55 @@
- 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. REST API for managing Azure Lab Services images. Package tag package-preview-2021-11.
+ 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
- true
-
-
-
- com.azure
- azure-core
- 1.24.1
-
-
- com.azure
- azure-core-management
- 1.5.1
-
-
+
+ https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+
+ microsoft
+ Microsoft
+
+
+
+ UTF-8
+ true
+
+
+
+ com.azure
+ azure-core
+ 1.24.1
+
+
+ com.azure
+ azure-core-management
+ 1.5.1
+
+
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 60%
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 f33e4b7da8c16..6af095b4b54d6 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
@@ -8,8 +8,8 @@
import com.azure.core.http.HttpClient;
import com.azure.core.http.HttpPipeline;
import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.HttpPipelinePosition;
import com.azure.core.http.policy.AddDatePolicy;
-import com.azure.core.http.policy.BearerTokenAuthenticationPolicy;
import com.azure.core.http.policy.HttpLogOptions;
import com.azure.core.http.policy.HttpLoggingPolicy;
import com.azure.core.http.policy.HttpPipelinePolicy;
@@ -17,62 +17,68 @@
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.SkusImpl;
+import com.azure.resourcemanager.labservices.implementation.UsagesImpl;
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.Skus;
+import com.azure.resourcemanager.labservices.models.Usages;
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;
+import java.util.stream.Collectors;
-/** Entry point to ManagedLabsManager. The Managed Labs Client. */
-public final class ManagedLabsManager {
- private ProviderOperations providerOperations;
+/** Entry point to LabServicesManager. REST API for managing Azure Lab Services images. */
+public final class LabServicesManager {
+ private Images images;
- private GlobalUsers globalUsers;
-
- private LabAccounts labAccounts;
+ private LabPlans labPlans;
private Operations operations;
- private GalleryImages galleryImages;
-
private Labs labs;
- private EnvironmentSettings environmentSettings;
+ private OperationResults operationResults;
- private Environments environments;
+ private Schedules schedules;
private Users users;
- private final ManagedLabsClient clientObject;
+ private VirtualMachines virtualMachines;
+
+ private Usages usages;
+
+ private Skus skus;
- private ManagedLabsManager(HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
+ private final LabServicesClient clientObject;
+
+ 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 +87,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 +115,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 +155,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 +192,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.");
@@ -190,7 +208,7 @@ public ManagedLabsManager authenticate(TokenCredential credential, AzureProfile
.append("-")
.append("com.azure.resourcemanager.labservices")
.append("/")
- .append("1.0.0-beta.1");
+ .append("1.0.0-beta.2");
if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
userAgentBuilder
.append(" (")
@@ -204,20 +222,33 @@ 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);
}
List policies = new ArrayList<>();
policies.add(new UserAgentPolicy(userAgentBuilder.toString()));
policies.add(new RequestIdPolicy());
+ policies
+ .addAll(
+ this
+ .policies
+ .stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_CALL)
+ .collect(Collectors.toList()));
HttpPolicyProviders.addBeforeRetryPolicies(policies);
policies.add(retryPolicy);
policies.add(new AddDatePolicy());
+ policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
policies
- .add(
- new BearerTokenAuthenticationPolicy(
- credential, profile.getEnvironment().getManagementEndpoint() + "/.default"));
- policies.addAll(this.policies);
+ .addAll(
+ this
+ .policies
+ .stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_RETRY)
+ .collect(Collectors.toList()));
HttpPolicyProviders.addAfterRetryPolicies(policies);
policies.add(new HttpLoggingPolicy(httpLogOptions));
HttpPipeline httpPipeline =
@@ -225,32 +256,24 @@ 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 Resource collection API of Images. */
+ public Images images() {
+ if (this.images == null) {
+ this.images = new ImagesImpl(clientObject.getImages(), this);
}
- return providerOperations;
+ return images;
}
- /** @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 LabPlans. */
+ public LabPlans labPlans() {
+ if (this.labPlans == null) {
+ this.labPlans = new LabPlansImpl(clientObject.getLabPlans(), this);
}
- return globalUsers;
- }
-
- /** @return Resource collection API of LabAccounts. */
- public LabAccounts labAccounts() {
- if (this.labAccounts == null) {
- this.labAccounts = new LabAccountsImpl(clientObject.getLabAccounts(), this);
- }
- return labAccounts;
+ return labPlans;
}
/** @return Resource collection API of Operations. */
@@ -261,14 +284,6 @@ public Operations operations() {
return operations;
}
- /** @return Resource collection API of GalleryImages. */
- public GalleryImages galleryImages() {
- if (this.galleryImages == null) {
- this.galleryImages = new GalleryImagesImpl(clientObject.getGalleryImages(), this);
- }
- return galleryImages;
- }
-
/** @return Resource collection API of Labs. */
public Labs labs() {
if (this.labs == null) {
@@ -277,20 +292,20 @@ 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 OperationResults. */
+ public OperationResults operationResults() {
+ if (this.operationResults == null) {
+ this.operationResults = new OperationResultsImpl(clientObject.getOperationResults(), this);
}
- return environmentSettings;
+ return operationResults;
}
- /** @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 Schedules. */
+ public Schedules schedules() {
+ if (this.schedules == null) {
+ this.schedules = new SchedulesImpl(clientObject.getSchedules(), this);
}
- return environments;
+ return schedules;
}
/** @return Resource collection API of Users. */
@@ -301,11 +316,35 @@ public Users users() {
return users;
}
+ /** @return Resource collection API of VirtualMachines. */
+ public VirtualMachines virtualMachines() {
+ if (this.virtualMachines == null) {
+ this.virtualMachines = new VirtualMachinesImpl(clientObject.getVirtualMachines(), this);
+ }
+ return virtualMachines;
+ }
+
+ /** @return Resource collection API of Usages. */
+ public Usages usages() {
+ if (this.usages == null) {
+ this.usages = new UsagesImpl(clientObject.getUsages(), this);
+ }
+ return usages;
+ }
+
+ /** @return Resource collection API of Skus. */
+ public Skus skus() {
+ if (this.skus == null) {
+ this.skus = new SkusImpl(clientObject.getSkus(), this);
+ }
+ return skus;
+ }
+
/**
- * @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 d066982a631e8..0000000000000
--- 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 fa07348cf32be..0000000000000
--- 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 d83fe8ce94c8d..0000000000000
--- 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 dfdf2b560642e..0000000000000
--- 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 0000000000000..d1a0b69aefd01
--- /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 along with {@link Response}.
+ */
+ @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 along with {@link Response}.
+ */
+ @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 along with {@link Response}.
+ */
+ @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 3a2111adae271..0000000000000
--- 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 0000000000000..885d63019a2a6
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/LabPlansClient.java
@@ -0,0 +1,351 @@
+// 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;
+import reactor.core.publisher.Mono;
+
+/** 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 along with {@link Response}.
+ */
+ @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 along with {@link Response}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 along with {@link Response}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 along with {@link Response}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 along with {@link Response}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 c79ae9f6d3a5e..2e975aa8468ec 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,25 +45,18 @@ public interface ManagedLabsClient {
Duration getDefaultPollInterval();
/**
- * Gets the ProviderOperationsClient object to access its operations.
+ * Gets the ImagesClient object to access its operations.
*
- * @return the ProviderOperationsClient object.
+ * @return the ImagesClient object.
*/
- ProviderOperationsClient getProviderOperations();
+ ImagesClient getImages();
/**
- * Gets the GlobalUsersClient object to access its operations.
+ * Gets the LabPlansClient object to access its operations.
*
- * @return the GlobalUsersClient object.
+ * @return the LabPlansClient object.
*/
- GlobalUsersClient getGlobalUsers();
-
- /**
- * Gets the LabAccountsClient object to access its operations.
- *
- * @return the LabAccountsClient object.
- */
- LabAccountsClient getLabAccounts();
+ LabPlansClient getLabPlans();
/**
* Gets the OperationsClient object to access its operations.
@@ -72,13 +65,6 @@ public interface ManagedLabsClient {
*/
OperationsClient getOperations();
- /**
- * Gets the GalleryImagesClient object to access its operations.
- *
- * @return the GalleryImagesClient object.
- */
- GalleryImagesClient getGalleryImages();
-
/**
* Gets the LabsClient object to access its operations.
*
@@ -87,18 +73,18 @@ public interface ManagedLabsClient {
LabsClient getLabs();
/**
- * Gets the EnvironmentSettingsClient object to access its operations.
+ * Gets the OperationResultsClient object to access its operations.
*
- * @return the EnvironmentSettingsClient object.
+ * @return the OperationResultsClient object.
*/
- EnvironmentSettingsClient getEnvironmentSettings();
+ OperationResultsClient getOperationResults();
/**
- * Gets the EnvironmentsClient object to access its operations.
+ * Gets the SchedulesClient object to access its operations.
*
- * @return the EnvironmentsClient object.
+ * @return the SchedulesClient object.
*/
- EnvironmentsClient getEnvironments();
+ SchedulesClient getSchedules();
/**
* Gets the UsersClient object to access its operations.
@@ -106,4 +92,25 @@ public interface ManagedLabsClient {
* @return the UsersClient object.
*/
UsersClient getUsers();
+
+ /**
+ * Gets the VirtualMachinesClient object to access its operations.
+ *
+ * @return the VirtualMachinesClient object.
+ */
+ VirtualMachinesClient getVirtualMachines();
+
+ /**
+ * Gets the UsagesClient object to access its operations.
+ *
+ * @return the UsagesClient object.
+ */
+ UsagesClient getUsages();
+
+ /**
+ * Gets the SkusClient object to access its operations.
+ *
+ * @return the SkusClient object.
+ */
+ SkusClient getSkus();
}
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 05fae4c04f042..d819fa36278fb 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,262 +12,380 @@
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;
+import reactor.core.publisher.Mono;
/** 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 resourceGroupName,
- String labAccountName,
- String expand,
- String filter,
- Integer top,
- String orderby,
- Context context);
+ PagedIterable list(String filter, Context context);
/**
- * Get lab.
+ * Returns a list of all labs in a resource group.
*
- * @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.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.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 paged list of labs.
*/
- @ServiceMethod(returns = ReturnType.SINGLE)
- LabInner get(String resourceGroupName, String labAccountName, String labName);
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
/**
- * Get lab.
+ * Returns a list of all labs in a resource group.
*
- * @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 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 paged list of labs.
*/
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(
- String resourceGroupName, String labAccountName, String labName, String expand, Context context);
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
/**
- * Create or replace an existing Lab.
+ * Returns the properties of 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.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws com.azure.core.management.exception.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);
+ LabInner getByResourceGroup(String resourceGroupName, String labName);
/**
- * Create or replace an existing Lab.
+ * Returns the properties of 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 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 along with {@link Response}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response createOrUpdateWithResponse(
- String resourceGroupName, String labAccountName, String labName, LabInner lab, Context context);
+ 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 along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, LabInner> beginCreateOrUpdate(
+ String resourceGroupName, String labName, LabInner body, Context context);
/**
- * Delete lab. This operation can take a while to complete.
+ * 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 the completion.
+ * @return the lab resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(String resourceGroupName, String labAccountName, String labName);
+ LabInner createOrUpdate(String resourceGroupName, String labName, LabInner body);
/**
- * Delete lab. This operation can take a while to complete.
+ * 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.
* @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.
+ * @return the lab resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(
- String resourceGroupName, String labAccountName, String labName, Context context);
+ LabInner createOrUpdate(String resourceGroupName, String labName, LabInner 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 along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, LabInner> beginUpdate(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 along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, LabInner> beginUpdate(
+ String resourceGroupName, String labName, LabUpdate body, Context context);
+
+ /**
+ * 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.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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)
- void delete(String resourceGroupName, String labAccountName, String labName);
+ LabInner update(String resourceGroupName, String labName, LabUpdate body);
/**
- * 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.
* @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)
- void delete(String resourceGroupName, String labAccountName, String labName, Context context);
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(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.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String labName, Context context);
/**
- * Modify properties of labs.
+ * 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 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 delete(String resourceGroupName, String labName);
/**
- * Modify properties of labs.
+ * 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 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 delete(String resourceGroupName, String labName, Context context);
+
+ /**
+ * 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. 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginPublish(String resourceGroupName, String labName);
+
+ /**
+ * 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. 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginPublish(String resourceGroupName, String labName, Context context);
/**
- * Add users to a lab.
+ * 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 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.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void addUsers(String resourceGroupName, String labAccountName, String labName, AddUsersPayload addUsersPayload);
+ void publish(String resourceGroupName, String labName);
/**
- * Add users to a lab.
+ * 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 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.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response addUsersWithResponse(
- String resourceGroupName,
- String labAccountName,
- String labName,
- AddUsersPayload addUsersPayload,
- Context context);
+ void publish(String resourceGroupName, String labName, Context context);
+
+ /**
+ * Action used to manually kick off an AAD group sync job.
+ *
+ * @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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginSyncGroup(String resourceGroupName, String labName);
+
+ /**
+ * Action used to manually kick off an AAD group sync job.
+ *
+ * @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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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/OperationResultsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationResultsClient.java
new file mode 100644
index 0000000000000..8d7dd8fdd8925
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/OperationResultsClient.java
@@ -0,0 +1,39 @@
+// 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.util.Context;
+import com.azure.resourcemanager.labservices.fluent.models.OperationResultInner;
+
+/** An instance of this class provides access to all the operations defined in OperationResultsClient. */
+public interface OperationResultsClient {
+ /**
+ * 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 a long running operation result.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ OperationResultInner get(String operationResultId);
+
+ /**
+ * 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 a long running operation result along with {@link Response}.
+ */
+ @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 4a4b634df9b59..e37b1ec855965 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 0000000000000..bb82b2b3785e0
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/SchedulesClient.java
@@ -0,0 +1,223 @@
+// 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;
+import reactor.core.publisher.Mono;
+
+/** 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 along with
+ * {@link Response}.
+ */
+ @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 along with
+ * {@link Response}.
+ */
+ @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 along with
+ * {@link Response}.
+ */
+ @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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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/ProviderOperationsClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/SkusClient.java
similarity index 68%
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/SkusClient.java
index bada5d64c7979..4d9138c2d824e 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/SkusClient.java
@@ -8,29 +8,30 @@
import com.azure.core.annotation.ServiceMethod;
import com.azure.core.http.rest.PagedIterable;
import com.azure.core.util.Context;
-import com.azure.resourcemanager.labservices.fluent.models.OperationMetadataInner;
+import com.azure.resourcemanager.labservices.fluent.models.LabServicesSkuInner;
-/** 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 SkusClient. */
+public interface SkusClient {
/**
- * Result of the request to list REST API operations.
+ * Returns a list of all the Azure Lab Services resource SKUs.
*
* @throws com.azure.core.management.exception.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 paged list of lab services skus.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list();
+ PagedIterable list();
/**
- * Result of the request to list REST API operations.
+ * Returns a list of all the Azure Lab Services resource SKUs.
*
+ * @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 result of the request to list REST API operations.
+ * @return paged list of lab services skus.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(Context context);
+ PagedIterable list(String filter, Context context);
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/UsagesClient.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/UsagesClient.java
new file mode 100644
index 0000000000000..ffd2c7787ebb1
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/UsagesClient.java
@@ -0,0 +1,40 @@
+// 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.util.Context;
+import com.azure.resourcemanager.labservices.fluent.models.UsageInner;
+
+/** An instance of this class provides access to all the operations defined in UsagesClient. */
+public interface UsagesClient {
+ /**
+ * Returns list of usage per SKU family for the specified subscription in the specified region.
+ *
+ * @param location The location 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 list of Core Usages.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByLocation(String location);
+
+ /**
+ * Returns list of usage per SKU family for the specified subscription in the specified region.
+ *
+ * @param location The location name.
+ * @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 list of Core Usages.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByLocation(String location, String filter, 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 67fb01d644a30..dbcf10a7f46f9 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,228 +12,338 @@
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;
+import reactor.core.publisher.Mono;
/** 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 along with {@link Response}.
*/
@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 along with {@link Response}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 along with {@link Response}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 labAccountName, String labName, String username, UserInner user);
+ UserInner createOrUpdate(String resourceGroupName, String labName, String username, UserInner body);
/**
- * 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.
* @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);
+ UserInner createOrUpdate(
+ 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 along with {@link Response}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, UserInner> beginUpdate(
+ 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 along with {@link Response}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 the completion.
+ * @return user of a lab that can register for and use virtual machines within the lab.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- SyncPoller, Void> beginDelete(
- String resourceGroupName, String labAccountName, String labName, String username);
+ UserInner update(String resourceGroupName, String labName, String username, UserUpdate body);
/**
- * 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.
* @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.
+ * @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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String labName, String username);
+
+ /**
+ * 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.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 0000000000000..c3e04ca40cb89
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/VirtualMachinesClient.java
@@ -0,0 +1,421 @@
+// 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;
+import reactor.core.publisher.Mono;
+
+/** 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 along with {@link Response}.
+ */
+ @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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ 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 dc8c63cebbc0f..0000000000000
--- 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 2e7b0db59a64f..0000000000000
--- 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 2430b363c566d..0000000000000
--- 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 28789ba5f0858..0000000000000
--- 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 b9fab2fc14050..0000000000000
--- 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 2335fa78ff39a..0000000000000
--- 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 0000000000000..163cd14ea210b
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageInner.java
@@ -0,0 +1,240 @@
+// 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.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. */
+@Fluent
+public final 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;
+
+ /*
+ * Image resource properties
+ */
+ @JsonProperty(value = "properties", required = true)
+ private ImageProperties innerProperties = new ImageProperties();
+
+ /**
+ * 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 innerProperties property: Image resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private ImageProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the image.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the displayName property: The image display name.
+ *
+ * @return the displayName value.
+ */
+ public String displayName() {
+ return this.innerProperties() == null ? null : this.innerProperties().displayName();
+ }
+
+ /**
+ * Get the description property: A description of the image.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.innerProperties() == null ? null : this.innerProperties().description();
+ }
+
+ /**
+ * Get the iconUrl property: URL of the image icon.
+ *
+ * @return the iconUrl value.
+ */
+ public String iconUrl() {
+ return this.innerProperties() == null ? null : this.innerProperties().iconUrl();
+ }
+
+ /**
+ * Get the author property: The image author.
+ *
+ * @return the author value.
+ */
+ public String author() {
+ return this.innerProperties() == null ? null : this.innerProperties().author();
+ }
+
+ /**
+ * Get the osType property: The OS Type of the image.
+ *
+ * @return the osType value.
+ */
+ public OsType osType() {
+ return this.innerProperties() == null ? null : this.innerProperties().osType();
+ }
+
+ /**
+ * Get the plan property: The ID of marketplace plan associated with the image (optional).
+ *
+ * @return the plan value.
+ */
+ public String plan() {
+ return this.innerProperties() == null ? null : this.innerProperties().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.innerProperties() == null ? null : this.innerProperties().termsStatus();
+ }
+
+ /**
+ * Get the offer property: The ID of an offer associated with the image.
+ *
+ * @return the offer value.
+ */
+ public String offer() {
+ return this.innerProperties() == null ? null : this.innerProperties().offer();
+ }
+
+ /**
+ * Get the publisher property: The ID of the publisher of the image.
+ *
+ * @return the publisher value.
+ */
+ public String publisher() {
+ return this.innerProperties() == null ? null : this.innerProperties().publisher();
+ }
+
+ /**
+ * Get the sku property: The image SKU.
+ *
+ * @return the sku value.
+ */
+ public String sku() {
+ return this.innerProperties() == null ? null : this.innerProperties().sku();
+ }
+
+ /**
+ * Get the version property: The image version.
+ *
+ * @return the version value.
+ */
+ public String version() {
+ return this.innerProperties() == null ? null : this.innerProperties().version();
+ }
+
+ /**
+ * Get the sharedGalleryId property: The ID for the image in the shared gallery.
+ *
+ * @return the sharedGalleryId value.
+ */
+ public String sharedGalleryId() {
+ return this.innerProperties() == null ? null : this.innerProperties().sharedGalleryId();
+ }
+
+ /**
+ * Get the availableRegions property: The available regions of the image in the shared gallery.
+ *
+ * @return the availableRegions value.
+ */
+ public List availableRegions() {
+ return this.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ImageProperties();
+ }
+ this.innerProperties().withAvailableRegions(availableRegions);
+ return this;
+ }
+
+ /**
+ * Get the osState property: The OS State of the image.
+ *
+ * @return the osState value.
+ */
+ public OsState osState() {
+ return this.innerProperties() == null ? null : this.innerProperties().osState();
+ }
+
+ /**
+ * Get the enabledState property: Is the image enabled.
+ *
+ * @return the enabledState value.
+ */
+ public EnableState enabledState() {
+ return this.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ImageProperties();
+ }
+ this.innerProperties().withEnabledState(enabledState);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property innerProperties in model ImageInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageProperties.java
new file mode 100644
index 0000000000000..b22b947568c40
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageProperties.java
@@ -0,0 +1,275 @@
+// 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.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;
+
+/** Properties of an image resource. */
+@Fluent
+public final class ImageProperties extends ImageUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ImageProperties.class);
+
+ /*
+ * Current provisioning state of the image.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The image display name.
+ */
+ @JsonProperty(value = "displayName", access = JsonProperty.Access.WRITE_ONLY)
+ private String displayName;
+
+ /*
+ * A description of the image.
+ */
+ @JsonProperty(value = "description", access = JsonProperty.Access.WRITE_ONLY)
+ private String description;
+
+ /*
+ * URL of the image icon.
+ */
+ @JsonProperty(value = "iconUrl", access = JsonProperty.Access.WRITE_ONLY)
+ private String iconUrl;
+
+ /*
+ * The image author.
+ */
+ @JsonProperty(value = "author", access = JsonProperty.Access.WRITE_ONLY)
+ private String author;
+
+ /*
+ * The OS Type of the image.
+ */
+ @JsonProperty(value = "osType", access = JsonProperty.Access.WRITE_ONLY)
+ private OsType osType;
+
+ /*
+ * The ID of marketplace plan associated with the image (optional).
+ */
+ @JsonProperty(value = "plan", access = JsonProperty.Access.WRITE_ONLY)
+ private String plan;
+
+ /*
+ * The status of image terms of use (enabled = accepted, disabled = not
+ * accepted).
+ */
+ @JsonProperty(value = "termsStatus", access = JsonProperty.Access.WRITE_ONLY)
+ private EnableState termsStatus;
+
+ /*
+ * The ID of an offer associated with the image.
+ */
+ @JsonProperty(value = "offer", access = JsonProperty.Access.WRITE_ONLY)
+ private String offer;
+
+ /*
+ * The ID of the publisher of the image.
+ */
+ @JsonProperty(value = "publisher", access = JsonProperty.Access.WRITE_ONLY)
+ private String publisher;
+
+ /*
+ * The image SKU.
+ */
+ @JsonProperty(value = "sku", access = JsonProperty.Access.WRITE_ONLY)
+ private String sku;
+
+ /*
+ * The image version.
+ */
+ @JsonProperty(value = "version", access = JsonProperty.Access.WRITE_ONLY)
+ private String version;
+
+ /*
+ * The ID for the image in the shared gallery.
+ */
+ @JsonProperty(value = "sharedGalleryId", access = JsonProperty.Access.WRITE_ONLY)
+ private String sharedGalleryId;
+
+ /*
+ * The available regions of the image in the shared gallery.
+ */
+ @JsonProperty(value = "availableRegions")
+ private List availableRegions;
+
+ /*
+ * The OS State of the image.
+ */
+ @JsonProperty(value = "osState", access = JsonProperty.Access.WRITE_ONLY)
+ private OsState osState;
+
+ /**
+ * 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 ImageProperties object itself.
+ */
+ public ImageProperties 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;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ImageProperties withEnabledState(EnableState enabledState) {
+ super.withEnabledState(enabledState);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageUpdateProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageUpdateProperties.java
new file mode 100644
index 0000000000000..2abbb7c65a1b0
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ImageUpdateProperties.java
@@ -0,0 +1,51 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.labservices.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.labservices.models.EnableState;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Properties of an image resource update. */
+@Fluent
+public class ImageUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ImageUpdateProperties.class);
+
+ /*
+ * Is the image enabled
+ */
+ @JsonProperty(value = "enabledState")
+ private EnableState enabledState;
+
+ /**
+ * 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 ImageUpdateProperties object itself.
+ */
+ public ImageUpdateProperties withEnabledState(EnableState enabledState) {
+ this.enabledState = enabledState;
+ 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/LabAccountInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabAccountInner.java
deleted file mode 100644
index 9c34f94743a5d..0000000000000
--- 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 2a95832952288..7a1883ad25632 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
@@ -5,255 +5,302 @@
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.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. */
-@JsonFlatten
+/** The lab resource. */
@Fluent
-public class LabInner extends Resource {
+public final 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
+ * Lab resource properties
*/
- @JsonProperty(value = "properties.userQuota", access = JsonProperty.Access.WRITE_ONLY)
- private Integer userQuota;
+ @JsonProperty(value = "properties", required = true)
+ private LabProperties innerProperties = new LabProperties();
- /*
- * Invitation code that users can use to join a lab.
- */
- @JsonProperty(value = "properties.invitationCode", access = JsonProperty.Access.WRITE_ONLY)
- private String invitationCode;
-
- /*
- * Object id of the user that created the lab.
- */
- @JsonProperty(value = "properties.createdByObjectId", access = JsonProperty.Access.WRITE_ONLY)
- private String createdByObjectId;
-
- /*
- * Maximum duration a user can use an environment for in the lab.
- */
- @JsonProperty(value = "properties.usageQuota")
- private Duration usageQuota;
-
- /*
- * Lab user access mode (open to all vs. restricted to those listed on the
- * lab).
- */
- @JsonProperty(value = "properties.userAccessMode")
- private LabUserAccessMode userAccessMode;
-
- /*
- * Lab creator name
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the lab.
+ *
+ * @return the systemData value.
*/
- @JsonProperty(value = "properties.createdByUserPrincipalName", access = JsonProperty.Access.WRITE_ONLY)
- private String createdByUserPrincipalName;
+ public SystemData systemData() {
+ return this.systemData;
+ }
- /*
- * Creation date for the lab
+ /**
+ * Get the innerProperties property: Lab resource properties.
+ *
+ * @return the innerProperties value.
*/
- @JsonProperty(value = "properties.createdDate", access = JsonProperty.Access.WRITE_ONLY)
- private OffsetDateTime createdDate;
+ private LabProperties innerProperties() {
+ return this.innerProperties;
+ }
- /*
- * The provisioning status of the resource.
- */
- @JsonProperty(value = "properties.provisioningState")
- private String provisioningState;
+ /** {@inheritDoc} */
+ @Override
+ public LabInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
- /*
- * The unique immutable identifier of a resource (Guid).
- */
- @JsonProperty(value = "properties.uniqueIdentifier")
- private String uniqueIdentifier;
+ /** {@inheritDoc} */
+ @Override
+ public LabInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
- /*
- * The details of the latest operation. ex: status, error
+ /**
+ * Get the provisioningState property: Current provisioning state of the lab.
+ *
+ * @return the provisioningState value.
*/
- @JsonProperty(value = "properties.latestOperationResult", access = JsonProperty.Access.WRITE_ONLY)
- private LatestOperationResult latestOperationResult;
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
/**
- * Get the maxUsersInLab property: Maximum number of users allowed in the lab.
+ * 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 maxUsersInLab value.
+ * @return the networkProfile value.
*/
- public Integer maxUsersInLab() {
- return this.maxUsersInLab;
+ public LabNetworkProfile networkProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().networkProfile();
}
/**
- * Set the maxUsersInLab property: Maximum number of users allowed in the lab.
+ * 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 maxUsersInLab the maxUsersInLab value to set.
+ * @param networkProfile the networkProfile value to set.
* @return the LabInner object itself.
*/
- public LabInner withMaxUsersInLab(Integer maxUsersInLab) {
- this.maxUsersInLab = maxUsersInLab;
+ public LabInner withNetworkProfile(LabNetworkProfile networkProfile) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withNetworkProfile(networkProfile);
return this;
}
/**
- * Get the userQuota property: Maximum value MaxUsersInLab can be set to, as specified by the service.
+ * Get the state property: The lab state.
*
- * @return the userQuota value.
+ * @return the state value.
*/
- public Integer userQuota() {
- return this.userQuota;
+ public LabState state() {
+ return this.innerProperties() == null ? null : this.innerProperties().state();
}
/**
- * Get the invitationCode property: Invitation code that users can use to join a 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 invitationCode value.
+ * @return the autoShutdownProfile value.
*/
- public String invitationCode() {
- return this.invitationCode;
+ public AutoShutdownProfile autoShutdownProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().autoShutdownProfile();
}
/**
- * Get the createdByObjectId property: Object id of the user that created 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.
*
- * @return the createdByObjectId value.
+ * @param autoShutdownProfile the autoShutdownProfile value to set.
+ * @return the LabInner object itself.
*/
- public String createdByObjectId() {
- return this.createdByObjectId;
+ public LabInner withAutoShutdownProfile(AutoShutdownProfile autoShutdownProfile) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withAutoShutdownProfile(autoShutdownProfile);
+ return this;
}
/**
- * Get the usageQuota property: Maximum duration a user can use an environment for in the lab.
+ * 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 usageQuota value.
+ * @return the connectionProfile value.
*/
- public Duration usageQuota() {
- return this.usageQuota;
+ public ConnectionProfile connectionProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().connectionProfile();
}
/**
- * Set the usageQuota property: Maximum duration a user can use an environment for in the 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.
*
- * @param usageQuota the usageQuota value to set.
+ * @param connectionProfile the connectionProfile value to set.
* @return the LabInner object itself.
*/
- public LabInner withUsageQuota(Duration usageQuota) {
- this.usageQuota = usageQuota;
+ public LabInner withConnectionProfile(ConnectionProfile connectionProfile) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withConnectionProfile(connectionProfile);
return this;
}
/**
- * Get the userAccessMode property: Lab user access mode (open to all vs. restricted to those listed on the lab).
+ * Get the virtualMachineProfile property: The profile used for creating lab virtual machines.
*
- * @return the userAccessMode value.
+ * @return the virtualMachineProfile value.
*/
- public LabUserAccessMode userAccessMode() {
- return this.userAccessMode;
+ public VirtualMachineProfile virtualMachineProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().virtualMachineProfile();
}
/**
- * Set the userAccessMode property: Lab user access mode (open to all vs. restricted to those listed on the lab).
+ * Set the virtualMachineProfile property: The profile used for creating lab virtual machines.
*
- * @param userAccessMode the userAccessMode value to set.
+ * @param virtualMachineProfile the virtualMachineProfile value to set.
* @return the LabInner object itself.
*/
- public LabInner withUserAccessMode(LabUserAccessMode userAccessMode) {
- this.userAccessMode = userAccessMode;
+ public LabInner withVirtualMachineProfile(VirtualMachineProfile virtualMachineProfile) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withVirtualMachineProfile(virtualMachineProfile);
return this;
}
/**
- * Get the createdByUserPrincipalName property: Lab creator name.
+ * Get the securityProfile property: The lab security profile.
*
- * @return the createdByUserPrincipalName value.
+ * @return the securityProfile value.
*/
- public String createdByUserPrincipalName() {
- return this.createdByUserPrincipalName;
+ public SecurityProfile securityProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().securityProfile();
}
/**
- * Get the createdDate property: Creation date for the lab.
+ * Set the securityProfile property: The lab security profile.
*
- * @return the createdDate value.
+ * @param securityProfile the securityProfile value to set.
+ * @return the LabInner object itself.
*/
- public OffsetDateTime createdDate() {
- return this.createdDate;
+ public LabInner withSecurityProfile(SecurityProfile securityProfile) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withSecurityProfile(securityProfile);
+ return this;
}
/**
- * Get the provisioningState property: The provisioning status of the resource.
+ * Get the rosterProfile property: The lab user list management profile.
*
- * @return the provisioningState value.
+ * @return the rosterProfile value.
*/
- public String provisioningState() {
- return this.provisioningState;
+ public RosterProfile rosterProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().rosterProfile();
}
/**
- * Set the provisioningState property: The provisioning status of the resource.
+ * Set the rosterProfile property: The lab user list management profile.
*
- * @param provisioningState the provisioningState value to set.
+ * @param rosterProfile the rosterProfile value to set.
* @return the LabInner object itself.
*/
- public LabInner withProvisioningState(String provisioningState) {
- this.provisioningState = provisioningState;
+ public LabInner withRosterProfile(RosterProfile rosterProfile) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withRosterProfile(rosterProfile);
return this;
}
/**
- * Get the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
+ * 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 uniqueIdentifier value.
+ * @return the labPlanId value.
*/
- public String uniqueIdentifier() {
- return this.uniqueIdentifier;
+ public String labPlanId() {
+ return this.innerProperties() == null ? null : this.innerProperties().labPlanId();
}
/**
- * Set the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
+ * 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..
*
- * @param uniqueIdentifier the uniqueIdentifier value to set.
+ * @param labPlanId the labPlanId value to set.
* @return the LabInner object itself.
*/
- public LabInner withUniqueIdentifier(String uniqueIdentifier) {
- this.uniqueIdentifier = uniqueIdentifier;
+ public LabInner withLabPlanId(String labPlanId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withLabPlanId(labPlanId);
return this;
}
/**
- * Get the latestOperationResult property: The details of the latest operation. ex: status, error.
+ * Get the title property: The title of the lab.
*
- * @return the latestOperationResult value.
+ * @return the title value.
*/
- public LatestOperationResult latestOperationResult() {
- return this.latestOperationResult;
+ public String title() {
+ return this.innerProperties() == null ? null : this.innerProperties().title();
}
- /** {@inheritDoc} */
- @Override
- public LabInner withLocation(String location) {
- super.withLocation(location);
+ /**
+ * Set the title property: The title of the lab.
+ *
+ * @param title the title value to set.
+ * @return the LabInner object itself.
+ */
+ public LabInner withTitle(String title) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withTitle(title);
return this;
}
- /** {@inheritDoc} */
- @Override
- public LabInner withTags(Map tags) {
- super.withTags(tags);
+ /**
+ * Get the description property: The description of the lab.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.innerProperties() == null ? null : this.innerProperties().description();
+ }
+
+ /**
+ * Set the description property: The description of the lab.
+ *
+ * @param description the description value to set.
+ * @return the LabInner object itself.
+ */
+ public LabInner withDescription(String description) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabProperties();
+ }
+ this.innerProperties().withDescription(description);
return this;
}
@@ -263,8 +310,12 @@ public LabInner withTags(Map tags) {
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
- if (latestOperationResult() != null) {
- latestOperationResult().validate();
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property innerProperties in model LabInner"));
+ } else {
+ innerProperties().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 0000000000000..d2173a69a536d
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanInner.java
@@ -0,0 +1,271 @@
+// 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.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.
+ */
+@Fluent
+public final 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;
+
+ /*
+ * Lab plan resource properties
+ */
+ @JsonProperty(value = "properties", required = true)
+ private LabPlanProperties innerProperties = new LabPlanProperties();
+
+ /**
+ * 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 innerProperties property: Lab plan resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private LabPlanProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the lab plan.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * 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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabPlanProperties();
+ }
+ this.innerProperties().withDefaultConnectionProfile(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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabPlanProperties();
+ }
+ this.innerProperties().withDefaultAutoShutdownProfile(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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabPlanProperties();
+ }
+ this.innerProperties().withDefaultNetworkProfile(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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabPlanProperties();
+ }
+ this.innerProperties().withAllowedRegions(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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabPlanProperties();
+ }
+ this.innerProperties().withSharedGalleryId(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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabPlanProperties();
+ }
+ this.innerProperties().withSupportInfo(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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new LabPlanProperties();
+ }
+ this.innerProperties().withLinkedLmsInstance(linkedLmsInstance);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property innerProperties in model LabPlanInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanProperties.java
new file mode 100644
index 0000000000000..838570cc54651
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanProperties.java
@@ -0,0 +1,96 @@
+// 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.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;
+
+/** Lab plan resource properties. */
+@Fluent
+public final class LabPlanProperties extends LabPlanUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(LabPlanProperties.class);
+
+ /*
+ * Current provisioning state of the lab plan.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the lab plan.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanProperties withDefaultConnectionProfile(ConnectionProfile defaultConnectionProfile) {
+ super.withDefaultConnectionProfile(defaultConnectionProfile);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanProperties withDefaultAutoShutdownProfile(AutoShutdownProfile defaultAutoShutdownProfile) {
+ super.withDefaultAutoShutdownProfile(defaultAutoShutdownProfile);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanProperties withDefaultNetworkProfile(LabPlanNetworkProfile defaultNetworkProfile) {
+ super.withDefaultNetworkProfile(defaultNetworkProfile);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanProperties withAllowedRegions(List allowedRegions) {
+ super.withAllowedRegions(allowedRegions);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanProperties withSharedGalleryId(String sharedGalleryId) {
+ super.withSharedGalleryId(sharedGalleryId);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanProperties withSupportInfo(SupportInfo supportInfo) {
+ super.withSupportInfo(supportInfo);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabPlanProperties withLinkedLmsInstance(String linkedLmsInstance) {
+ super.withLinkedLmsInstance(linkedLmsInstance);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanUpdateProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanUpdateProperties.java
new file mode 100644
index 0000000000000..1518ebb7c997c
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabPlanUpdateProperties.java
@@ -0,0 +1,247 @@
+// 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.AutoShutdownProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionProfile;
+import com.azure.resourcemanager.labservices.models.LabPlanNetworkProfile;
+import com.azure.resourcemanager.labservices.models.SupportInfo;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Lab plan resource properties for updates. */
+@Fluent
+public class LabPlanUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(LabPlanUpdateProperties.class);
+
+ /*
+ * The default lab connection profile. This can be changed on a lab
+ * resource and only provides a default profile.
+ */
+ @JsonProperty(value = "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 = "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 = "defaultNetworkProfile")
+ private LabPlanNetworkProfile defaultNetworkProfile;
+
+ /*
+ * The allowed regions for the lab creator to use when creating labs using
+ * this lab plan.
+ */
+ @JsonProperty(value = "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 = "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 = "supportInfo")
+ private SupportInfo supportInfo;
+
+ /*
+ * Base Url of the lms instance this lab plan can link lab rosters against.
+ */
+ @JsonProperty(value = "linkedLmsInstance")
+ private String linkedLmsInstance;
+
+ /**
+ * 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 LabPlanUpdateProperties object itself.
+ */
+ public LabPlanUpdateProperties 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 LabPlanUpdateProperties object itself.
+ */
+ public LabPlanUpdateProperties 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 LabPlanUpdateProperties object itself.
+ */
+ public LabPlanUpdateProperties 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 LabPlanUpdateProperties object itself.
+ */
+ public LabPlanUpdateProperties 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 LabPlanUpdateProperties object itself.
+ */
+ public LabPlanUpdateProperties 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 LabPlanUpdateProperties object itself.
+ */
+ public LabPlanUpdateProperties 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 LabPlanUpdateProperties object itself.
+ */
+ public LabPlanUpdateProperties withLinkedLmsInstance(String linkedLmsInstance) {
+ this.linkedLmsInstance = linkedLmsInstance;
+ 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/LabProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabProperties.java
new file mode 100644
index 0000000000000..c081d888fb975
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabProperties.java
@@ -0,0 +1,152 @@
+// 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.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;
+
+/** Properties of a lab resource. */
+@Fluent
+public final class LabProperties extends LabUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(LabProperties.class);
+
+ /*
+ * Current provisioning state of the lab.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * 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 = "networkProfile")
+ private LabNetworkProfile networkProfile;
+
+ /*
+ * The lab state.
+ */
+ @JsonProperty(value = "state", access = JsonProperty.Access.WRITE_ONLY)
+ private LabState state;
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the lab.
+ *
+ * @return the provisioningState value.
+ */
+ 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 LabProperties object itself.
+ */
+ public LabProperties 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} */
+ @Override
+ public LabProperties withAutoShutdownProfile(AutoShutdownProfile autoShutdownProfile) {
+ super.withAutoShutdownProfile(autoShutdownProfile);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabProperties withConnectionProfile(ConnectionProfile connectionProfile) {
+ super.withConnectionProfile(connectionProfile);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabProperties withVirtualMachineProfile(VirtualMachineProfile virtualMachineProfile) {
+ super.withVirtualMachineProfile(virtualMachineProfile);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabProperties withSecurityProfile(SecurityProfile securityProfile) {
+ super.withSecurityProfile(securityProfile);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabProperties withRosterProfile(RosterProfile rosterProfile) {
+ super.withRosterProfile(rosterProfile);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabProperties withLabPlanId(String labPlanId) {
+ super.withLabPlanId(labPlanId);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabProperties withTitle(String title) {
+ super.withTitle(title);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public LabProperties withDescription(String description) {
+ super.withDescription(description);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (networkProfile() != null) {
+ networkProfile().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabServicesSkuInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabServicesSkuInner.java
new file mode 100644
index 0000000000000..a3c61eb421f3c
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabServicesSkuInner.java
@@ -0,0 +1,203 @@
+// 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.LabServicesSkuCapabilities;
+import com.azure.resourcemanager.labservices.models.LabServicesSkuCapacity;
+import com.azure.resourcemanager.labservices.models.LabServicesSkuCost;
+import com.azure.resourcemanager.labservices.models.LabServicesSkuRestrictions;
+import com.azure.resourcemanager.labservices.models.LabServicesSkuTier;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Azure Lab Services resource SKUs. */
+@Fluent
+public final class LabServicesSkuInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(LabServicesSkuInner.class);
+
+ /*
+ * The lab services resource type.
+ */
+ @JsonProperty(value = "resourceType", access = JsonProperty.Access.WRITE_ONLY)
+ private String resourceType;
+
+ /*
+ * The name of the SKU.
+ */
+ @JsonProperty(value = "name", access = JsonProperty.Access.WRITE_ONLY)
+ private String name;
+
+ /*
+ * The tier of the SKU.
+ */
+ @JsonProperty(value = "tier", access = JsonProperty.Access.WRITE_ONLY)
+ private LabServicesSkuTier tier;
+
+ /*
+ * The SKU size.
+ */
+ @JsonProperty(value = "size", access = JsonProperty.Access.WRITE_ONLY)
+ private String size;
+
+ /*
+ * The family of the SKU.
+ */
+ @JsonProperty(value = "family", access = JsonProperty.Access.WRITE_ONLY)
+ private String family;
+
+ /*
+ * The scale out/in options of the SKU.
+ */
+ @JsonProperty(value = "capacity")
+ private LabServicesSkuCapacity capacity;
+
+ /*
+ * The capabilities of the SKU.
+ */
+ @JsonProperty(value = "capabilities", access = JsonProperty.Access.WRITE_ONLY)
+ private List capabilities;
+
+ /*
+ * List of locations that are available for a size.
+ */
+ @JsonProperty(value = "locations", access = JsonProperty.Access.WRITE_ONLY)
+ private List locations;
+
+ /*
+ * Metadata for retrieving price info of a lab services SKUs.
+ */
+ @JsonProperty(value = "costs", access = JsonProperty.Access.WRITE_ONLY)
+ private List costs;
+
+ /*
+ * Restrictions of a lab services SKUs.
+ */
+ @JsonProperty(value = "restrictions", access = JsonProperty.Access.WRITE_ONLY)
+ private List restrictions;
+
+ /**
+ * Get the resourceType property: The lab services resource type.
+ *
+ * @return the resourceType value.
+ */
+ public String resourceType() {
+ return this.resourceType;
+ }
+
+ /**
+ * Get the name property: The name of the SKU.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the tier property: The tier of the SKU.
+ *
+ * @return the tier value.
+ */
+ public LabServicesSkuTier tier() {
+ return this.tier;
+ }
+
+ /**
+ * Get the size property: The SKU size.
+ *
+ * @return the size value.
+ */
+ public String size() {
+ return this.size;
+ }
+
+ /**
+ * Get the family property: The family of the SKU.
+ *
+ * @return the family value.
+ */
+ public String family() {
+ return this.family;
+ }
+
+ /**
+ * Get the capacity property: The scale out/in options of the SKU.
+ *
+ * @return the capacity value.
+ */
+ public LabServicesSkuCapacity capacity() {
+ return this.capacity;
+ }
+
+ /**
+ * Set the capacity property: The scale out/in options of the SKU.
+ *
+ * @param capacity the capacity value to set.
+ * @return the LabServicesSkuInner object itself.
+ */
+ public LabServicesSkuInner withCapacity(LabServicesSkuCapacity capacity) {
+ this.capacity = capacity;
+ return this;
+ }
+
+ /**
+ * Get the capabilities property: The capabilities of the SKU.
+ *
+ * @return the capabilities value.
+ */
+ public List capabilities() {
+ return this.capabilities;
+ }
+
+ /**
+ * Get the locations property: List of locations that are available for a size.
+ *
+ * @return the locations value.
+ */
+ public List locations() {
+ return this.locations;
+ }
+
+ /**
+ * Get the costs property: Metadata for retrieving price info of a lab services SKUs.
+ *
+ * @return the costs value.
+ */
+ public List costs() {
+ return this.costs;
+ }
+
+ /**
+ * Get the restrictions property: Restrictions of a lab services SKUs.
+ *
+ * @return the restrictions value.
+ */
+ public List restrictions() {
+ return this.restrictions;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (capacity() != null) {
+ capacity().validate();
+ }
+ if (capabilities() != null) {
+ capabilities().forEach(e -> e.validate());
+ }
+ if (costs() != null) {
+ costs().forEach(e -> e.validate());
+ }
+ if (restrictions() != null) {
+ restrictions().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabUpdateProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabUpdateProperties.java
new file mode 100644
index 0000000000000..57e9626b758a7
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/LabUpdateProperties.java
@@ -0,0 +1,265 @@
+// 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.AutoShutdownProfile;
+import com.azure.resourcemanager.labservices.models.ConnectionProfile;
+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;
+
+/** Properties of a lab resource used for updates. */
+@Fluent
+public class LabUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(LabUpdateProperties.class);
+
+ /*
+ * The resource auto shutdown configuration for the lab. This controls
+ * whether actions are taken on resources that are sitting idle.
+ */
+ @JsonProperty(value = "autoShutdownProfile")
+ private AutoShutdownProfile autoShutdownProfile;
+
+ /*
+ * 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 = "connectionProfile")
+ private ConnectionProfile connectionProfile;
+
+ /*
+ * The profile used for creating lab virtual machines.
+ */
+ @JsonProperty(value = "virtualMachineProfile")
+ private VirtualMachineProfile virtualMachineProfile;
+
+ /*
+ * The lab security profile.
+ */
+ @JsonProperty(value = "securityProfile")
+ private SecurityProfile securityProfile;
+
+ /*
+ * The lab user list management profile.
+ */
+ @JsonProperty(value = "rosterProfile")
+ private RosterProfile rosterProfile;
+
+ /*
+ * 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 = "labPlanId")
+ private String labPlanId;
+
+ /*
+ * The title of the lab.
+ */
+ @JsonProperty(value = "title")
+ private String title;
+
+ /*
+ * The description of the lab.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /**
+ * 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 autoShutdownProfile value.
+ */
+ public AutoShutdownProfile autoShutdownProfile() {
+ return this.autoShutdownProfile;
+ }
+
+ /**
+ * 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 autoShutdownProfile the autoShutdownProfile value to set.
+ * @return the LabUpdateProperties object itself.
+ */
+ public LabUpdateProperties withAutoShutdownProfile(AutoShutdownProfile autoShutdownProfile) {
+ this.autoShutdownProfile = autoShutdownProfile;
+ return this;
+ }
+
+ /**
+ * 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 connectionProfile value.
+ */
+ public ConnectionProfile connectionProfile() {
+ return this.connectionProfile;
+ }
+
+ /**
+ * 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.
+ *
+ * @param connectionProfile the connectionProfile value to set.
+ * @return the LabUpdateProperties object itself.
+ */
+ public LabUpdateProperties withConnectionProfile(ConnectionProfile connectionProfile) {
+ this.connectionProfile = connectionProfile;
+ return this;
+ }
+
+ /**
+ * Get the virtualMachineProfile property: The profile used for creating lab virtual machines.
+ *
+ * @return the virtualMachineProfile value.
+ */
+ public VirtualMachineProfile virtualMachineProfile() {
+ return this.virtualMachineProfile;
+ }
+
+ /**
+ * Set the virtualMachineProfile property: The profile used for creating lab virtual machines.
+ *
+ * @param virtualMachineProfile the virtualMachineProfile value to set.
+ * @return the LabUpdateProperties object itself.
+ */
+ public LabUpdateProperties withVirtualMachineProfile(VirtualMachineProfile virtualMachineProfile) {
+ this.virtualMachineProfile = virtualMachineProfile;
+ return this;
+ }
+
+ /**
+ * Get the securityProfile property: The lab security profile.
+ *
+ * @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 LabUpdateProperties object itself.
+ */
+ public LabUpdateProperties withSecurityProfile(SecurityProfile securityProfile) {
+ this.securityProfile = securityProfile;
+ return this;
+ }
+
+ /**
+ * Get the rosterProfile property: The lab user list management profile.
+ *
+ * @return the rosterProfile value.
+ */
+ public RosterProfile rosterProfile() {
+ return this.rosterProfile;
+ }
+
+ /**
+ * Set the rosterProfile property: The lab user list management profile.
+ *
+ * @param rosterProfile the rosterProfile value to set.
+ * @return the LabUpdateProperties object itself.
+ */
+ public LabUpdateProperties withRosterProfile(RosterProfile rosterProfile) {
+ this.rosterProfile = rosterProfile;
+ return this;
+ }
+
+ /**
+ * 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 labPlanId value.
+ */
+ public String labPlanId() {
+ return this.labPlanId;
+ }
+
+ /**
+ * 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..
+ *
+ * @param labPlanId the labPlanId value to set.
+ * @return the LabUpdateProperties object itself.
+ */
+ public LabUpdateProperties withLabPlanId(String labPlanId) {
+ this.labPlanId = labPlanId;
+ return this;
+ }
+
+ /**
+ * Get the title property: The title of the lab.
+ *
+ * @return the title value.
+ */
+ public String title() {
+ return this.title;
+ }
+
+ /**
+ * Set the title property: The title of the lab.
+ *
+ * @param title the title value to set.
+ * @return the LabUpdateProperties object itself.
+ */
+ public LabUpdateProperties withTitle(String title) {
+ this.title = title;
+ return this;
+ }
+
+ /**
+ * Get the description property: The description of the lab.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: The description of the lab.
+ *
+ * @param description the description value to set.
+ * @return the LabUpdateProperties object itself.
+ */
+ public LabUpdateProperties withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void 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();
+ }
+ }
+}
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 d3961b1e8f436..0000000000000
--- 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 ed1bc3a07f998..0000000000000
--- 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 32ca741cf67d8..0000000000000
--- 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 0000000000000..6ed316ad24578
--- /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 2e15ebffd10ca..0000000000000
--- 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 7041c69f0052a..f87735fbf4655 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 92c298cb2704b..0000000000000
--- 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 0000000000000..343df0cfd3058
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleInner.java
@@ -0,0 +1,194 @@
+// 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.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. */
+@Fluent
+public final 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;
+
+ /*
+ * Schedule resource properties
+ */
+ @JsonProperty(value = "properties", required = true)
+ private ScheduleProperties innerProperties = new ScheduleProperties();
+
+ /**
+ * 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 innerProperties property: Schedule resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private ScheduleProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the schedule.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * 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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ScheduleProperties();
+ }
+ this.innerProperties().withStartAt(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.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ScheduleProperties();
+ }
+ this.innerProperties().withStopAt(stopAt);
+ return this;
+ }
+
+ /**
+ * Get the recurrencePattern property: The recurrence pattern of the scheduled actions.
+ *
+ * @return the recurrencePattern value.
+ */
+ public RecurrencePattern recurrencePattern() {
+ return this.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ScheduleProperties();
+ }
+ this.innerProperties().withRecurrencePattern(recurrencePattern);
+ return this;
+ }
+
+ /**
+ * Get the timeZoneId property: The IANA timezone id for the schedule.
+ *
+ * @return the timeZoneId value.
+ */
+ public String timeZoneId() {
+ return this.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ScheduleProperties();
+ }
+ this.innerProperties().withTimeZoneId(timeZoneId);
+ return this;
+ }
+
+ /**
+ * Get the notes property: Notes for this schedule.
+ *
+ * @return the notes value.
+ */
+ public String notes() {
+ return this.innerProperties() == null ? null : this.innerProperties().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) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ScheduleProperties();
+ }
+ this.innerProperties().withNotes(notes);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property innerProperties in model ScheduleInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleProperties.java
new file mode 100644
index 0000000000000..2768dd30887ec
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleProperties.java
@@ -0,0 +1,79 @@
+// 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.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 resource properties. */
+@Fluent
+public final class ScheduleProperties extends ScheduleUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ScheduleProperties.class);
+
+ /*
+ * Current provisioning state of the schedule.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the schedule.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ScheduleProperties withStartAt(OffsetDateTime startAt) {
+ super.withStartAt(startAt);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ScheduleProperties withStopAt(OffsetDateTime stopAt) {
+ super.withStopAt(stopAt);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ScheduleProperties withRecurrencePattern(RecurrencePattern recurrencePattern) {
+ super.withRecurrencePattern(recurrencePattern);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ScheduleProperties withTimeZoneId(String timeZoneId) {
+ super.withTimeZoneId(timeZoneId);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ScheduleProperties withNotes(String notes) {
+ super.withNotes(notes);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleUpdateProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleUpdateProperties.java
new file mode 100644
index 0000000000000..a992a75361c82
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/ScheduleUpdateProperties.java
@@ -0,0 +1,165 @@
+// 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.RecurrencePattern;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+
+/** Schedule resource properties used for updates. */
+@Fluent
+public class ScheduleUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ScheduleUpdateProperties.class);
+
+ /*
+ * When lab user virtual machines will be started. Timestamp offsets will
+ * be ignored and timeZoneId is used instead.
+ */
+ @JsonProperty(value = "startAt")
+ private OffsetDateTime startAt;
+
+ /*
+ * When lab user virtual machines will be stopped. Timestamp offsets will
+ * be ignored and timeZoneId is used instead.
+ */
+ @JsonProperty(value = "stopAt")
+ private OffsetDateTime stopAt;
+
+ /*
+ * The recurrence pattern of the scheduled actions.
+ */
+ @JsonProperty(value = "recurrencePattern")
+ private RecurrencePattern recurrencePattern;
+
+ /*
+ * The IANA timezone id for the schedule.
+ */
+ @JsonProperty(value = "timeZoneId")
+ private String timeZoneId;
+
+ /*
+ * Notes for this schedule.
+ */
+ @JsonProperty(value = "notes")
+ private String notes;
+
+ /**
+ * 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 ScheduleUpdateProperties object itself.
+ */
+ public ScheduleUpdateProperties 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 ScheduleUpdateProperties object itself.
+ */
+ public ScheduleUpdateProperties 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 ScheduleUpdateProperties object itself.
+ */
+ public ScheduleUpdateProperties 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 ScheduleUpdateProperties object itself.
+ */
+ public ScheduleUpdateProperties 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 ScheduleUpdateProperties object itself.
+ */
+ public ScheduleUpdateProperties withNotes(String notes) {
+ this.notes = notes;
+ return this;
+ }
+
+ /**
+ * 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/UsageInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UsageInner.java
new file mode 100644
index 0000000000000..e7894554ae571
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UsageInner.java
@@ -0,0 +1,159 @@
+// 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.UsageName;
+import com.azure.resourcemanager.labservices.models.UsageUnit;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The core usage details. */
+@Fluent
+public final class UsageInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(UsageInner.class);
+
+ /*
+ * The current usage.
+ */
+ @JsonProperty(value = "currentValue")
+ private Long currentValue;
+
+ /*
+ * The limit integer.
+ */
+ @JsonProperty(value = "limit")
+ private Long limit;
+
+ /*
+ * The unit details.
+ */
+ @JsonProperty(value = "unit")
+ private UsageUnit unit;
+
+ /*
+ * The name.
+ */
+ @JsonProperty(value = "name")
+ private UsageName name;
+
+ /*
+ * The fully qualified arm resource id.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /**
+ * Get the currentValue property: The current usage.
+ *
+ * @return the currentValue value.
+ */
+ public Long currentValue() {
+ return this.currentValue;
+ }
+
+ /**
+ * Set the currentValue property: The current usage.
+ *
+ * @param currentValue the currentValue value to set.
+ * @return the UsageInner object itself.
+ */
+ public UsageInner withCurrentValue(Long currentValue) {
+ this.currentValue = currentValue;
+ return this;
+ }
+
+ /**
+ * Get the limit property: The limit integer.
+ *
+ * @return the limit value.
+ */
+ public Long limit() {
+ return this.limit;
+ }
+
+ /**
+ * Set the limit property: The limit integer.
+ *
+ * @param limit the limit value to set.
+ * @return the UsageInner object itself.
+ */
+ public UsageInner withLimit(Long limit) {
+ this.limit = limit;
+ return this;
+ }
+
+ /**
+ * Get the unit property: The unit details.
+ *
+ * @return the unit value.
+ */
+ public UsageUnit unit() {
+ return this.unit;
+ }
+
+ /**
+ * Set the unit property: The unit details.
+ *
+ * @param unit the unit value to set.
+ * @return the UsageInner object itself.
+ */
+ public UsageInner withUnit(UsageUnit unit) {
+ this.unit = unit;
+ return this;
+ }
+
+ /**
+ * Get the name property: The name.
+ *
+ * @return the name value.
+ */
+ public UsageName name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name property: The name.
+ *
+ * @param name the name value to set.
+ * @return the UsageInner object itself.
+ */
+ public UsageInner withName(UsageName name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the id property: The fully qualified arm resource id.
+ *
+ * @return the id value.
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id property: The fully qualified arm resource id.
+ *
+ * @param id the id value to set.
+ * @return the UsageInner object itself.
+ */
+ public UsageInner withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (name() != null) {
+ name().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 6465c52bcfbbf..9322e780b7329 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
@@ -5,174 +5,152 @@
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.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. */
-@JsonFlatten
+/** User of a lab that can register for and use virtual machines within the lab. */
@Fluent
-public class UserInner extends Resource {
+public final 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.
+ * User resource properties
*/
- @JsonProperty(value = "properties.familyName", access = JsonProperty.Access.WRITE_ONLY)
- private String familyName;
-
- /*
- * The user given name, as it was specified during registration.
- */
- @JsonProperty(value = "properties.givenName", access = JsonProperty.Access.WRITE_ONLY)
- private String givenName;
-
- /*
- * The user tenant ID, as it was specified during registration.
- */
- @JsonProperty(value = "properties.tenantId", access = JsonProperty.Access.WRITE_ONLY)
- private String tenantId;
-
- /*
- * How long the user has used his VMs in this lab
- */
- @JsonProperty(value = "properties.totalUsage", access = JsonProperty.Access.WRITE_ONLY)
- private Duration totalUsage;
-
- /*
- * 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;
+ @JsonProperty(value = "properties", required = true)
+ private UserProperties innerProperties = new UserProperties();
/**
- * 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 innerProperties property: User resource properties.
*
- * @return the familyName value.
+ * @return the innerProperties value.
*/
- public String familyName() {
- return this.familyName;
+ private UserProperties innerProperties() {
+ return this.innerProperties;
}
/**
- * Get the givenName property: The user given name, as it was specified during registration.
+ * Get the provisioningState property: Current provisioning state of the user resource.
*
- * @return the givenName value.
+ * @return the provisioningState value.
*/
- public String givenName() {
- return this.givenName;
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
}
/**
- * Get the tenantId property: The user tenant ID, as it was specified during registration.
+ * Get the displayName property: Display name of the user, for example user's full name.
*
- * @return the tenantId value.
+ * @return the displayName value.
*/
- public String tenantId() {
- return this.tenantId;
+ public String displayName() {
+ return this.innerProperties() == null ? null : this.innerProperties().displayName();
}
/**
- * Get the totalUsage property: How long the user has used his VMs in this lab.
+ * Get the email property: Email address of the user.
*
- * @return the totalUsage value.
+ * @return the email value.
*/
- public Duration totalUsage() {
- return this.totalUsage;
+ public String email() {
+ return this.innerProperties() == null ? null : this.innerProperties().email();
}
/**
- * Get the provisioningState property: The provisioning status of the resource.
+ * Set the email property: Email address of the user.
*
- * @return the provisioningState value.
+ * @param email the email value to set.
+ * @return the UserInner object itself.
*/
- public String provisioningState() {
- return this.provisioningState;
+ public UserInner withEmail(String email) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new UserProperties();
+ }
+ this.innerProperties().withEmail(email);
+ return this;
}
/**
- * Set the provisioningState property: The provisioning status of the resource.
+ * Get the registrationState property: State of the user's registration within the lab.
*
- * @param provisioningState the provisioningState value to set.
- * @return the UserInner object itself.
+ * @return the registrationState value.
*/
- public UserInner withProvisioningState(String provisioningState) {
- this.provisioningState = provisioningState;
- return this;
+ public RegistrationState registrationState() {
+ return this.innerProperties() == null ? null : this.innerProperties().registrationState();
}
/**
- * Get the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
+ * Get the invitationState property: State of the invitation message for the user.
*
- * @return the uniqueIdentifier value.
+ * @return the invitationState value.
*/
- public String uniqueIdentifier() {
- return this.uniqueIdentifier;
+ public InvitationState invitationState() {
+ return this.innerProperties() == null ? null : this.innerProperties().invitationState();
}
/**
- * Set the uniqueIdentifier property: The unique immutable identifier of a resource (Guid).
+ * Get the invitationSent property: Date and time when the invitation message was sent to the user.
*
- * @param uniqueIdentifier the uniqueIdentifier value to set.
- * @return the UserInner object itself.
+ * @return the invitationSent value.
*/
- public UserInner withUniqueIdentifier(String uniqueIdentifier) {
- this.uniqueIdentifier = uniqueIdentifier;
- return this;
+ public OffsetDateTime invitationSent() {
+ return this.innerProperties() == null ? null : this.innerProperties().invitationSent();
}
/**
- * Get the latestOperationResult property: The details of the latest operation. ex: status, error.
+ * Get the totalUsage property: How long the user has used their virtual machines in this lab.
*
- * @return the latestOperationResult value.
+ * @return the totalUsage value.
*/
- public LatestOperationResult latestOperationResult() {
- return this.latestOperationResult;
+ public Duration totalUsage() {
+ return this.innerProperties() == null ? null : this.innerProperties().totalUsage();
}
- /** {@inheritDoc} */
- @Override
- public UserInner withLocation(String location) {
- super.withLocation(location);
- return this;
+ /**
+ * Get the additionalUsageQuota property: The amount of usage quota time the user gets in addition to the lab usage
+ * quota.
+ *
+ * @return the additionalUsageQuota value.
+ */
+ public Duration additionalUsageQuota() {
+ return this.innerProperties() == null ? null : this.innerProperties().additionalUsageQuota();
}
- /** {@inheritDoc} */
- @Override
- public UserInner withTags(Map tags) {
- super.withTags(tags);
+ /**
+ * Set the additionalUsageQuota property: The amount of usage quota time the user gets in addition to the lab usage
+ * quota.
+ *
+ * @param additionalUsageQuota the additionalUsageQuota value to set.
+ * @return the UserInner object itself.
+ */
+ public UserInner withAdditionalUsageQuota(Duration additionalUsageQuota) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new UserProperties();
+ }
+ this.innerProperties().withAdditionalUsageQuota(additionalUsageQuota);
return this;
}
@@ -182,8 +160,12 @@ public UserInner withTags(Map tags) {
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
- if (latestOperationResult() != null) {
- latestOperationResult().validate();
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property innerProperties in model UserInner"));
+ } else {
+ innerProperties().validate();
}
}
}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserProperties.java
new file mode 100644
index 0000000000000..47c2601fe706a
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserProperties.java
@@ -0,0 +1,159 @@
+// 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.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.time.OffsetDateTime;
+
+/** User resource properties. */
+@Fluent
+public final class UserProperties extends UserUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(UserProperties.class);
+
+ /*
+ * Current provisioning state of the user resource.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * Display name of the user, for example user's full name.
+ */
+ @JsonProperty(value = "displayName", access = JsonProperty.Access.WRITE_ONLY)
+ private String displayName;
+
+ /*
+ * Email address of the user.
+ */
+ @JsonProperty(value = "email", required = true)
+ private String email;
+
+ /*
+ * State of the user's registration within the lab.
+ */
+ @JsonProperty(value = "registrationState", access = JsonProperty.Access.WRITE_ONLY)
+ private RegistrationState registrationState;
+
+ /*
+ * State of the invitation message for the user.
+ */
+ @JsonProperty(value = "invitationState", access = JsonProperty.Access.WRITE_ONLY)
+ private InvitationState invitationState;
+
+ /*
+ * Date and time when the invitation message was sent to the user.
+ */
+ @JsonProperty(value = "invitationSent", access = JsonProperty.Access.WRITE_ONLY)
+ private OffsetDateTime invitationSent;
+
+ /*
+ * How long the user has used their virtual machines in this lab.
+ */
+ @JsonProperty(value = "totalUsage", access = JsonProperty.Access.WRITE_ONLY)
+ private Duration totalUsage;
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the user resource.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the displayName property: Display name of the user, for example user's full name.
+ *
+ * @return the displayName value.
+ */
+ public String displayName() {
+ return this.displayName;
+ }
+
+ /**
+ * Get the email property: Email address of the user.
+ *
+ * @return the email value.
+ */
+ public String email() {
+ return this.email;
+ }
+
+ /**
+ * Set the email property: Email address of the user.
+ *
+ * @param email the email value to set.
+ * @return the UserProperties object itself.
+ */
+ public UserProperties withEmail(String email) {
+ this.email = email;
+ return this;
+ }
+
+ /**
+ * Get the registrationState property: State of the user's registration within the lab.
+ *
+ * @return the registrationState value.
+ */
+ public RegistrationState registrationState() {
+ return this.registrationState;
+ }
+
+ /**
+ * Get the invitationState property: State of the invitation message for the user.
+ *
+ * @return the invitationState value.
+ */
+ public InvitationState invitationState() {
+ return this.invitationState;
+ }
+
+ /**
+ * Get the invitationSent property: Date and time when the invitation message was sent to the user.
+ *
+ * @return the invitationSent value.
+ */
+ public OffsetDateTime invitationSent() {
+ return this.invitationSent;
+ }
+
+ /**
+ * 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;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public UserProperties withAdditionalUsageQuota(Duration additionalUsageQuota) {
+ super.withAdditionalUsageQuota(additionalUsageQuota);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (email() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException("Missing required property email in model UserProperties"));
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserUpdateProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserUpdateProperties.java
new file mode 100644
index 0000000000000..e28da807e534d
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/UserUpdateProperties.java
@@ -0,0 +1,54 @@
+// 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.time.Duration;
+
+/** User resource properties used for updates. */
+@Fluent
+public class UserUpdateProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(UserUpdateProperties.class);
+
+ /*
+ * The amount of usage quota time the user gets in addition to the lab
+ * usage quota.
+ */
+ @JsonProperty(value = "additionalUsageQuota")
+ private Duration additionalUsageQuota;
+
+ /**
+ * Get the additionalUsageQuota property: The amount of usage quota time the user gets in addition to the lab usage
+ * quota.
+ *
+ * @return the additionalUsageQuota value.
+ */
+ public Duration additionalUsageQuota() {
+ return this.additionalUsageQuota;
+ }
+
+ /**
+ * Set the additionalUsageQuota property: The amount of usage quota time the user gets in addition to the lab usage
+ * quota.
+ *
+ * @param additionalUsageQuota the additionalUsageQuota value to set.
+ * @return the UserUpdateProperties object itself.
+ */
+ public UserUpdateProperties withAdditionalUsageQuota(Duration additionalUsageQuota) {
+ this.additionalUsageQuota = additionalUsageQuota;
+ 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/VirtualMachineInner.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineInner.java
new file mode 100644
index 0000000000000..0ed584eb0d88b
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineInner.java
@@ -0,0 +1,113 @@
+// 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.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. */
+@Fluent
+public final 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;
+
+ /*
+ * Virtual machine resource properties
+ */
+ @JsonProperty(value = "properties", required = true)
+ private VirtualMachineProperties innerProperties = new VirtualMachineProperties();
+
+ /**
+ * Get the systemData property: System data of the Lab virtual machine.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the innerProperties property: Virtual machine resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private VirtualMachineProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the provisioningState property: Current provisioning state of the virtual machine.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the state property: The current state of the virtual machine.
+ *
+ * @return the state value.
+ */
+ public VirtualMachineState state() {
+ return this.innerProperties() == null ? null : this.innerProperties().state();
+ }
+
+ /**
+ * Get the connectionProfile property: Profile for information about connecting to the virtual machine.
+ *
+ * @return the connectionProfile value.
+ */
+ public VirtualMachineConnectionProfile connectionProfile() {
+ return this.innerProperties() == null ? null : this.innerProperties().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.innerProperties() == null ? null : this.innerProperties().claimedByUserId();
+ }
+
+ /**
+ * Get the vmType property: The type of this VM resource.
+ *
+ * @return the vmType value.
+ */
+ public VirtualMachineType vmType() {
+ return this.innerProperties() == null ? null : this.innerProperties().vmType();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property innerProperties in model VirtualMachineInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineProperties.java b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineProperties.java
new file mode 100644
index 0000000000000..c932bf475361a
--- /dev/null
+++ b/sdk/labservices/azure-resourcemanager-labservices/src/main/java/com/azure/resourcemanager/labservices/fluent/models/VirtualMachineProperties.java
@@ -0,0 +1,106 @@
+// 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.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;
+
+/** Virtual machine resource properties. */
+@Immutable
+public final class VirtualMachineProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(VirtualMachineProperties.class);
+
+ /*
+ * Current provisioning state of the virtual machine.
+ */
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The current state of the virtual machine
+ */
+ @JsonProperty(value = "state", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualMachineState state;
+
+ /*
+ * Profile for information about connecting to the virtual machine.
+ */
+ @JsonProperty(value = "connectionProfile", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualMachineConnectionProfile connectionProfile;
+
+ /*
+ * The lab user ID (not the PUID!) of who claimed the virtual machine.
+ */
+ @JsonProperty(value = "claimedByUserId", access = JsonProperty.Access.WRITE_ONLY)
+ private String claimedByUserId;
+
+ /*
+ * The type of this VM resource
+ */
+ @JsonProperty(value = "vmType", access = JsonProperty.Access.WRITE_ONLY)
+ private VirtualMachineType vmType;
+
+ /**
+ * 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 cdcb8a87f1694..34a923c01f969 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. REST API for managing Azure Lab Services images. */
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 631cad509ed20..33339f2e16f1e 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. REST API for managing Azure Lab Services images. */
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 7fea7452b2a6f..0000000000000
--- 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 80c766e21ee5d..0000000000000
--- 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 f509b4f67fb05..0000000000000
--- 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