Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource 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 the {@link SyncPoller} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource 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 group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotaLimitInner createOrUpdate(
+ String mgId, String resourceProviderScope, String groupQuotaName, String resourceName);
+
+ /**
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group.
+ *
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotaLimitInner createOrUpdate(
+ String mgId,
+ String resourceProviderScope,
+ String groupQuotaName,
+ String resourceName,
+ GroupQuotaLimitInner groupQuotaLimitRequest,
+ Context context);
+
+ /**
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group.
+ *
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource 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 the {@link SyncPoller} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource 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 group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotaLimitInner update(String mgId, String resourceProviderScope, String groupQuotaName, String resourceName);
+
+ /**
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group.
+ *
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotaLimitInner update(
+ String mgId,
+ String resourceProviderScope,
+ String groupQuotaName,
+ String resourceName,
+ GroupQuotaLimitInner groupQuotaLimitRequest,
+ Context context);
+
+ /**
+ * Gets the resource groupQuotaLimits for the MGId.
+ *
+ * Gets the resource groupQuotaLimits for the MGId. It will include the limits, availableLimits,
+ * assignedToSubscriptions: Quotas assigned to subscriptions from the groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource 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 the resource groupQuotaLimits for the MGId along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Gets the resource groupQuotaLimits for the MGId. It will include the limits, availableLimits,
+ * assignedToSubscriptions: Quotas assigned to subscriptions from the groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource 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 the resource groupQuotaLimits for the MGId.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotaLimitInner get(String mgId, String resourceProviderScope, String groupQuotaName, String resourceName);
+
+ /**
+ * Gets the List of resources groupQuotaLimits for the MGId, based on the scope.
+ *
+ * Gets the List of resources groupQuotaLimits for the MGId, based on the scope. The scope can be -
+ * providers/Microsoft.Compute/locations/<eastus>. The list elements will be same as the Get API - It will
+ * include the limits, availableLimits, assignedToSubscriptions: Quotas assigned to subscriptions from the
+ * groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List of resources groupQuotaLimits for the MGId, based on the scope as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Gets the List of resources groupQuotaLimits for the MGId, based on the scope. The scope can be -
+ * providers/Microsoft.Compute/locations/<eastus>. The list elements will be same as the Get API - It will
+ * include the limits, availableLimits, assignedToSubscriptions: Quotas assigned to subscriptions from the
+ * groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the List of resources groupQuotaLimits for the MGId, based on the scope as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable List API to check the status of a GroupQuota requests by requestId. The groupQuotaRequest history is
+ * maintained for 1 year.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return share Quota Entity list as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable List API to check the status of a GroupQuota requests by requestId. The groupQuotaRequest history is
+ * maintained for 1 year.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return share Quota Entity list as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get API to check the status of a GroupQuota request by requestId. Use the polling API - OperationsStatus URI
+ * specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate
+ * status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return aPI to check the status of a GroupQuota request by requestId along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Get API to check the status of a GroupQuota request by requestId. Use the polling API - OperationsStatus URI
+ * specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate
+ * status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return aPI to check the status of a GroupQuota request by requestId.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SubmittedResourceRequestStatusInner get(
+ String mgId, String resourceProviderScope, String groupQuotaName, String requestId);
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/GroupQuotaSubscriptionQuotaAllocationRequestsClient.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/GroupQuotaSubscriptionQuotaAllocationRequestsClient.java
new file mode 100644
index 000000000000..8b63f16c7bcf
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/GroupQuotaSubscriptionQuotaAllocationRequestsClient.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.quota.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.quota.fluent.models.SubscriptionQuotaAllocationRequestInner;
+
+/**
+ * An instance of this class provides access to all the operations defined in
+ * GroupQuotaSubscriptionQuotaAllocationRequestsClient.
+ */
+public interface GroupQuotaSubscriptionQuotaAllocationRequestsClient {
+ /**
+ * Get the status of the quota allocation request for the subscriptionId.
+ *
+ * Get the quota allocation request status for the subscriptionId by allocationId.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param allocationId Resource allocation Id.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the quota allocation request status for the subscriptionId by allocationId along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Get the quota allocation request status for the subscriptionId by allocationId.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param allocationId Resource allocation Id.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the quota allocation request status for the subscriptionId by allocationId.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SubscriptionQuotaAllocationRequestInner get(
+ String mgId, String resourceProviderScope, String groupQuotaName, String allocationId);
+
+ /**
+ * Lists all the quota allocation requests.to subscriptions
+ *
+ * Lists all the allocation requests.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Lists all the allocation requests.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Gets all the quota assigned to a subscription for the specific Resource Provider, Location. This will include
+ * the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription
+ * can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the quota assigned to a subscription for the specific Resource Provider, Location as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Gets all the quota assigned to a subscription for the specific Resource Provider, Location. This will include
+ * the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription
+ * can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 the quota assigned to a subscription for the specific Resource Provider, Location as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Request to assign a specific resource quota from group quota to a specific Subscription. The subscriptions can
+ * also reduce the quota assigned to subscription to give back the group back to MG. The quota assignment back to MG
+ * groupQuota is limited by the GroupQuota assigned to subscription, which means the maximum unused quota assigned
+ * back to MG groupQuota will be the groupQuota assigned to the subscriptions. So, this API can used to assign Quota
+ * to subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of quota assigned to a subscription for the specific Resource
+ * Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Request to assign a specific resource quota from group quota to a specific Subscription. The subscriptions can
+ * also reduce the quota assigned to subscription to give back the group back to MG. The quota assignment back to MG
+ * groupQuota is limited by the GroupQuota assigned to subscription, which means the maximum unused quota assigned
+ * back to MG groupQuota will be the groupQuota assigned to the subscriptions. So, this API can used to assign Quota
+ * to subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of quota assigned to a subscription for the specific Resource
+ * Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Request to assign a specific resource quota from group quota to a specific Subscription. The subscriptions can
+ * also reduce the quota assigned to subscription to give back the group back to MG. The quota assignment back to MG
+ * groupQuota is limited by the GroupQuota assigned to subscription, which means the maximum unused quota assigned
+ * back to MG groupQuota will be the groupQuota assigned to the subscriptions. So, this API can used to assign Quota
+ * to subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return quota assigned to a subscription for the specific Resource Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SubscriptionQuotaAllocationsInner createOrUpdate(
+ String mgId,
+ String resourceProviderScope,
+ String groupQuotaName,
+ String resourceName,
+ SubscriptionQuotaAllocationsInner allocateQuotaRequest);
+
+ /**
+ * Request to assign quota from group quota to a specific Subscription. This request will use Asynchronous pattern
+ * to check the status using Async polling as standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ *
+ * Request to assign a specific resource quota from group quota to a specific Subscription. The subscriptions can
+ * also reduce the quota assigned to subscription to give back the group back to MG. The quota assignment back to MG
+ * groupQuota is limited by the GroupQuota assigned to subscription, which means the maximum unused quota assigned
+ * back to MG groupQuota will be the groupQuota assigned to the subscriptions. So, this API can used to assign Quota
+ * to subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return quota assigned to a subscription for the specific Resource Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SubscriptionQuotaAllocationsInner createOrUpdate(
+ String mgId,
+ String resourceProviderScope,
+ String groupQuotaName,
+ String resourceName,
+ SubscriptionQuotaAllocationsInner allocateQuotaRequest,
+ Context context);
+
+ /**
+ * Request to assign quota from group quota to a specific Subscription. This request will use Asynchronous pattern
+ * with 202 response and status polling API.
+ *
+ * Request to assign quota from group quota to a specific Subscription. The subscriptions and reduce the quota
+ * assigned to subscription to give back the group back to MG. The quota assignment back to MG groupQuota is limited
+ * by the GroupQuota assigned to subscription, using this API. So, this API can used to assign Quota to
+ * subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription(s).
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of quota assigned to a subscription for the specific Resource
+ * Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Request to assign quota from group quota to a specific Subscription. The subscriptions and reduce the quota
+ * assigned to subscription to give back the group back to MG. The quota assignment back to MG groupQuota is limited
+ * by the GroupQuota assigned to subscription, using this API. So, this API can used to assign Quota to
+ * subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription(s).
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of quota assigned to a subscription for the specific Resource
+ * Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Request to assign quota from group quota to a specific Subscription. The subscriptions and reduce the quota
+ * assigned to subscription to give back the group back to MG. The quota assignment back to MG groupQuota is limited
+ * by the GroupQuota assigned to subscription, using this API. So, this API can used to assign Quota to
+ * subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription(s).
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return quota assigned to a subscription for the specific Resource Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SubscriptionQuotaAllocationsInner update(
+ String mgId,
+ String resourceProviderScope,
+ String groupQuotaName,
+ String resourceName,
+ SubscriptionQuotaAllocationsInner allocateQuotaRequest);
+
+ /**
+ * Request to assign quota from group quota to a specific Subscription. This request will use Asynchronous pattern
+ * with 202 response and status polling API.
+ *
+ * Request to assign quota from group quota to a specific Subscription. The subscriptions and reduce the quota
+ * assigned to subscription to give back the group back to MG. The quota assignment back to MG groupQuota is limited
+ * by the GroupQuota assigned to subscription, using this API. So, this API can used to assign Quota to
+ * subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription(s).
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return quota assigned to a subscription for the specific Resource Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SubscriptionQuotaAllocationsInner update(
+ String mgId,
+ String resourceProviderScope,
+ String groupQuotaName,
+ String resourceName,
+ SubscriptionQuotaAllocationsInner allocateQuotaRequest,
+ Context context);
+
+ /**
+ * Gets Quota assigned to a subscription for the specific Resource Provider, Location, ResourceName.
+ *
+ * Gets Quota assigned to a subscription for the specific Resource Provider, Location, ResourceName. This will
+ * include the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the
+ * subscription can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource 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 quota assigned to a subscription for the specific Resource Provider, Location, ResourceName along with
+ * {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Gets Quota assigned to a subscription for the specific Resource Provider, Location, ResourceName. This will
+ * include the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the
+ * subscription can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource 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 quota assigned to a subscription for the specific Resource Provider, Location, ResourceName.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SubscriptionQuotaAllocationsInner get(
+ String mgId, String resourceProviderScope, String groupQuotaName, String resourceName);
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/GroupQuotaSubscriptionsClient.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/GroupQuotaSubscriptionsClient.java
new file mode 100644
index 000000000000..37f7987119f5
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/GroupQuotaSubscriptionsClient.java
@@ -0,0 +1,222 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.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.quota.fluent.models.GroupQuotaSubscriptionIdInner;
+
+/** An instance of this class provides access to all the operations defined in GroupQuotaSubscriptionsClient. */
+public interface GroupQuotaSubscriptionsClient {
+ /**
+ * Adds subscription to the GroupQuotas.
+ *
+ * Adds a subscription to GroupQuotas.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of this represents a Azure subscriptionId that is associated with a
+ * GroupQuotaSEntity.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Adds a subscription to GroupQuotas.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of this represents a Azure subscriptionId that is associated with a
+ * GroupQuotaSEntity.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Adds a subscription to GroupQuotas.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this represents a Azure subscriptionId that is associated with a GroupQuotaSEntity.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotaSubscriptionIdInner createOrUpdate(String mgId, String groupQuotaName);
+
+ /**
+ * Adds subscription to the GroupQuotas.
+ *
+ * Adds a subscription to GroupQuotas.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this represents a Azure subscriptionId that is associated with a GroupQuotaSEntity.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotaSubscriptionIdInner createOrUpdate(String mgId, String groupQuotaName, Context context);
+
+ /**
+ * Updates the GroupQuotas with the subscription to add to the subscriptions list.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of this represents a Azure subscriptionId that is associated with a
+ * GroupQuotaSEntity.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Creates a new GroupQuota for the name passed. A RequestId will be returned by the Service. The status can be
+ * polled periodically. The status Async polling is using standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of properties and filters for ShareQuota.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Creates a new GroupQuota for the name passed. A RequestId will be returned by the Service. The status can be
+ * polled periodically. The status Async polling is using standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param groupQuotaPutRequestBody The GroupQuota body details for creation or update of a GroupQuota entity.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of properties and filters for ShareQuota.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Creates a new GroupQuota for the name passed. A RequestId will be returned by the Service. The status can be
+ * polled periodically. The status Async polling is using standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return properties and filters for ShareQuota.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotasEntityInner createOrUpdate(String mgId, String groupQuotaName);
+
+ /**
+ * Creates a new GroupQuota for the name passed.
+ *
+ * Creates a new GroupQuota for the name passed. A RequestId will be returned by the Service. The status can be
+ * polled periodically. The status Async polling is using standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param groupQuotaPutRequestBody The GroupQuota body details for creation or update of a GroupQuota entity.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return properties and filters for ShareQuota.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotasEntityInner createOrUpdate(
+ String mgId, String groupQuotaName, GroupQuotasEntityInner groupQuotaPutRequestBody, Context context);
+
+ /**
+ * Updates a new GroupQuotas for the name passed.
+ *
+ * Updates the GroupQuotas for the name passed. A GroupQuotas RequestId will be returned by the Service. The
+ * status can be polled periodically. The status Async polling is using standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked. Any change in the filters will be applicable to the future quota
+ * assignments, existing quota assigned to subscriptions from the GroupQuotas remains unchanged.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of properties and filters for ShareQuota.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Updates the GroupQuotas for the name passed. A GroupQuotas RequestId will be returned by the Service. The
+ * status can be polled periodically. The status Async polling is using standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked. Any change in the filters will be applicable to the future quota
+ * assignments, existing quota assigned to subscriptions from the GroupQuotas remains unchanged.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param groupQuotasPatchRequestBody The GroupQuotas Patch Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of properties and filters for ShareQuota.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller Updates the GroupQuotas for the name passed. A GroupQuotas RequestId will be returned by the Service. The
+ * status can be polled periodically. The status Async polling is using standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked. Any change in the filters will be applicable to the future quota
+ * assignments, existing quota assigned to subscriptions from the GroupQuotas remains unchanged.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return properties and filters for ShareQuota.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotasEntityInner update(String mgId, String groupQuotaName);
+
+ /**
+ * Updates a new GroupQuotas for the name passed.
+ *
+ * Updates the GroupQuotas for the name passed. A GroupQuotas RequestId will be returned by the Service. The
+ * status can be polled periodically. The status Async polling is using standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked. Any change in the filters will be applicable to the future quota
+ * assignments, existing quota assigned to subscriptions from the GroupQuotas remains unchanged.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param groupQuotasPatchRequestBody The GroupQuotas Patch Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return properties and filters for ShareQuota.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotasEntityInner update(
+ String mgId, String groupQuotaName, GroupQuotasEntityInner groupQuotasPatchRequestBody, Context context);
+
+ /**
+ * Gets GroupQuotas for the name passed.
+ *
+ * Gets the GroupQuotas for the name passed. It will return the GroupQuotas properties only. The details on
+ * groupQuota can be access from the groupQuota APIs.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the GroupQuotas for the name passed along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Gets the GroupQuotas for the name passed. It will return the GroupQuotas properties only. The details on
+ * groupQuota can be access from the groupQuota APIs.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the GroupQuotas for the name passed.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotasEntityInner get(String mgId, String groupQuotaName);
+
+ /**
+ * Deletes GroupQuotas for the name passed.
+ *
+ * Deletes the GroupQuotas for the name passed. All the remaining shareQuota in the GroupQuotas will be lost.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Deletes the GroupQuotas for the name passed. All the remaining shareQuota in the GroupQuotas will be lost.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.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 mgId, String groupQuotaName);
+
+ /**
+ * Lists GroupQuotas for the scope passed.
+ *
+ * Lists GroupQuotas for the scope passed. It will return the GroupQuotas QuotaEntity properties only.The details
+ * on groupQuota can be access from the groupQuota APIs.
+ *
+ * @param mgId Management Group Id.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 Group Quotas at MG level as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Lists GroupQuotas for the scope passed. It will return the GroupQuotas QuotaEntity properties only.The details
+ * on groupQuota can be access from the groupQuota APIs.
+ *
+ * @param mgId Management Group Id.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 Group Quotas at MG level as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable List API to check the status of a subscriptionId requests by requestId. Request history is maintained for 1
+ * year.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 GroupQuotaSubscriptionIds as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable List API to check the status of a subscriptionId requests by requestId. Request history is maintained for 1
+ * year.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.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 GroupQuotaSubscriptionIds as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable Get API to check the status of a subscriptionIds request by requestId. Use the polling API - OperationsStatus
+ * URI specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the
+ * intermediate status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return aPI to check the status of a subscriptionIds request by requestId along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response Get API to check the status of a subscriptionIds request by requestId. Use the polling API - OperationsStatus
+ * URI specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the
+ * intermediate status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return aPI to check the status of a subscriptionIds request by requestId.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GroupQuotaSubscriptionIdInner get(String mgId, String groupQuotaName, String requestId);
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotaLimitInner.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotaLimitInner.java
new file mode 100644
index 000000000000..53db9bed7c0c
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotaLimitInner.java
@@ -0,0 +1,55 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.quota.models.GroupQuotaDetails;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Group Quota limit. */
+@Fluent
+public final class GroupQuotaLimitInner extends ProxyResource {
+ /*
+ * Group Quota properties for the specified resource.
+ */
+ @JsonProperty(value = "properties")
+ private GroupQuotaDetails properties;
+
+ /** Creates an instance of GroupQuotaLimitInner class. */
+ public GroupQuotaLimitInner() {
+ }
+
+ /**
+ * Get the properties property: Group Quota properties for the specified resource.
+ *
+ * @return the properties value.
+ */
+ public GroupQuotaDetails properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Group Quota properties for the specified resource.
+ *
+ * @param properties the properties value to set.
+ * @return the GroupQuotaLimitInner object itself.
+ */
+ public GroupQuotaLimitInner withProperties(GroupQuotaDetails properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotaSubscriptionIdInner.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotaSubscriptionIdInner.java
new file mode 100644
index 000000000000..71b22f08d4ae
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotaSubscriptionIdInner.java
@@ -0,0 +1,55 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.quota.models.GroupQuotaSubscriptionIdProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** This represents a Azure subscriptionId that is associated with a GroupQuotaSEntity. */
+@Fluent
+public final class GroupQuotaSubscriptionIdInner extends ProxyResource {
+ /*
+ * The properties property.
+ */
+ @JsonProperty(value = "properties")
+ private GroupQuotaSubscriptionIdProperties properties;
+
+ /** Creates an instance of GroupQuotaSubscriptionIdInner class. */
+ public GroupQuotaSubscriptionIdInner() {
+ }
+
+ /**
+ * Get the properties property: The properties property.
+ *
+ * @return the properties value.
+ */
+ public GroupQuotaSubscriptionIdProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: The properties property.
+ *
+ * @param properties the properties value to set.
+ * @return the GroupQuotaSubscriptionIdInner object itself.
+ */
+ public GroupQuotaSubscriptionIdInner withProperties(GroupQuotaSubscriptionIdProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotasEntityInner.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotasEntityInner.java
new file mode 100644
index 000000000000..77dc0b61b8a3
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/GroupQuotasEntityInner.java
@@ -0,0 +1,73 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.quota.models.GroupQuotasEntityBase;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Properties and filters for ShareQuota. The request parameter is optional, if there are no filters specified. */
+@Fluent
+public final class GroupQuotasEntityInner extends ProxyResource {
+ /*
+ * Properties and filters for ShareQuota. The request parameter is optional, if there are no filters specified.
+ */
+ @JsonProperty(value = "properties")
+ private GroupQuotasEntityBase properties;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /** Creates an instance of GroupQuotasEntityInner class. */
+ public GroupQuotasEntityInner() {
+ }
+
+ /**
+ * Get the properties property: Properties and filters for ShareQuota. The request parameter is optional, if there
+ * are no filters specified.
+ *
+ * @return the properties value.
+ */
+ public GroupQuotasEntityBase properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Properties and filters for ShareQuota. The request parameter is optional, if there
+ * are no filters specified.
+ *
+ * @param properties the properties value to set.
+ * @return the GroupQuotasEntityInner object itself.
+ */
+ public GroupQuotasEntityInner withProperties(GroupQuotasEntityBase properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubmittedResourceRequestStatusInner.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubmittedResourceRequestStatusInner.java
new file mode 100644
index 000000000000..0a4cb68d57be
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubmittedResourceRequestStatusInner.java
@@ -0,0 +1,70 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.quota.models.RequestState;
+import com.azure.resourcemanager.quota.models.ResourceBaseRequest;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Status of a single GroupQuota request. */
+@Fluent
+public final class SubmittedResourceRequestStatusInner {
+ /*
+ * Requested Resource.
+ */
+ @JsonProperty(value = "requestedResource")
+ private ResourceBaseRequest requestedResource;
+
+ /*
+ * Request status.
+ */
+ @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
+ private RequestState status;
+
+ /** Creates an instance of SubmittedResourceRequestStatusInner class. */
+ public SubmittedResourceRequestStatusInner() {
+ }
+
+ /**
+ * Get the requestedResource property: Requested Resource.
+ *
+ * @return the requestedResource value.
+ */
+ public ResourceBaseRequest requestedResource() {
+ return this.requestedResource;
+ }
+
+ /**
+ * Set the requestedResource property: Requested Resource.
+ *
+ * @param requestedResource the requestedResource value to set.
+ * @return the SubmittedResourceRequestStatusInner object itself.
+ */
+ public SubmittedResourceRequestStatusInner withRequestedResource(ResourceBaseRequest requestedResource) {
+ this.requestedResource = requestedResource;
+ return this;
+ }
+
+ /**
+ * Get the status property: Request status.
+ *
+ * @return the status value.
+ */
+ public RequestState status() {
+ return this.status;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (requestedResource() != null) {
+ requestedResource().validate();
+ }
+ }
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubscriptionQuotaAllocationRequestInner.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubscriptionQuotaAllocationRequestInner.java
new file mode 100644
index 000000000000..9d74ee75b7d5
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubscriptionQuotaAllocationRequestInner.java
@@ -0,0 +1,55 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.quota.models.SubscriptionQuotaAllocationRequestProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The new quota limit for the subscription. */
+@Fluent
+public final class SubscriptionQuotaAllocationRequestInner {
+ /*
+ * The properties property.
+ */
+ @JsonProperty(value = "properties")
+ private SubscriptionQuotaAllocationRequestProperties properties;
+
+ /** Creates an instance of SubscriptionQuotaAllocationRequestInner class. */
+ public SubscriptionQuotaAllocationRequestInner() {
+ }
+
+ /**
+ * Get the properties property: The properties property.
+ *
+ * @return the properties value.
+ */
+ public SubscriptionQuotaAllocationRequestProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: The properties property.
+ *
+ * @param properties the properties value to set.
+ * @return the SubscriptionQuotaAllocationRequestInner object itself.
+ */
+ public SubscriptionQuotaAllocationRequestInner withProperties(
+ SubscriptionQuotaAllocationRequestProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubscriptionQuotaAllocationsInner.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubscriptionQuotaAllocationsInner.java
new file mode 100644
index 000000000000..cf47fb789b23
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/SubscriptionQuotaAllocationsInner.java
@@ -0,0 +1,59 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.quota.models.SubscriptionQuotaDetails;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/**
+ * Quota assigned to a subscription for the specific Resource Provider, Location, ResourceName. This will include the
+ * GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription can be
+ * assigned back to the MG Group Quota.
+ */
+@Fluent
+public final class SubscriptionQuotaAllocationsInner extends ProxyResource {
+ /*
+ * Quota properties for the specified resource.
+ */
+ @JsonProperty(value = "properties")
+ private SubscriptionQuotaDetails properties;
+
+ /** Creates an instance of SubscriptionQuotaAllocationsInner class. */
+ public SubscriptionQuotaAllocationsInner() {
+ }
+
+ /**
+ * Get the properties property: Quota properties for the specified resource.
+ *
+ * @return the properties value.
+ */
+ public SubscriptionQuotaDetails properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Quota properties for the specified resource.
+ *
+ * @param properties the properties value to set.
+ * @return the SubscriptionQuotaAllocationsInner object itself.
+ */
+ public SubscriptionQuotaAllocationsInner withProperties(SubscriptionQuotaDetails properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/package-info.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/package-info.java
index 674fb9e78bb0..1803854c58ed 100644
--- a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/package-info.java
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/models/package-info.java
@@ -2,5 +2,8 @@
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
-/** Package containing the inner data models for AzureQuotaExtensionApi. Microsoft Azure Quota Resource Provider. */
+/**
+ * Package containing the inner data models for AzureQuotaExtensionApi. Microsoft Azure Quota Resource Provider. This
+ * Swagger is for Azure MG Group Quota using GroupQuota Entity.
+ */
package com.azure.resourcemanager.quota.fluent.models;
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/package-info.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/package-info.java
index f9b7490e09e3..aa2a65d145e4 100644
--- a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/package-info.java
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/fluent/package-info.java
@@ -2,5 +2,8 @@
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
-/** Package containing the service clients for AzureQuotaExtensionApi. Microsoft Azure Quota Resource Provider. */
+/**
+ * Package containing the service clients for AzureQuotaExtensionApi. Microsoft Azure Quota Resource Provider. This
+ * Swagger is for Azure MG Group Quota using GroupQuota Entity.
+ */
package com.azure.resourcemanager.quota.fluent;
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/AzureQuotaExtensionApiBuilder.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/AzureQuotaExtensionApiBuilder.java
index a54ca0ebb91e..02fbdaba7269 100644
--- a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/AzureQuotaExtensionApiBuilder.java
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/AzureQuotaExtensionApiBuilder.java
@@ -17,6 +17,38 @@
/** A builder for creating a new instance of the AzureQuotaExtensionApiImpl type. */
@ServiceClientBuilder(serviceClients = {AzureQuotaExtensionApiImpl.class})
public final class AzureQuotaExtensionApiBuilder {
+ /*
+ * The ID of the target subscription. The value must be an UUID.
+ */
+ private String subscriptionId;
+
+ /**
+ * Sets The ID of the target subscription. The value must be an UUID.
+ *
+ * @param subscriptionId the subscriptionId value.
+ * @return the AzureQuotaExtensionApiBuilder.
+ */
+ public AzureQuotaExtensionApiBuilder subscriptionId(String subscriptionId) {
+ this.subscriptionId = subscriptionId;
+ return this;
+ }
+
+ /*
+ * server parameter
+ */
+ private String endpoint;
+
+ /**
+ * Sets server parameter.
+ *
+ * @param endpoint the endpoint value.
+ * @return the AzureQuotaExtensionApiBuilder.
+ */
+ public AzureQuotaExtensionApiBuilder endpoint(String endpoint) {
+ this.endpoint = endpoint;
+ return this;
+ }
+
/*
* server parameter
*/
@@ -103,6 +135,7 @@ public AzureQuotaExtensionApiBuilder serializerAdapter(SerializerAdapter seriali
* @return an instance of AzureQuotaExtensionApiImpl.
*/
public AzureQuotaExtensionApiImpl buildClient() {
+ String localEndpoint = (endpoint != null) ? endpoint : "";
String localEndpoint = (endpoint != null) ? endpoint : "https://management.azure.com";
AzureEnvironment localEnvironment = (environment != null) ? environment : AzureEnvironment.AZURE;
HttpPipeline localPipeline =
@@ -117,7 +150,13 @@ public AzureQuotaExtensionApiImpl buildClient() {
: SerializerFactory.createDefaultManagementSerializerAdapter();
AzureQuotaExtensionApiImpl client =
new AzureQuotaExtensionApiImpl(
- localPipeline, localSerializerAdapter, localDefaultPollInterval, localEnvironment, localEndpoint);
+ localPipeline,
+ localSerializerAdapter,
+ localDefaultPollInterval,
+ localEnvironment,
+ subscriptionId,
+ localEndpoint,
+ localEndpoint);
return client;
}
}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/AzureQuotaExtensionApiImpl.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/AzureQuotaExtensionApiImpl.java
index 47b8c2141941..caddfa8dd4fc 100644
--- a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/AzureQuotaExtensionApiImpl.java
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/AzureQuotaExtensionApiImpl.java
@@ -23,9 +23,16 @@
import com.azure.core.util.serializer.SerializerAdapter;
import com.azure.core.util.serializer.SerializerEncoding;
import com.azure.resourcemanager.quota.fluent.AzureQuotaExtensionApi;
+import com.azure.resourcemanager.quota.fluent.GroupQuotaLimitsClient;
+import com.azure.resourcemanager.quota.fluent.GroupQuotaLimitsRequestsClient;
+import com.azure.resourcemanager.quota.fluent.GroupQuotaSubscriptionQuotaAllocationRequestsClient;
+import com.azure.resourcemanager.quota.fluent.GroupQuotaSubscriptionQuotaAllocationsClient;
+import com.azure.resourcemanager.quota.fluent.GroupQuotaSubscriptionsClient;
+import com.azure.resourcemanager.quota.fluent.GroupQuotasClient;
import com.azure.resourcemanager.quota.fluent.QuotaOperationsClient;
import com.azure.resourcemanager.quota.fluent.QuotaRequestStatusClient;
import com.azure.resourcemanager.quota.fluent.QuotasClient;
+import com.azure.resourcemanager.quota.fluent.SubscriptionRequestsClient;
import com.azure.resourcemanager.quota.fluent.UsagesClient;
import java.io.IOException;
import java.lang.reflect.Type;
@@ -39,6 +46,18 @@
/** Initializes a new instance of the AzureQuotaExtensionApiImpl type. */
@ServiceClient(builder = AzureQuotaExtensionApiBuilder.class)
public final class AzureQuotaExtensionApiImpl implements AzureQuotaExtensionApi {
+ /** The ID of the target subscription. The value must be an UUID. */
+ private final String subscriptionId;
+
+ /**
+ * Gets The ID of the target subscription. The value must be an UUID.
+ *
+ * @return the subscriptionId value.
+ */
+ public String getSubscriptionId() {
+ return this.subscriptionId;
+ }
+
/** server parameter. */
private final String endpoint;
@@ -51,16 +70,16 @@ public String getEndpoint() {
return this.endpoint;
}
- /** Api Version. */
- private final String apiVersion;
+ /** server parameter. */
+ private final String endpoint;
/**
- * Gets Api Version.
+ * Gets server parameter.
*
- * @return the apiVersion value.
+ * @return the endpoint value.
*/
- public String getApiVersion() {
- return this.apiVersion;
+ public String getEndpoint() {
+ return this.endpoint;
}
/** The HTTP pipeline to send requests through. */
@@ -99,6 +118,90 @@ public Duration getDefaultPollInterval() {
return this.defaultPollInterval;
}
+ /** The GroupQuotasClient object to access its operations. */
+ private final GroupQuotasClient groupQuotas;
+
+ /**
+ * Gets the GroupQuotasClient object to access its operations.
+ *
+ * @return the GroupQuotasClient object.
+ */
+ public GroupQuotasClient getGroupQuotas() {
+ return this.groupQuotas;
+ }
+
+ /** The GroupQuotaSubscriptionsClient object to access its operations. */
+ private final GroupQuotaSubscriptionsClient groupQuotaSubscriptions;
+
+ /**
+ * Gets the GroupQuotaSubscriptionsClient object to access its operations.
+ *
+ * @return the GroupQuotaSubscriptionsClient object.
+ */
+ public GroupQuotaSubscriptionsClient getGroupQuotaSubscriptions() {
+ return this.groupQuotaSubscriptions;
+ }
+
+ /** The SubscriptionRequestsClient object to access its operations. */
+ private final SubscriptionRequestsClient subscriptionRequests;
+
+ /**
+ * Gets the SubscriptionRequestsClient object to access its operations.
+ *
+ * @return the SubscriptionRequestsClient object.
+ */
+ public SubscriptionRequestsClient getSubscriptionRequests() {
+ return this.subscriptionRequests;
+ }
+
+ /** The GroupQuotaLimitsClient object to access its operations. */
+ private final GroupQuotaLimitsClient groupQuotaLimits;
+
+ /**
+ * Gets the GroupQuotaLimitsClient object to access its operations.
+ *
+ * @return the GroupQuotaLimitsClient object.
+ */
+ public GroupQuotaLimitsClient getGroupQuotaLimits() {
+ return this.groupQuotaLimits;
+ }
+
+ /** The GroupQuotaLimitsRequestsClient object to access its operations. */
+ private final GroupQuotaLimitsRequestsClient groupQuotaLimitsRequests;
+
+ /**
+ * Gets the GroupQuotaLimitsRequestsClient object to access its operations.
+ *
+ * @return the GroupQuotaLimitsRequestsClient object.
+ */
+ public GroupQuotaLimitsRequestsClient getGroupQuotaLimitsRequests() {
+ return this.groupQuotaLimitsRequests;
+ }
+
+ /** The GroupQuotaSubscriptionQuotaAllocationsClient object to access its operations. */
+ private final GroupQuotaSubscriptionQuotaAllocationsClient groupQuotaSubscriptionQuotaAllocations;
+
+ /**
+ * Gets the GroupQuotaSubscriptionQuotaAllocationsClient object to access its operations.
+ *
+ * @return the GroupQuotaSubscriptionQuotaAllocationsClient object.
+ */
+ public GroupQuotaSubscriptionQuotaAllocationsClient getGroupQuotaSubscriptionQuotaAllocations() {
+ return this.groupQuotaSubscriptionQuotaAllocations;
+ }
+
+ /** The GroupQuotaSubscriptionQuotaAllocationRequestsClient object to access its operations. */
+ private final GroupQuotaSubscriptionQuotaAllocationRequestsClient groupQuotaSubscriptionQuotaAllocationRequests;
+
+ /**
+ * Gets the GroupQuotaSubscriptionQuotaAllocationRequestsClient object to access its operations.
+ *
+ * @return the GroupQuotaSubscriptionQuotaAllocationRequestsClient object.
+ */
+ public GroupQuotaSubscriptionQuotaAllocationRequestsClient getGroupQuotaSubscriptionQuotaAllocationRequests() {
+ return this.groupQuotaSubscriptionQuotaAllocationRequests;
+ }
+
/** The UsagesClient object to access its operations. */
private final UsagesClient usages;
@@ -154,6 +257,8 @@ public QuotaOperationsClient getQuotaOperations() {
* @param serializerAdapter The serializer to serialize an object into a string.
* @param defaultPollInterval The default poll interval for long-running operation.
* @param environment The Azure environment.
+ * @param subscriptionId The ID of the target subscription. The value must be an UUID.
+ * @param endpoint server parameter.
* @param endpoint server parameter.
*/
AzureQuotaExtensionApiImpl(
@@ -161,12 +266,23 @@ public QuotaOperationsClient getQuotaOperations() {
SerializerAdapter serializerAdapter,
Duration defaultPollInterval,
AzureEnvironment environment,
+ String subscriptionId,
+ String endpoint,
String endpoint) {
this.httpPipeline = httpPipeline;
this.serializerAdapter = serializerAdapter;
this.defaultPollInterval = defaultPollInterval;
+ this.subscriptionId = subscriptionId;
+ this.endpoint = endpoint;
this.endpoint = endpoint;
- this.apiVersion = "2023-02-01";
+ this.groupQuotas = new GroupQuotasClientImpl(this);
+ this.groupQuotaSubscriptions = new GroupQuotaSubscriptionsClientImpl(this);
+ this.subscriptionRequests = new SubscriptionRequestsClientImpl(this);
+ this.groupQuotaLimits = new GroupQuotaLimitsClientImpl(this);
+ this.groupQuotaLimitsRequests = new GroupQuotaLimitsRequestsClientImpl(this);
+ this.groupQuotaSubscriptionQuotaAllocations = new GroupQuotaSubscriptionQuotaAllocationsClientImpl(this);
+ this.groupQuotaSubscriptionQuotaAllocationRequests =
+ new GroupQuotaSubscriptionQuotaAllocationRequestsClientImpl(this);
this.usages = new UsagesClientImpl(this);
this.quotas = new QuotasClientImpl(this);
this.quotaRequestStatus = new QuotaRequestStatusClientImpl(this);
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/GroupQuotaLimitImpl.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/GroupQuotaLimitImpl.java
new file mode 100644
index 000000000000..0a3b6ed9ff03
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/GroupQuotaLimitImpl.java
@@ -0,0 +1,44 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.implementation;
+
+import com.azure.resourcemanager.quota.fluent.models.GroupQuotaLimitInner;
+import com.azure.resourcemanager.quota.models.GroupQuotaDetails;
+import com.azure.resourcemanager.quota.models.GroupQuotaLimit;
+
+public final class GroupQuotaLimitImpl implements GroupQuotaLimit {
+ private GroupQuotaLimitInner innerObject;
+
+ private final com.azure.resourcemanager.quota.QuotaManager serviceManager;
+
+ GroupQuotaLimitImpl(GroupQuotaLimitInner innerObject, com.azure.resourcemanager.quota.QuotaManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public GroupQuotaDetails properties() {
+ return this.innerModel().properties();
+ }
+
+ public GroupQuotaLimitInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.quota.QuotaManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/GroupQuotaLimitsClientImpl.java b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/GroupQuotaLimitsClientImpl.java
new file mode 100644
index 000000000000..f752c6fb2f99
--- /dev/null
+++ b/sdk/quota/azure-resourcemanager-quota/src/main/java/com/azure/resourcemanager/quota/implementation/GroupQuotaLimitsClientImpl.java
@@ -0,0 +1,1700 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.quota.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.Patch;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.quota.fluent.GroupQuotaLimitsClient;
+import com.azure.resourcemanager.quota.fluent.models.GroupQuotaLimitInner;
+import com.azure.resourcemanager.quota.models.GroupQuotaLimitList;
+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 GroupQuotaLimitsClient. */
+public final class GroupQuotaLimitsClientImpl implements GroupQuotaLimitsClient {
+ /** The proxy service used to perform REST calls. */
+ private final GroupQuotaLimitsService service;
+
+ /** The service client containing this operation class. */
+ private final AzureQuotaExtensionApiImpl client;
+
+ /**
+ * Initializes an instance of GroupQuotaLimitsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ GroupQuotaLimitsClientImpl(AzureQuotaExtensionApiImpl client) {
+ this.service =
+ RestProxy.create(GroupQuotaLimitsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for AzureQuotaExtensionApiGroupQuotaLimits to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "AzureQuotaExtensionA")
+ public interface GroupQuotaLimitsService {
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/providers/Microsoft.Management/managementGroups/{mgId}/{resourceProviderScope}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/groupQuotaLimits/{resourceName}")
+ @ExpectedResponses({200, 201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 group Quota limit on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GroupQuotaLimitInner createOrUpdate(
+ String mgId, String resourceProviderScope, String groupQuotaName, String resourceName) {
+ final GroupQuotaLimitInner groupQuotaLimitRequest = null;
+ return createOrUpdateAsync(mgId, resourceProviderScope, groupQuotaName, resourceName, groupQuotaLimitRequest)
+ .block();
+ }
+
+ /**
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group.
+ *
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status can be polled periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GroupQuotaLimitInner createOrUpdate(
+ String mgId,
+ String resourceProviderScope,
+ String groupQuotaName,
+ String resourceName,
+ GroupQuotaLimitInner groupQuotaLimitRequest,
+ Context context) {
+ return createOrUpdateAsync(
+ mgId, resourceProviderScope, groupQuotaName, resourceName, groupQuotaLimitRequest, context)
+ .block();
+ }
+
+ /**
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group.
+ *
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 group Quota limit on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GroupQuotaLimitInner update(
+ String mgId, String resourceProviderScope, String groupQuotaName, String resourceName) {
+ final GroupQuotaLimitInner groupQuotaLimitRequest = null;
+ return updateAsync(mgId, resourceProviderScope, groupQuotaName, resourceName, groupQuotaLimitRequest).block();
+ }
+
+ /**
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group.
+ *
+ * Updates the GroupQuotaLimits for the specific resource under a Management Group. A groupQuotaLimitRequestId
+ * will be returned by the Service. The status will be updated periodically. The status Async polling is using
+ * standards defined at -
+ * https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations.
+ * Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in
+ * retry-after header. Once the operation gets to terminal state - Succeeded | Failed,then the URI will change to
+ * Get URI and full details can be checked.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param groupQuotaLimitRequest The GroupQuotaLimit Request.
+ * @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 group Quota limit.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GroupQuotaLimitInner update(
+ String mgId,
+ String resourceProviderScope,
+ String groupQuotaName,
+ String resourceName,
+ GroupQuotaLimitInner groupQuotaLimitRequest,
+ Context context) {
+ return updateAsync(mgId, resourceProviderScope, groupQuotaName, resourceName, groupQuotaLimitRequest, context)
+ .block();
+ }
+
+ /**
+ * Gets the resource groupQuotaLimits for the MGId.
+ *
+ * Gets the resource groupQuotaLimits for the MGId. It will include the limits, availableLimits,
+ * assignedToSubscriptions: Quotas assigned to subscriptions from the groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 resource groupQuotaLimits for the MGId along with {@link Response} on successful completion of {@link
+ * Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Gets the resource groupQuotaLimits for the MGId. It will include the limits, availableLimits,
+ * assignedToSubscriptions: Quotas assigned to subscriptions from the groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 resource groupQuotaLimits for the MGId along with {@link Response} on successful completion of {@link
+ * Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Gets the resource groupQuotaLimits for the MGId. It will include the limits, availableLimits,
+ * assignedToSubscriptions: Quotas assigned to subscriptions from the groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 resource groupQuotaLimits for the MGId on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Gets the resource groupQuotaLimits for the MGId. It will include the limits, availableLimits,
+ * assignedToSubscriptions: Quotas assigned to subscriptions from the groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 resource groupQuotaLimits for the MGId along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response Gets the resource groupQuotaLimits for the MGId. It will include the limits, availableLimits,
+ * assignedToSubscriptions: Quotas assigned to subscriptions from the groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @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 resource groupQuotaLimits for the MGId.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GroupQuotaLimitInner get(
+ String mgId, String resourceProviderScope, String groupQuotaName, String resourceName) {
+ return getWithResponse(mgId, resourceProviderScope, groupQuotaName, resourceName, Context.NONE).getValue();
+ }
+
+ /**
+ * Gets the List of resources groupQuotaLimits for the MGId, based on the scope.
+ *
+ * Gets the List of resources groupQuotaLimits for the MGId, based on the scope. The scope can be -
+ * providers/Microsoft.Compute/locations/<eastus>. The list elements will be same as the Get API - It will
+ * include the limits, availableLimits, assignedToSubscriptions: Quotas assigned to subscriptions from the
+ * groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 List of resources groupQuotaLimits for the MGId, based on the scope along with {@link PagedResponse}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Gets the List of resources groupQuotaLimits for the MGId, based on the scope. The scope can be -
+ * providers/Microsoft.Compute/locations/<eastus>. The list elements will be same as the Get API - It will
+ * include the limits, availableLimits, assignedToSubscriptions: Quotas assigned to subscriptions from the
+ * groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 List of resources groupQuotaLimits for the MGId, based on the scope along with {@link PagedResponse}
+ * on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Gets the List of resources groupQuotaLimits for the MGId, based on the scope. The scope can be -
+ * providers/Microsoft.Compute/locations/<eastus>. The list elements will be same as the Get API - It will
+ * include the limits, availableLimits, assignedToSubscriptions: Quotas assigned to subscriptions from the
+ * groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 List of resources groupQuotaLimits for the MGId, based on the scope as paginated response with {@link
+ * PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux Gets the List of resources groupQuotaLimits for the MGId, based on the scope. The scope can be -
+ * providers/Microsoft.Compute/locations/<eastus>. The list elements will be same as the Get API - It will
+ * include the limits, availableLimits, assignedToSubscriptions: Quotas assigned to subscriptions from the
+ * groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 List of resources groupQuotaLimits for the MGId, based on the scope as paginated response with {@link
+ * PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux Gets the List of resources groupQuotaLimits for the MGId, based on the scope. The scope can be -
+ * providers/Microsoft.Compute/locations/<eastus>. The list elements will be same as the Get API - It will
+ * include the limits, availableLimits, assignedToSubscriptions: Quotas assigned to subscriptions from the
+ * groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 List of resources groupQuotaLimits for the MGId, based on the scope as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable Gets the List of resources groupQuotaLimits for the MGId, based on the scope. The scope can be -
+ * providers/Microsoft.Compute/locations/<eastus>. The list elements will be same as the Get API - It will
+ * include the limits, availableLimits, assignedToSubscriptions: Quotas assigned to subscriptions from the
+ * groupQuota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 List of resources groupQuotaLimits for the MGId, based on the scope as paginated response with {@link
+ * PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable The nextLink parameter.
+ * @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 list of Group Quota Limit details along with {@link PagedResponse} on successful completion of {@link
+ * Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono The nextLink parameter.
+ * @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 list of Group Quota Limit details along with {@link PagedResponse} on successful completion of {@link
+ * Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono List API to check the status of a GroupQuota requests by requestId. The groupQuotaRequest history is
+ * maintained for 1 year.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 share Quota Entity list along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono List API to check the status of a GroupQuota requests by requestId. The groupQuotaRequest history is
+ * maintained for 1 year.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 share Quota Entity list along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono List API to check the status of a GroupQuota requests by requestId. The groupQuotaRequest history is
+ * maintained for 1 year.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 share Quota Entity list as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux List API to check the status of a GroupQuota requests by requestId. The groupQuotaRequest history is
+ * maintained for 1 year.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 share Quota Entity list as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux List API to check the status of a GroupQuota requests by requestId. The groupQuotaRequest history is
+ * maintained for 1 year.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 share Quota Entity list as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable List API to check the status of a GroupQuota requests by requestId. The groupQuotaRequest history is
+ * maintained for 1 year.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 share Quota Entity list as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable Get API to check the status of a GroupQuota request by requestId. Use the polling API - OperationsStatus URI
+ * specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate
+ * status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @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 aPI to check the status of a GroupQuota request by requestId along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Get API to check the status of a GroupQuota request by requestId. Use the polling API - OperationsStatus URI
+ * specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate
+ * status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @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 aPI to check the status of a GroupQuota request by requestId along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Get API to check the status of a GroupQuota request by requestId. Use the polling API - OperationsStatus URI
+ * specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate
+ * status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @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 aPI to check the status of a GroupQuota request by requestId on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Get API to check the status of a GroupQuota request by requestId. Use the polling API - OperationsStatus URI
+ * specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate
+ * status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @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 aPI to check the status of a GroupQuota request by requestId along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response Get API to check the status of a GroupQuota request by requestId. Use the polling API - OperationsStatus URI
+ * specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate
+ * status. This API provides the finals status with the request details and status.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param requestId Request Id.
+ * @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 aPI to check the status of a GroupQuota request by requestId.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public SubmittedResourceRequestStatusInner get(
+ String mgId, String resourceProviderScope, String groupQuotaName, String requestId) {
+ return getWithResponse(mgId, resourceProviderScope, groupQuotaName, requestId, Context.NONE).getValue();
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The URL to get the next list of items
+ * The nextLink parameter.
+ * @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 share Quota Entity list along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono The nextLink parameter.
+ * @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 share Quota Entity list along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Get the quota allocation request status for the subscriptionId by allocationId.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param allocationId Resource allocation Id.
+ * @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 quota allocation request status for the subscriptionId by allocationId along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Get the quota allocation request status for the subscriptionId by allocationId.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param allocationId Resource allocation Id.
+ * @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 quota allocation request status for the subscriptionId by allocationId along with {@link Response} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Get the quota allocation request status for the subscriptionId by allocationId.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param allocationId Resource allocation Id.
+ * @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 quota allocation request status for the subscriptionId by allocationId on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Get the quota allocation request status for the subscriptionId by allocationId.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param allocationId Resource allocation Id.
+ * @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 quota allocation request status for the subscriptionId by allocationId along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response Get the quota allocation request status for the subscriptionId by allocationId.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param allocationId Resource allocation Id.
+ * @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 quota allocation request status for the subscriptionId by allocationId.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public SubscriptionQuotaAllocationRequestInner get(
+ String mgId, String resourceProviderScope, String groupQuotaName, String allocationId) {
+ return getWithResponse(mgId, resourceProviderScope, groupQuotaName, allocationId, Context.NONE).getValue();
+ }
+
+ /**
+ * Lists all the quota allocation requests.to subscriptions
+ *
+ * Lists all the allocation requests.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 body along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Lists all the allocation requests.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 body along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Lists all the allocation requests.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux Lists all the allocation requests.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux Lists all the allocation requests.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable Lists all the allocation requests.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable The nextLink parameter.
+ * @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 body along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono The nextLink parameter.
+ * @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 body along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Gets all the quota assigned to a subscription for the specific Resource Provider, Location. This will include
+ * the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription
+ * can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 all the quota assigned to a subscription for the specific Resource Provider, Location along with {@link
+ * PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Gets all the quota assigned to a subscription for the specific Resource Provider, Location. This will include
+ * the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription
+ * can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 all the quota assigned to a subscription for the specific Resource Provider, Location along with {@link
+ * PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono Gets all the quota assigned to a subscription for the specific Resource Provider, Location. This will include
+ * the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription
+ * can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 all the quota assigned to a subscription for the specific Resource Provider, Location as paginated
+ * response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux Gets all the quota assigned to a subscription for the specific Resource Provider, Location. This will include
+ * the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription
+ * can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 all the quota assigned to a subscription for the specific Resource Provider, Location as paginated
+ * response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux Gets all the quota assigned to a subscription for the specific Resource Provider, Location. This will include
+ * the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription
+ * can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 all the quota assigned to a subscription for the specific Resource Provider, Location as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable Gets all the quota assigned to a subscription for the specific Resource Provider, Location. This will include
+ * the GroupQuota and total quota assigned to the subscription. Only the Group quota assigned to the subscription
+ * can be assigned back to the MG Group Quota.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @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 all the quota assigned to a subscription for the specific Resource Provider, Location as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable Request to assign a specific resource quota from group quota to a specific Subscription. The subscriptions can
+ * also reduce the quota assigned to subscription to give back the group back to MG. The quota assignment back to MG
+ * groupQuota is limited by the GroupQuota assigned to subscription, which means the maximum unused quota assigned
+ * back to MG groupQuota will be the groupQuota assigned to the subscriptions. So, this API can used to assign Quota
+ * to subscriptions and assign back unused quota, which was previously assigned from MG groupQuota to subscription.
+ *
+ * @param mgId Management Group Id.
+ * @param resourceProviderScope Scope for the resource. Some resources do not require location parameter, such as
+ * CosmosDb, so can be skipped in scope. For most of the resources require -
+ * providers/Microsoft.Compute/locations/{locationName}. Some Rps such as Batch requires batchAccountName -
+ * providers/Microsoft.Batch/locations/{locationName}/accountName/{batchAccountName}. This extension enables to
+ * specify resources for any all the RPs.
+ * @param groupQuotaName The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
+ * @param resourceName Resource name.
+ * @param allocateQuotaRequest Quota requests payload.
+ * @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 quota assigned to a subscription for the specific Resource Provider, Location, ResourceName along with
+ * {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono