ManagementLocksClientImpl.java
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
package com.azure.resourcemanager.resources.implementation;
import com.azure.core.annotation.BodyParam;
import com.azure.core.annotation.Delete;
import com.azure.core.annotation.ExpectedResponses;
import com.azure.core.annotation.Get;
import com.azure.core.annotation.HeaderParam;
import com.azure.core.annotation.Headers;
import com.azure.core.annotation.Host;
import com.azure.core.annotation.HostParam;
import com.azure.core.annotation.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.util.Context;
import com.azure.core.util.FluxUtil;
import com.azure.core.util.logging.ClientLogger;
import com.azure.resourcemanager.resources.fluent.ManagementLocksClient;
import com.azure.resourcemanager.resources.fluent.models.ManagementLockObjectInner;
import com.azure.resourcemanager.resources.fluentcore.collection.InnerSupportsDelete;
import com.azure.resourcemanager.resources.fluentcore.collection.InnerSupportsGet;
import com.azure.resourcemanager.resources.fluentcore.collection.InnerSupportsListing;
import com.azure.resourcemanager.resources.models.ManagementLockListResult;
import reactor.core.publisher.Mono;
/** An instance of this class provides access to all the operations defined in ManagementLocksClient. */
public final class ManagementLocksClientImpl
implements InnerSupportsGet<ManagementLockObjectInner>,
InnerSupportsListing<ManagementLockObjectInner>,
InnerSupportsDelete<Void>,
ManagementLocksClient {
private final ClientLogger logger = new ClientLogger(ManagementLocksClientImpl.class);
/** The proxy service used to perform REST calls. */
private final ManagementLocksService service;
/** The service client containing this operation class. */
private final ManagementLockClientImpl client;
/**
* Initializes an instance of ManagementLocksClientImpl.
*
* @param client the instance of the service client containing this operation class.
*/
ManagementLocksClientImpl(ManagementLockClientImpl client) {
this.service =
RestProxy.create(ManagementLocksService.class, client.getHttpPipeline(), client.getSerializerAdapter());
this.client = client;
}
/**
* The interface defining all the services for ManagementLockClientManagementLocks to be used by the proxy service
* to perform REST calls.
*/
@Host("{$host}")
@ServiceInterface(name = "ManagementLockClient")
private interface ManagementLocksService {
@Headers({"Content-Type: application/json"})
@Put(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/locks"
+ "/{lockName}")
@ExpectedResponses({200, 201})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockObjectInner>> createOrUpdateAtResourceGroupLevel(
@HostParam("$host") String endpoint,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@BodyParam("application/json") ManagementLockObjectInner parameters,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Accept: application/json;q=0.9", "Content-Type: application/json"})
@Delete(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/locks"
+ "/{lockName}")
@ExpectedResponses({200, 204})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<Void>> delete(
@HostParam("$host") String endpoint,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
Context context);
@Headers({"Content-Type: application/json"})
@Get(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/locks"
+ "/{lockName}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockObjectInner>> getByResourceGroup(
@HostParam("$host") String endpoint,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Put("/{scope}/providers/Microsoft.Authorization/locks/{lockName}")
@ExpectedResponses({200, 201})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockObjectInner>> createOrUpdateByScope(
@HostParam("$host") String endpoint,
@PathParam("scope") String scope,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@BodyParam("application/json") ManagementLockObjectInner parameters,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Accept: application/json;q=0.9", "Content-Type: application/json"})
@Delete("/{scope}/providers/Microsoft.Authorization/locks/{lockName}")
@ExpectedResponses({200, 204})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<Void>> deleteByScope(
@HostParam("$host") String endpoint,
@PathParam("scope") String scope,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
Context context);
@Headers({"Content-Type: application/json"})
@Get("/{scope}/providers/Microsoft.Authorization/locks/{lockName}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockObjectInner>> getByScope(
@HostParam("$host") String endpoint,
@PathParam("scope") String scope,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Put(
"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}"
+ "/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/locks"
+ "/{lockName}")
@ExpectedResponses({200, 201})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockObjectInner>> createOrUpdateAtResourceLevel(
@HostParam("$host") String endpoint,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("resourceProviderNamespace") String resourceProviderNamespace,
@PathParam(value = "parentResourcePath", encoded = true) String parentResourcePath,
@PathParam(value = "resourceType", encoded = true) String resourceType,
@PathParam("resourceName") String resourceName,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@BodyParam("application/json") ManagementLockObjectInner parameters,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Accept: application/json;q=0.9", "Content-Type: application/json"})
@Delete(
"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}"
+ "/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/locks"
+ "/{lockName}")
@ExpectedResponses({200, 204})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<Void>> deleteAtResourceLevel(
@HostParam("$host") String endpoint,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("resourceProviderNamespace") String resourceProviderNamespace,
@PathParam(value = "parentResourcePath", encoded = true) String parentResourcePath,
@PathParam(value = "resourceType", encoded = true) String resourceType,
@PathParam("resourceName") String resourceName,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
Context context);
@Headers({"Content-Type: application/json"})
@Get(
"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}"
+ "/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/locks"
+ "/{lockName}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockObjectInner>> getAtResourceLevel(
@HostParam("$host") String endpoint,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("resourceProviderNamespace") String resourceProviderNamespace,
@PathParam(value = "parentResourcePath", encoded = true) String parentResourcePath,
@PathParam(value = "resourceType", encoded = true) String resourceType,
@PathParam("resourceName") String resourceName,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Put("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/locks/{lockName}")
@ExpectedResponses({200, 201})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockObjectInner>> createOrUpdateAtSubscriptionLevel(
@HostParam("$host") String endpoint,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@BodyParam("application/json") ManagementLockObjectInner parameters,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Accept: application/json;q=0.9", "Content-Type: application/json"})
@Delete("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/locks/{lockName}")
@ExpectedResponses({200, 204})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<Void>> deleteAtSubscriptionLevel(
@HostParam("$host") String endpoint,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
Context context);
@Headers({"Content-Type: application/json"})
@Get("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/locks/{lockName}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockObjectInner>> getAtSubscriptionLevel(
@HostParam("$host") String endpoint,
@PathParam("lockName") String lockName,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization"
+ "/locks")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockListResult>> listByResourceGroup(
@HostParam("$host") String endpoint,
@PathParam("resourceGroupName") String resourceGroupName,
@QueryParam("$filter") String filter,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get(
"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}"
+ "/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/locks")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockListResult>> listAtResourceLevel(
@HostParam("$host") String endpoint,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("resourceProviderNamespace") String resourceProviderNamespace,
@PathParam(value = "parentResourcePath", encoded = true) String parentResourcePath,
@PathParam(value = "resourceType", encoded = true) String resourceType,
@PathParam("resourceName") String resourceName,
@QueryParam("$filter") String filter,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get("/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/locks")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockListResult>> list(
@HostParam("$host") String endpoint,
@QueryParam("$filter") String filter,
@QueryParam("api-version") String apiVersion,
@PathParam("subscriptionId") String subscriptionId,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get("/{scope}/providers/Microsoft.Authorization/locks")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockListResult>> listByScope(
@HostParam("$host") String endpoint,
@PathParam("scope") String scope,
@QueryParam("$filter") String filter,
@QueryParam("api-version") String apiVersion,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get("{nextLink}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockListResult>> listAtResourceGroupLevelNext(
@PathParam(value = "nextLink", encoded = true) String nextLink,
@HostParam("$host") String endpoint,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get("{nextLink}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockListResult>> listAtResourceLevelNext(
@PathParam(value = "nextLink", encoded = true) String nextLink,
@HostParam("$host") String endpoint,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get("{nextLink}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockListResult>> listAtSubscriptionLevelNext(
@PathParam(value = "nextLink", encoded = true) String nextLink,
@HostParam("$host") String endpoint,
@HeaderParam("Accept") String accept,
Context context);
@Headers({"Content-Type: application/json"})
@Get("{nextLink}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
Mono<Response<ManagementLockListResult>> listByScopeNext(
@PathParam(value = "nextLink", encoded = true) String nextLink,
@HostParam("$host") String endpoint,
@HeaderParam("Accept") String accept,
Context context);
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group to lock.
* @param lockName The lock name. The lock name can be a maximum of 260 characters. It cannot contain <, > %,
* &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<ManagementLockObjectInner>> createOrUpdateAtResourceGroupLevelWithResponseAsync(
String resourceGroupName, String lockName, ManagementLockObjectInner parameters) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
if (parameters == null) {
return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
} else {
parameters.validate();
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.createOrUpdateAtResourceGroupLevel(
this.client.getEndpoint(),
resourceGroupName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
parameters,
accept,
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group to lock.
* @param lockName The lock name. The lock name can be a maximum of 260 characters. It cannot contain <, > %,
* &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<ManagementLockObjectInner>> createOrUpdateAtResourceGroupLevelWithResponseAsync(
String resourceGroupName, String lockName, ManagementLockObjectInner parameters, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
if (parameters == null) {
return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
} else {
parameters.validate();
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.createOrUpdateAtResourceGroupLevel(
this.client.getEndpoint(),
resourceGroupName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
parameters,
accept,
context);
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group to lock.
* @param lockName The lock name. The lock name can be a maximum of 260 characters. It cannot contain <, > %,
* &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<ManagementLockObjectInner> createOrUpdateAtResourceGroupLevelAsync(
String resourceGroupName, String lockName, ManagementLockObjectInner parameters) {
return createOrUpdateAtResourceGroupLevelWithResponseAsync(resourceGroupName, lockName, parameters)
.flatMap(
(Response<ManagementLockObjectInner> res) -> {
if (res.getValue() != null) {
return Mono.just(res.getValue());
} else {
return Mono.empty();
}
});
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group to lock.
* @param lockName The lock name. The lock name can be a maximum of 260 characters. It cannot contain <, > %,
* &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public ManagementLockObjectInner createOrUpdateAtResourceGroupLevel(
String resourceGroupName, String lockName, ManagementLockObjectInner parameters) {
return createOrUpdateAtResourceGroupLevelAsync(resourceGroupName, lockName, parameters).block();
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group to lock.
* @param lockName The lock name. The lock name can be a maximum of 260 characters. It cannot contain <, > %,
* &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<ManagementLockObjectInner> createOrUpdateAtResourceGroupLevelWithResponse(
String resourceGroupName, String lockName, ManagementLockObjectInner parameters, Context context) {
return createOrUpdateAtResourceGroupLevelWithResponseAsync(resourceGroupName, lockName, parameters, context)
.block();
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the lock.
* @param lockName The name of lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<Void>> deleteWithResponseAsync(String resourceGroupName, String lockName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
return FluxUtil
.withContext(
context ->
service
.delete(
this.client.getEndpoint(),
resourceGroupName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the lock.
* @param lockName The name of lock to delete.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<Void>> deleteWithResponseAsync(String resourceGroupName, String lockName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
context = this.client.mergeContext(context);
return service
.delete(
this.client.getEndpoint(),
resourceGroupName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
context);
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the lock.
* @param lockName The name of lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Void> deleteAsync(String resourceGroupName, String lockName) {
return deleteWithResponseAsync(resourceGroupName, lockName).flatMap((Response<Void> res) -> Mono.empty());
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the lock.
* @param lockName The name of lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public void delete(String resourceGroupName, String lockName) {
deleteAsync(resourceGroupName, lockName).block();
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the lock.
* @param lockName The name of lock to delete.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the response.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<Void> deleteWithResponse(String resourceGroupName, String lockName, Context context) {
return deleteWithResponseAsync(resourceGroupName, lockName, context).block();
}
/**
* Gets a management lock at the resource group level.
*
* @param resourceGroupName The name of the locked resource group.
* @param lockName The name of the lock to get.
* @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 a management lock at the resource group level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<ManagementLockObjectInner>> getByResourceGroupWithResponseAsync(
String resourceGroupName, String lockName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.getByResourceGroup(
this.client.getEndpoint(),
resourceGroupName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Gets a management lock at the resource group level.
*
* @param resourceGroupName The name of the locked resource group.
* @param lockName The name of the lock to get.
* @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 a management lock at the resource group level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<ManagementLockObjectInner>> getByResourceGroupWithResponseAsync(
String resourceGroupName, String lockName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.getByResourceGroup(
this.client.getEndpoint(),
resourceGroupName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context);
}
/**
* Gets a management lock at the resource group level.
*
* @param resourceGroupName The name of the locked resource group.
* @param lockName The name of the lock to get.
* @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 a management lock at the resource group level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<ManagementLockObjectInner> getByResourceGroupAsync(String resourceGroupName, String lockName) {
return getByResourceGroupWithResponseAsync(resourceGroupName, lockName)
.flatMap(
(Response<ManagementLockObjectInner> res) -> {
if (res.getValue() != null) {
return Mono.just(res.getValue());
} else {
return Mono.empty();
}
});
}
/**
* Gets a management lock at the resource group level.
*
* @param resourceGroupName The name of the locked resource group.
* @param lockName The name of the lock to get.
* @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 a management lock at the resource group level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public ManagementLockObjectInner getByResourceGroup(String resourceGroupName, String lockName) {
return getByResourceGroupAsync(resourceGroupName, lockName).block();
}
/**
* Gets a management lock at the resource group level.
*
* @param resourceGroupName The name of the locked resource group.
* @param lockName The name of the lock to get.
* @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 a management lock at the resource group level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<ManagementLockObjectInner> getByResourceGroupWithResponse(
String resourceGroupName, String lockName, Context context) {
return getByResourceGroupWithResponseAsync(resourceGroupName, lockName, context).block();
}
/**
* Create or update a management lock by scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param lockName The name of lock.
* @param parameters Create or update management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<ManagementLockObjectInner>> createOrUpdateByScopeWithResponseAsync(
String scope, String lockName, ManagementLockObjectInner parameters) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (parameters == null) {
return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
} else {
parameters.validate();
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.createOrUpdateByScope(
this.client.getEndpoint(),
scope,
lockName,
this.client.getApiVersion(),
parameters,
accept,
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Create or update a management lock by scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param lockName The name of lock.
* @param parameters Create or update management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<ManagementLockObjectInner>> createOrUpdateByScopeWithResponseAsync(
String scope, String lockName, ManagementLockObjectInner parameters, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (parameters == null) {
return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
} else {
parameters.validate();
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.createOrUpdateByScope(
this.client.getEndpoint(), scope, lockName, this.client.getApiVersion(), parameters, accept, context);
}
/**
* Create or update a management lock by scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param lockName The name of lock.
* @param parameters Create or update management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<ManagementLockObjectInner> createOrUpdateByScopeAsync(
String scope, String lockName, ManagementLockObjectInner parameters) {
return createOrUpdateByScopeWithResponseAsync(scope, lockName, parameters)
.flatMap(
(Response<ManagementLockObjectInner> res) -> {
if (res.getValue() != null) {
return Mono.just(res.getValue());
} else {
return Mono.empty();
}
});
}
/**
* Create or update a management lock by scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param lockName The name of lock.
* @param parameters Create or update management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public ManagementLockObjectInner createOrUpdateByScope(
String scope, String lockName, ManagementLockObjectInner parameters) {
return createOrUpdateByScopeAsync(scope, lockName, parameters).block();
}
/**
* Create or update a management lock by scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param lockName The name of lock.
* @param parameters Create or update management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<ManagementLockObjectInner> createOrUpdateByScopeWithResponse(
String scope, String lockName, ManagementLockObjectInner parameters, Context context) {
return createOrUpdateByScopeWithResponseAsync(scope, lockName, parameters, context).block();
}
/**
* Delete a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<Void>> deleteByScopeWithResponseAsync(String scope, String lockName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
return FluxUtil
.withContext(
context ->
service
.deleteByScope(
this.client.getEndpoint(), scope, lockName, this.client.getApiVersion(), context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Delete a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<Void>> deleteByScopeWithResponseAsync(String scope, String lockName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
context = this.client.mergeContext(context);
return service.deleteByScope(this.client.getEndpoint(), scope, lockName, this.client.getApiVersion(), context);
}
/**
* Delete a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Void> deleteByScopeAsync(String scope, String lockName) {
return deleteByScopeWithResponseAsync(scope, lockName).flatMap((Response<Void> res) -> Mono.empty());
}
/**
* Delete a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public void deleteByScope(String scope, String lockName) {
deleteByScopeAsync(scope, lockName).block();
}
/**
* Delete a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the response.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<Void> deleteByScopeWithResponse(String scope, String lockName, Context context) {
return deleteByScopeWithResponseAsync(scope, lockName, context).block();
}
/**
* Get a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @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 a management lock by scope.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<ManagementLockObjectInner>> getByScopeWithResponseAsync(String scope, String lockName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.getByScope(
this.client.getEndpoint(), scope, lockName, this.client.getApiVersion(), accept, context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Get a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @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 a management lock by scope.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<ManagementLockObjectInner>> getByScopeWithResponseAsync(
String scope, String lockName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.getByScope(this.client.getEndpoint(), scope, lockName, this.client.getApiVersion(), accept, context);
}
/**
* Get a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @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 a management lock by scope.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<ManagementLockObjectInner> getByScopeAsync(String scope, String lockName) {
return getByScopeWithResponseAsync(scope, lockName)
.flatMap(
(Response<ManagementLockObjectInner> res) -> {
if (res.getValue() != null) {
return Mono.just(res.getValue());
} else {
return Mono.empty();
}
});
}
/**
* Get a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @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 a management lock by scope.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public ManagementLockObjectInner getByScope(String scope, String lockName) {
return getByScopeAsync(scope, lockName).block();
}
/**
* Get a management lock by scope.
*
* @param scope The scope for the lock.
* @param lockName The name of lock.
* @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 a management lock by scope.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<ManagementLockObjectInner> getByScopeWithResponse(String scope, String lockName, Context context) {
return getByScopeWithResponseAsync(scope, lockName, context).block();
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource to lock.
* @param resourceProviderNamespace The resource provider namespace of the resource to lock.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource to lock.
* @param resourceName The name of the resource to lock.
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters Parameters for creating or updating a management lock.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<ManagementLockObjectInner>> createOrUpdateAtResourceLevelWithResponseAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
ManagementLockObjectInner parameters) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (resourceProviderNamespace == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter resourceProviderNamespace is required and cannot be null."));
}
if (parentResourcePath == null) {
return Mono
.error(new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null."));
}
if (resourceType == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceType is required and cannot be null."));
}
if (resourceName == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
if (parameters == null) {
return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
} else {
parameters.validate();
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.createOrUpdateAtResourceLevel(
this.client.getEndpoint(),
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
parameters,
accept,
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource to lock.
* @param resourceProviderNamespace The resource provider namespace of the resource to lock.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource to lock.
* @param resourceName The name of the resource to lock.
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters Parameters for creating or updating a management lock.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<ManagementLockObjectInner>> createOrUpdateAtResourceLevelWithResponseAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
ManagementLockObjectInner parameters,
Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (resourceProviderNamespace == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter resourceProviderNamespace is required and cannot be null."));
}
if (parentResourcePath == null) {
return Mono
.error(new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null."));
}
if (resourceType == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceType is required and cannot be null."));
}
if (resourceName == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
if (parameters == null) {
return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
} else {
parameters.validate();
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.createOrUpdateAtResourceLevel(
this.client.getEndpoint(),
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
parameters,
accept,
context);
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource to lock.
* @param resourceProviderNamespace The resource provider namespace of the resource to lock.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource to lock.
* @param resourceName The name of the resource to lock.
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters Parameters for creating or updating a management lock.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<ManagementLockObjectInner> createOrUpdateAtResourceLevelAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
ManagementLockObjectInner parameters) {
return createOrUpdateAtResourceLevelWithResponseAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
parameters)
.flatMap(
(Response<ManagementLockObjectInner> res) -> {
if (res.getValue() != null) {
return Mono.just(res.getValue());
} else {
return Mono.empty();
}
});
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource to lock.
* @param resourceProviderNamespace The resource provider namespace of the resource to lock.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource to lock.
* @param resourceName The name of the resource to lock.
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters Parameters for creating or updating a management lock.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public ManagementLockObjectInner createOrUpdateAtResourceLevel(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
ManagementLockObjectInner parameters) {
return createOrUpdateAtResourceLevelAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
parameters)
.block();
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource to lock.
* @param resourceProviderNamespace The resource provider namespace of the resource to lock.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource to lock.
* @param resourceName The name of the resource to lock.
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters Parameters for creating or updating a management lock.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<ManagementLockObjectInner> createOrUpdateAtResourceLevelWithResponse(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
ManagementLockObjectInner parameters,
Context context) {
return createOrUpdateAtResourceLevelWithResponseAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
parameters,
context)
.block();
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource with the lock to delete.
* @param resourceProviderNamespace The resource provider namespace of the resource with the lock to delete.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource with the lock to delete.
* @param resourceName The name of the resource with the lock to delete.
* @param lockName The name of the lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<Void>> deleteAtResourceLevelWithResponseAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (resourceProviderNamespace == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter resourceProviderNamespace is required and cannot be null."));
}
if (parentResourcePath == null) {
return Mono
.error(new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null."));
}
if (resourceType == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceType is required and cannot be null."));
}
if (resourceName == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
return FluxUtil
.withContext(
context ->
service
.deleteAtResourceLevel(
this.client.getEndpoint(),
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource with the lock to delete.
* @param resourceProviderNamespace The resource provider namespace of the resource with the lock to delete.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource with the lock to delete.
* @param resourceName The name of the resource with the lock to delete.
* @param lockName The name of the lock to delete.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<Void>> deleteAtResourceLevelWithResponseAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (resourceProviderNamespace == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter resourceProviderNamespace is required and cannot be null."));
}
if (parentResourcePath == null) {
return Mono
.error(new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null."));
}
if (resourceType == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceType is required and cannot be null."));
}
if (resourceName == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
context = this.client.mergeContext(context);
return service
.deleteAtResourceLevel(
this.client.getEndpoint(),
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
context);
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource with the lock to delete.
* @param resourceProviderNamespace The resource provider namespace of the resource with the lock to delete.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource with the lock to delete.
* @param resourceName The name of the resource with the lock to delete.
* @param lockName The name of the lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Void> deleteAtResourceLevelAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName) {
return deleteAtResourceLevelWithResponseAsync(
resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, lockName)
.flatMap((Response<Void> res) -> Mono.empty());
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource with the lock to delete.
* @param resourceProviderNamespace The resource provider namespace of the resource with the lock to delete.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource with the lock to delete.
* @param resourceName The name of the resource with the lock to delete.
* @param lockName The name of the lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public void deleteAtResourceLevel(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName) {
deleteAtResourceLevelAsync(
resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, lockName)
.block();
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param resourceGroupName The name of the resource group containing the resource with the lock to delete.
* @param resourceProviderNamespace The resource provider namespace of the resource with the lock to delete.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the resource with the lock to delete.
* @param resourceName The name of the resource with the lock to delete.
* @param lockName The name of the lock to delete.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the response.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<Void> deleteAtResourceLevelWithResponse(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
Context context) {
return deleteAtResourceLevelWithResponseAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
context)
.block();
}
/**
* Get the management lock of a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath An extra path parameter needed in some services, like SQL Databases.
* @param resourceType The type of the resource.
* @param resourceName The name of the resource.
* @param lockName The name of lock.
* @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 management lock of a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<ManagementLockObjectInner>> getAtResourceLevelWithResponseAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (resourceProviderNamespace == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter resourceProviderNamespace is required and cannot be null."));
}
if (parentResourcePath == null) {
return Mono
.error(new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null."));
}
if (resourceType == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceType is required and cannot be null."));
}
if (resourceName == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.getAtResourceLevel(
this.client.getEndpoint(),
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Get the management lock of a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath An extra path parameter needed in some services, like SQL Databases.
* @param resourceType The type of the resource.
* @param resourceName The name of the resource.
* @param lockName The name of lock.
* @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 management lock of a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<ManagementLockObjectInner>> getAtResourceLevelWithResponseAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (resourceProviderNamespace == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter resourceProviderNamespace is required and cannot be null."));
}
if (parentResourcePath == null) {
return Mono
.error(new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null."));
}
if (resourceType == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceType is required and cannot be null."));
}
if (resourceName == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceName is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.getAtResourceLevel(
this.client.getEndpoint(),
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context);
}
/**
* Get the management lock of a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath An extra path parameter needed in some services, like SQL Databases.
* @param resourceType The type of the resource.
* @param resourceName The name of the resource.
* @param lockName The name of lock.
* @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 management lock of a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<ManagementLockObjectInner> getAtResourceLevelAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName) {
return getAtResourceLevelWithResponseAsync(
resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, lockName)
.flatMap(
(Response<ManagementLockObjectInner> res) -> {
if (res.getValue() != null) {
return Mono.just(res.getValue());
} else {
return Mono.empty();
}
});
}
/**
* Get the management lock of a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath An extra path parameter needed in some services, like SQL Databases.
* @param resourceType The type of the resource.
* @param resourceName The name of the resource.
* @param lockName The name of lock.
* @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 management lock of a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public ManagementLockObjectInner getAtResourceLevel(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName) {
return getAtResourceLevelAsync(
resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, lockName)
.block();
}
/**
* Get the management lock of a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath An extra path parameter needed in some services, like SQL Databases.
* @param resourceType The type of the resource.
* @param resourceName The name of the resource.
* @param lockName The name of lock.
* @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 management lock of a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<ManagementLockObjectInner> getAtResourceLevelWithResponse(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String lockName,
Context context) {
return getAtResourceLevelWithResponseAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
lockName,
context)
.block();
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<ManagementLockObjectInner>> createOrUpdateAtSubscriptionLevelWithResponseAsync(
String lockName, ManagementLockObjectInner parameters) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
if (parameters == null) {
return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
} else {
parameters.validate();
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.createOrUpdateAtSubscriptionLevel(
this.client.getEndpoint(),
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
parameters,
accept,
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<ManagementLockObjectInner>> createOrUpdateAtSubscriptionLevelWithResponseAsync(
String lockName, ManagementLockObjectInner parameters, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
if (parameters == null) {
return Mono.error(new IllegalArgumentException("Parameter parameters is required and cannot be null."));
} else {
parameters.validate();
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.createOrUpdateAtSubscriptionLevel(
this.client.getEndpoint(),
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
parameters,
accept,
context);
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<ManagementLockObjectInner> createOrUpdateAtSubscriptionLevelAsync(
String lockName, ManagementLockObjectInner parameters) {
return createOrUpdateAtSubscriptionLevelWithResponseAsync(lockName, parameters)
.flatMap(
(Response<ManagementLockObjectInner> res) -> {
if (res.getValue() != null) {
return Mono.just(res.getValue());
} else {
return Mono.empty();
}
});
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public ManagementLockObjectInner createOrUpdateAtSubscriptionLevel(
String lockName, ManagementLockObjectInner parameters) {
return createOrUpdateAtSubscriptionLevelAsync(lockName, parameters).block();
}
/**
* When you apply a lock at a parent scope, all child resources inherit the same lock. To create management locks,
* you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Of the built-in
* roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock. The lock name can be a maximum of 260 characters. It cannot contain <, >
* %, &, :, \, ?, /, or any control characters.
* @param parameters The management lock parameters.
* @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 lock information.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<ManagementLockObjectInner> createOrUpdateAtSubscriptionLevelWithResponse(
String lockName, ManagementLockObjectInner parameters, Context context) {
return createOrUpdateAtSubscriptionLevelWithResponseAsync(lockName, parameters, context).block();
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<Void>> deleteAtSubscriptionLevelWithResponseAsync(String lockName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
return FluxUtil
.withContext(
context ->
service
.deleteAtSubscriptionLevel(
this.client.getEndpoint(),
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock to delete.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<Void>> deleteAtSubscriptionLevelWithResponseAsync(String lockName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
context = this.client.mergeContext(context);
return service
.deleteAtSubscriptionLevel(
this.client.getEndpoint(),
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
context);
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the completion.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Void> deleteAtSubscriptionLevelAsync(String lockName) {
return deleteAtSubscriptionLevelWithResponseAsync(lockName).flatMap((Response<Void> res) -> Mono.empty());
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock to delete.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public void deleteAtSubscriptionLevel(String lockName) {
deleteAtSubscriptionLevelAsync(lockName).block();
}
/**
* To delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/*
* actions. Of the built-in roles, only Owner and User Access Administrator are granted those actions.
*
* @param lockName The name of lock to delete.
* @param context The context to associate with this operation.
* @throws IllegalArgumentException thrown if parameters fail the validation.
* @throws ManagementException thrown if the request is rejected by server.
* @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
* @return the response.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<Void> deleteAtSubscriptionLevelWithResponse(String lockName, Context context) {
return deleteAtSubscriptionLevelWithResponseAsync(lockName, context).block();
}
/**
* Gets a management lock at the subscription level.
*
* @param lockName The name of the lock to get.
* @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 a management lock at the subscription level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<Response<ManagementLockObjectInner>> getAtSubscriptionLevelWithResponseAsync(String lockName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.getAtSubscriptionLevel(
this.client.getEndpoint(),
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Gets a management lock at the subscription level.
*
* @param lockName The name of the lock to get.
* @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 a management lock at the subscription level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<Response<ManagementLockObjectInner>> getAtSubscriptionLevelWithResponseAsync(
String lockName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (lockName == null) {
return Mono.error(new IllegalArgumentException("Parameter lockName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.getAtSubscriptionLevel(
this.client.getEndpoint(),
lockName,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context);
}
/**
* Gets a management lock at the subscription level.
*
* @param lockName The name of the lock to get.
* @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 a management lock at the subscription level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Mono<ManagementLockObjectInner> getAtSubscriptionLevelAsync(String lockName) {
return getAtSubscriptionLevelWithResponseAsync(lockName)
.flatMap(
(Response<ManagementLockObjectInner> res) -> {
if (res.getValue() != null) {
return Mono.just(res.getValue());
} else {
return Mono.empty();
}
});
}
/**
* Gets a management lock at the subscription level.
*
* @param lockName The name of the lock to get.
* @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 a management lock at the subscription level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public ManagementLockObjectInner getAtSubscriptionLevel(String lockName) {
return getAtSubscriptionLevelAsync(lockName).block();
}
/**
* Gets a management lock at the subscription level.
*
* @param lockName The name of the lock to get.
* @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 a management lock at the subscription level.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
public Response<ManagementLockObjectInner> getAtSubscriptionLevelWithResponse(String lockName, Context context) {
return getAtSubscriptionLevelWithResponseAsync(lockName, context).block();
}
/**
* Gets all the management locks for a resource group.
*
* @param resourceGroupName The name of the resource group containing the locks to get.
* @param filter The filter to apply on the 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 management locks for a resource group.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listByResourceGroupSinglePageAsync(
String resourceGroupName, String filter) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.listByResourceGroup(
this.client.getEndpoint(),
resourceGroupName,
filter,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context))
.<PagedResponse<ManagementLockObjectInner>>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Gets all the management locks for a resource group.
*
* @param resourceGroupName The name of the resource group containing the locks to get.
* @param filter The filter to apply on the operation.
* @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 management locks for a resource group.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listByResourceGroupSinglePageAsync(
String resourceGroupName, String filter, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.listByResourceGroup(
this.client.getEndpoint(),
resourceGroupName,
filter,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context)
.map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null));
}
/**
* Gets all the management locks for a resource group.
*
* @param resourceGroupName The name of the resource group containing the locks to get.
* @param filter The filter to apply on the 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 management locks for a resource group.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedFlux<ManagementLockObjectInner> listByResourceGroupAsync(String resourceGroupName, String filter) {
return new PagedFlux<>(
() -> listByResourceGroupSinglePageAsync(resourceGroupName, filter),
nextLink -> listAtResourceGroupLevelNextSinglePageAsync(nextLink));
}
/**
* Gets all the management locks for a resource group.
*
* @param resourceGroupName The name of the resource group containing the locks to get.
* @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 management locks for a resource group.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedFlux<ManagementLockObjectInner> listByResourceGroupAsync(String resourceGroupName) {
final String filter = null;
return new PagedFlux<>(
() -> listByResourceGroupSinglePageAsync(resourceGroupName, filter),
nextLink -> listAtResourceGroupLevelNextSinglePageAsync(nextLink));
}
/**
* Gets all the management locks for a resource group.
*
* @param resourceGroupName The name of the resource group containing the locks to get.
* @param filter The filter to apply on the operation.
* @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 management locks for a resource group.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
private PagedFlux<ManagementLockObjectInner> listByResourceGroupAsync(
String resourceGroupName, String filter, Context context) {
return new PagedFlux<>(
() -> listByResourceGroupSinglePageAsync(resourceGroupName, filter, context),
nextLink -> listAtResourceGroupLevelNextSinglePageAsync(nextLink, context));
}
/**
* Gets all the management locks for a resource group.
*
* @param resourceGroupName The name of the resource group containing the locks to get.
* @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 management locks for a resource group.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable<ManagementLockObjectInner> listByResourceGroup(String resourceGroupName) {
final String filter = null;
return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName, filter));
}
/**
* Gets all the management locks for a resource group.
*
* @param resourceGroupName The name of the resource group containing the locks to get.
* @param filter The filter to apply on the operation.
* @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 management locks for a resource group.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable<ManagementLockObjectInner> listByResourceGroup(
String resourceGroupName, String filter, Context context) {
return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName, filter, context));
}
/**
* Gets all the management locks for a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group containing the locked resource. The name is case
* insensitive.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the locked resource.
* @param resourceName The name of the locked resource.
* @param filter The filter to apply on the 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 management locks for a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listAtResourceLevelSinglePageAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String filter) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (resourceProviderNamespace == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter resourceProviderNamespace is required and cannot be null."));
}
if (parentResourcePath == null) {
return Mono
.error(new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null."));
}
if (resourceType == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceType is required and cannot be null."));
}
if (resourceName == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.listAtResourceLevel(
this.client.getEndpoint(),
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
filter,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context))
.<PagedResponse<ManagementLockObjectInner>>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Gets all the management locks for a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group containing the locked resource. The name is case
* insensitive.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the locked resource.
* @param resourceName The name of the locked resource.
* @param filter The filter to apply on the operation.
* @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 management locks for a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listAtResourceLevelSinglePageAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String filter,
Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (resourceGroupName == null) {
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
if (resourceProviderNamespace == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter resourceProviderNamespace is required and cannot be null."));
}
if (parentResourcePath == null) {
return Mono
.error(new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null."));
}
if (resourceType == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceType is required and cannot be null."));
}
if (resourceName == null) {
return Mono.error(new IllegalArgumentException("Parameter resourceName is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.listAtResourceLevel(
this.client.getEndpoint(),
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
filter,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context)
.map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null));
}
/**
* Gets all the management locks for a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group containing the locked resource. The name is case
* insensitive.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the locked resource.
* @param resourceName The name of the locked resource.
* @param filter The filter to apply on the 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 management locks for a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedFlux<ManagementLockObjectInner> listAtResourceLevelAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String filter) {
return new PagedFlux<>(
() ->
listAtResourceLevelSinglePageAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
filter),
nextLink -> listAtResourceLevelNextSinglePageAsync(nextLink));
}
/**
* Gets all the management locks for a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group containing the locked resource. The name is case
* insensitive.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the locked resource.
* @param resourceName The name of the locked resource.
* @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 management locks for a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedFlux<ManagementLockObjectInner> listAtResourceLevelAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName) {
final String filter = null;
return new PagedFlux<>(
() ->
listAtResourceLevelSinglePageAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
filter),
nextLink -> listAtResourceLevelNextSinglePageAsync(nextLink));
}
/**
* Gets all the management locks for a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group containing the locked resource. The name is case
* insensitive.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the locked resource.
* @param resourceName The name of the locked resource.
* @param filter The filter to apply on the operation.
* @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 management locks for a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
private PagedFlux<ManagementLockObjectInner> listAtResourceLevelAsync(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String filter,
Context context) {
return new PagedFlux<>(
() ->
listAtResourceLevelSinglePageAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
filter,
context),
nextLink -> listAtResourceLevelNextSinglePageAsync(nextLink, context));
}
/**
* Gets all the management locks for a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group containing the locked resource. The name is case
* insensitive.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the locked resource.
* @param resourceName The name of the locked resource.
* @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 management locks for a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable<ManagementLockObjectInner> listAtResourceLevel(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName) {
final String filter = null;
return new PagedIterable<>(
listAtResourceLevelAsync(
resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, filter));
}
/**
* Gets all the management locks for a resource or any level below resource.
*
* @param resourceGroupName The name of the resource group containing the locked resource. The name is case
* insensitive.
* @param resourceProviderNamespace The namespace of the resource provider.
* @param parentResourcePath The parent resource identity.
* @param resourceType The resource type of the locked resource.
* @param resourceName The name of the locked resource.
* @param filter The filter to apply on the operation.
* @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 management locks for a resource or any level below resource.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable<ManagementLockObjectInner> listAtResourceLevel(
String resourceGroupName,
String resourceProviderNamespace,
String parentResourcePath,
String resourceType,
String resourceName,
String filter,
Context context) {
return new PagedIterable<>(
listAtResourceLevelAsync(
resourceGroupName,
resourceProviderNamespace,
parentResourcePath,
resourceType,
resourceName,
filter,
context));
}
/**
* Gets all the management locks for a subscription.
*
* @param filter The filter to apply on the 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 management locks for a subscription.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listSinglePageAsync(String filter) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.list(
this.client.getEndpoint(),
filter,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context))
.<PagedResponse<ManagementLockObjectInner>>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Gets all the management locks for a subscription.
*
* @param filter The filter to apply on the operation.
* @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 management locks for a subscription.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listSinglePageAsync(String filter, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (this.client.getSubscriptionId() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getSubscriptionId() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.list(
this.client.getEndpoint(),
filter,
this.client.getApiVersion(),
this.client.getSubscriptionId(),
accept,
context)
.map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null));
}
/**
* Gets all the management locks for a subscription.
*
* @param filter The filter to apply on the 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 management locks for a subscription.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedFlux<ManagementLockObjectInner> listAsync(String filter) {
return new PagedFlux<>(
() -> listSinglePageAsync(filter), nextLink -> listAtSubscriptionLevelNextSinglePageAsync(nextLink));
}
/**
* Gets all the management locks for a subscription.
*
* @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 management locks for a subscription.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedFlux<ManagementLockObjectInner> listAsync() {
final String filter = null;
return new PagedFlux<>(
() -> listSinglePageAsync(filter), nextLink -> listAtSubscriptionLevelNextSinglePageAsync(nextLink));
}
/**
* Gets all the management locks for a subscription.
*
* @param filter The filter to apply on the operation.
* @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 management locks for a subscription.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
private PagedFlux<ManagementLockObjectInner> listAsync(String filter, Context context) {
return new PagedFlux<>(
() -> listSinglePageAsync(filter, context),
nextLink -> listAtSubscriptionLevelNextSinglePageAsync(nextLink, context));
}
/**
* Gets all the management locks for a subscription.
*
* @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 management locks for a subscription.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable<ManagementLockObjectInner> list() {
final String filter = null;
return new PagedIterable<>(listAsync(filter));
}
/**
* Gets all the management locks for a subscription.
*
* @param filter The filter to apply on the operation.
* @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 management locks for a subscription.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable<ManagementLockObjectInner> list(String filter, Context context) {
return new PagedIterable<>(listAsync(filter, context));
}
/**
* Gets all the management locks for a scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param filter The filter to apply on the 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 management locks for a scope.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listByScopeSinglePageAsync(String scope, String filter) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
.listByScope(
this.client.getEndpoint(), scope, filter, this.client.getApiVersion(), accept, context))
.<PagedResponse<ManagementLockObjectInner>>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Gets all the management locks for a scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param filter The filter to apply on the operation.
* @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 management locks for a scope.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listByScopeSinglePageAsync(
String scope, String filter, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.listByScope(this.client.getEndpoint(), scope, filter, this.client.getApiVersion(), accept, context)
.map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null));
}
/**
* Gets all the management locks for a scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param filter The filter to apply on the 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 management locks for a scope.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedFlux<ManagementLockObjectInner> listByScopeAsync(String scope, String filter) {
return new PagedFlux<>(
() -> listByScopeSinglePageAsync(scope, filter), nextLink -> listByScopeNextSinglePageAsync(nextLink));
}
/**
* Gets all the management locks for a scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @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 management locks for a scope.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedFlux<ManagementLockObjectInner> listByScopeAsync(String scope) {
final String filter = null;
return new PagedFlux<>(
() -> listByScopeSinglePageAsync(scope, filter), nextLink -> listByScopeNextSinglePageAsync(nextLink));
}
/**
* Gets all the management locks for a scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param filter The filter to apply on the operation.
* @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 management locks for a scope.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
private PagedFlux<ManagementLockObjectInner> listByScopeAsync(String scope, String filter, Context context) {
return new PagedFlux<>(
() -> listByScopeSinglePageAsync(scope, filter, context),
nextLink -> listByScopeNextSinglePageAsync(nextLink, context));
}
/**
* Gets all the management locks for a scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @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 management locks for a scope.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable<ManagementLockObjectInner> listByScope(String scope) {
final String filter = null;
return new PagedIterable<>(listByScopeAsync(scope, filter));
}
/**
* Gets all the management locks for a scope.
*
* @param scope The scope for the lock. When providing a scope for the assignment, use
* '/subscriptions/{subscriptionId}' for subscriptions,
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}' for resource groups, and
* '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePathIfPresent}/{resourceType}/{resourceName}'
* for resources.
* @param filter The filter to apply on the operation.
* @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 management locks for a scope.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
public PagedIterable<ManagementLockObjectInner> listByScope(String scope, String filter, Context context) {
return new PagedIterable<>(listByScopeAsync(scope, filter, context));
}
/**
* Get the next page of items.
*
* @param nextLink 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 list of locks.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listAtResourceGroupLevelNextSinglePageAsync(
String nextLink) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context -> service.listAtResourceGroupLevelNext(nextLink, this.client.getEndpoint(), accept, context))
.<PagedResponse<ManagementLockObjectInner>>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Get the next page of items.
*
* @param nextLink 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 list of locks.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listAtResourceGroupLevelNextSinglePageAsync(
String nextLink, Context context) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.listAtResourceGroupLevelNext(nextLink, this.client.getEndpoint(), accept, context)
.map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null));
}
/**
* Get the next page of items.
*
* @param nextLink 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 list of locks.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listAtResourceLevelNextSinglePageAsync(String nextLink) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context -> service.listAtResourceLevelNext(nextLink, this.client.getEndpoint(), accept, context))
.<PagedResponse<ManagementLockObjectInner>>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Get the next page of items.
*
* @param nextLink 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 list of locks.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listAtResourceLevelNextSinglePageAsync(
String nextLink, Context context) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.listAtResourceLevelNext(nextLink, this.client.getEndpoint(), accept, context)
.map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null));
}
/**
* Get the next page of items.
*
* @param nextLink 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 list of locks.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listAtSubscriptionLevelNextSinglePageAsync(String nextLink) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(
context -> service.listAtSubscriptionLevelNext(nextLink, this.client.getEndpoint(), accept, context))
.<PagedResponse<ManagementLockObjectInner>>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Get the next page of items.
*
* @param nextLink 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 list of locks.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listAtSubscriptionLevelNextSinglePageAsync(
String nextLink, Context context) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.listAtSubscriptionLevelNext(nextLink, this.client.getEndpoint(), accept, context)
.map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null));
}
/**
* Get the next page of items.
*
* @param nextLink 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 list of locks.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listByScopeNextSinglePageAsync(String nextLink) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.listByScopeNext(nextLink, this.client.getEndpoint(), accept, context))
.<PagedResponse<ManagementLockObjectInner>>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null))
.subscriberContext(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext())));
}
/**
* Get the next page of items.
*
* @param nextLink 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 list of locks.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
private Mono<PagedResponse<ManagementLockObjectInner>> listByScopeNextSinglePageAsync(
String nextLink, Context context) {
if (nextLink == null) {
return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
}
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
.listByScopeNext(nextLink, this.client.getEndpoint(), accept, context)
.map(
res ->
new PagedResponseBase<>(
res.getRequest(),
res.getStatusCode(),
res.getHeaders(),
res.getValue().value(),
res.getValue().nextLink(),
null));
}
}