public async virtual Task <Response <ManagedInstanceEncryptionProtector> > GetIfExistsAsync(EncryptionProtectorName encryptionProtectorName, CancellationToken cancellationToken = default) { using var scope = _managedInstanceEncryptionProtectorClientDiagnostics.CreateScope("ManagedInstanceEncryptionProtectorCollection.GetIfExists"); scope.Start(); try { var response = await _managedInstanceEncryptionProtectorRestClient.GetAsync(Id.SubscriptionId, Id.ResourceGroupName, Id.Name, encryptionProtectorName, cancellationToken : cancellationToken).ConfigureAwait(false); if (response.Value == null) { return(Response.FromValue <ManagedInstanceEncryptionProtector>(null, response.GetRawResponse())); } return(Response.FromValue(new ManagedInstanceEncryptionProtector(Client, response.Value), response.GetRawResponse())); } catch (Exception e) { scope.Failed(e); throw; } }
public virtual ArmOperation <ManagedInstanceEncryptionProtector> CreateOrUpdate(bool waitForCompletion, EncryptionProtectorName encryptionProtectorName, ManagedInstanceEncryptionProtectorData parameters, CancellationToken cancellationToken = default) { Argument.AssertNotNull(parameters, nameof(parameters)); using var scope = _managedInstanceEncryptionProtectorClientDiagnostics.CreateScope("ManagedInstanceEncryptionProtectorCollection.CreateOrUpdate"); scope.Start(); try { var response = _managedInstanceEncryptionProtectorRestClient.CreateOrUpdate(Id.SubscriptionId, Id.ResourceGroupName, Id.Name, encryptionProtectorName, parameters, cancellationToken); var operation = new SqlArmOperation <ManagedInstanceEncryptionProtector>(new ManagedInstanceEncryptionProtectorOperationSource(Client), _managedInstanceEncryptionProtectorClientDiagnostics, Pipeline, _managedInstanceEncryptionProtectorRestClient.CreateCreateOrUpdateRequest(Id.SubscriptionId, Id.ResourceGroupName, Id.Name, encryptionProtectorName, parameters).Request, response, OperationFinalStateVia.Location); if (waitForCompletion) { operation.WaitForCompletion(cancellationToken); } return(operation); } catch (Exception e) { scope.Failed(e); throw; } }
public Response Revalidate(string subscriptionId, string resourceGroupName, string managedInstanceName, EncryptionProtectorName encryptionProtectorName, CancellationToken cancellationToken = default) { Argument.AssertNotNullOrEmpty(subscriptionId, nameof(subscriptionId)); Argument.AssertNotNullOrEmpty(resourceGroupName, nameof(resourceGroupName)); Argument.AssertNotNullOrEmpty(managedInstanceName, nameof(managedInstanceName)); using var message = CreateRevalidateRequest(subscriptionId, resourceGroupName, managedInstanceName, encryptionProtectorName); _pipeline.Send(message, cancellationToken); switch (message.Response.Status) { case 200: case 202: return(message.Response); default: throw new RequestFailedException(message.Response); } }
internal HttpMessage CreateRevalidateRequest(string subscriptionId, string resourceGroupName, string managedInstanceName, EncryptionProtectorName encryptionProtectorName) { var message = _pipeline.CreateMessage(); var request = message.Request; request.Method = RequestMethod.Post; var uri = new RawRequestUriBuilder(); uri.Reset(_endpoint); uri.AppendPath("/subscriptions/", false); uri.AppendPath(subscriptionId, true); uri.AppendPath("/resourceGroups/", false); uri.AppendPath(resourceGroupName, true); uri.AppendPath("/providers/Microsoft.Sql/managedInstances/", false); uri.AppendPath(managedInstanceName, true); uri.AppendPath("/encryptionProtector/", false); uri.AppendPath(encryptionProtectorName.ToString(), true); uri.AppendPath("/revalidate", false); uri.AppendQuery("api-version", _apiVersion, true); request.Uri = uri; _userAgent.Apply(message); return(message); }
public virtual Response <EncryptionProtector> Get(string resourceGroupName, string serverName, EncryptionProtectorName encryptionProtectorName, CancellationToken cancellationToken = default) { using var scope = _clientDiagnostics.CreateScope("EncryptionProtectorsOperations.Get"); scope.Start(); try { return(RestClient.Get(resourceGroupName, serverName, encryptionProtectorName, cancellationToken)); } catch (Exception e) { scope.Failed(e); throw; } }
public virtual EncryptionProtectorsCreateOrUpdateOperation StartCreateOrUpdate(string resourceGroupName, string serverName, EncryptionProtectorName encryptionProtectorName, EncryptionProtector parameters, CancellationToken cancellationToken = default) { if (resourceGroupName == null) { throw new ArgumentNullException(nameof(resourceGroupName)); } if (serverName == null) { throw new ArgumentNullException(nameof(serverName)); } if (parameters == null) { throw new ArgumentNullException(nameof(parameters)); } using var scope = _clientDiagnostics.CreateScope("EncryptionProtectorsOperations.StartCreateOrUpdate"); scope.Start(); try { var originalResponse = RestClient.CreateOrUpdate(resourceGroupName, serverName, encryptionProtectorName, parameters, cancellationToken); return(new EncryptionProtectorsCreateOrUpdateOperation(_clientDiagnostics, _pipeline, RestClient.CreateCreateOrUpdateRequest(resourceGroupName, serverName, encryptionProtectorName, parameters).Request, originalResponse)); } catch (Exception e) { scope.Failed(e); throw; } }
public virtual async Task <EncryptionProtectorsRevalidateOperation> StartRevalidateAsync(string resourceGroupName, string serverName, EncryptionProtectorName encryptionProtectorName, CancellationToken cancellationToken = default) { if (resourceGroupName == null) { throw new ArgumentNullException(nameof(resourceGroupName)); } if (serverName == null) { throw new ArgumentNullException(nameof(serverName)); } using var scope = _clientDiagnostics.CreateScope("EncryptionProtectorsOperations.StartRevalidate"); scope.Start(); try { var originalResponse = await RestClient.RevalidateAsync(resourceGroupName, serverName, encryptionProtectorName, cancellationToken).ConfigureAwait(false); return(new EncryptionProtectorsRevalidateOperation(_clientDiagnostics, _pipeline, RestClient.CreateRevalidateRequest(resourceGroupName, serverName, encryptionProtectorName).Request, originalResponse)); } catch (Exception e) { scope.Failed(e); throw; } }