public override void Execute() { if (ParameterSetName.Equals(ParameterSetNames.ByFactoryObject, StringComparison.OrdinalIgnoreCase)) { VirtualNetworkGatewayName = InputObject.Name; ResourceGroupName = InputObject.ResourceGroupName; } else if (ParameterSetName.Equals(ParameterSetNames.ByResourceId, StringComparison.OrdinalIgnoreCase)) { var parsedResourceId = new ResourceIdentifier(ResourceId); VirtualNetworkGatewayName = parsedResourceId.ResourceName; ResourceGroupName = parsedResourceId.ResourceGroupName; } base.Execute(); if (!IsVirtualNetworkGatewayPresent(ResourceGroupName, VirtualNetworkGatewayName)) { throw new ArgumentException(Microsoft.Azure.Commands.Network.Properties.Resources.ResourceNotFound); } var req = new P2SVpnConnectionRequest(new List <string>(VpnConnectionId)); this.VirtualNetworkGatewayClient.DisconnectVirtualNetworkGatewayVpnConnections(ResourceGroupName, VirtualNetworkGatewayName, req); var getVirtualNetworkGateway = this.GetVirtualNetworkGateway(ResourceGroupName, VirtualNetworkGatewayName); WriteObject(getVirtualNetworkGateway); }
public override void Execute() { base.Execute(); PSP2SVpnGateway existingP2SVpnGateway; if (ParameterSetName.Equals(CortexParameterSetNames.ByP2SVpnGatewayObject, StringComparison.OrdinalIgnoreCase)) { existingP2SVpnGateway = this.InputObject; this.ResourceGroupName = this.InputObject.ResourceGroupName; this.Name = this.InputObject.Name; } else { if (ParameterSetName.Equals(CortexParameterSetNames.ByP2SVpnGatewayResourceId, StringComparison.OrdinalIgnoreCase)) { var parsedResourceId = new ResourceIdentifier(ResourceId); Name = parsedResourceId.ResourceName; ResourceGroupName = parsedResourceId.ResourceGroupName; } existingP2SVpnGateway = this.GetP2SVpnGateway(this.ResourceGroupName, this.Name); } if (existingP2SVpnGateway == null) { throw new PSArgumentException(Properties.Resources.P2SVpnGatewayNotFound); } var req = new P2SVpnConnectionRequest(new List <string>(VpnConnectionId)); this.P2SVpnGatewayClient.DisconnectP2sVpnConnections(ResourceGroupName, Name, req); WriteObject(existingP2SVpnGateway); }
public virtual ArmOperation DisconnectP2SVpnConnections(WaitUntil waitUntil, P2SVpnConnectionRequest request, CancellationToken cancellationToken = default) { Argument.AssertNotNull(request, nameof(request)); using var scope = _p2SVpnGatewayP2sVpnGatewaysClientDiagnostics.CreateScope("P2SVpnGatewayResource.DisconnectP2SVpnConnections"); scope.Start(); try { var response = _p2SVpnGatewayP2sVpnGatewaysRestClient.DisconnectP2SVpnConnections(Id.SubscriptionId, Id.ResourceGroupName, Id.Name, request, cancellationToken); var operation = new NetworkArmOperation(_p2SVpnGatewayP2sVpnGatewaysClientDiagnostics, Pipeline, _p2SVpnGatewayP2sVpnGatewaysRestClient.CreateDisconnectP2SVpnConnectionsRequest(Id.SubscriptionId, Id.ResourceGroupName, Id.Name, request).Request, response, OperationFinalStateVia.Location); if (waitUntil == WaitUntil.Completed) { operation.WaitForCompletionResponse(cancellationToken); } return(operation); } catch (Exception e) { scope.Failed(e); throw; } }
public virtual P2SVpnGatewaysDisconnectP2SVpnConnectionsOperation StartDisconnectP2SVpnConnections(string resourceGroupName, string p2SVpnGatewayName, P2SVpnConnectionRequest request, CancellationToken cancellationToken = default) { if (resourceGroupName == null) { throw new ArgumentNullException(nameof(resourceGroupName)); } if (p2SVpnGatewayName == null) { throw new ArgumentNullException(nameof(p2SVpnGatewayName)); } if (request == null) { throw new ArgumentNullException(nameof(request)); } using var scope = _clientDiagnostics.CreateScope("P2SVpnGatewaysOperations.StartDisconnectP2SVpnConnections"); scope.Start(); try { var originalResponse = RestClient.DisconnectP2SVpnConnections(resourceGroupName, p2SVpnGatewayName, request, cancellationToken); return(new P2SVpnGatewaysDisconnectP2SVpnConnectionsOperation(_clientDiagnostics, _pipeline, RestClient.CreateDisconnectP2SVpnConnectionsRequest(resourceGroupName, p2SVpnGatewayName, request).Request, originalResponse)); } catch (Exception e) { scope.Failed(e); throw; } }
public async virtual Task <ArmOperation> DisconnectP2SVpnConnectionsAsync(bool waitForCompletion, P2SVpnConnectionRequest request, CancellationToken cancellationToken = default) { Argument.AssertNotNull(request, nameof(request)); using var scope = _p2SVpnGatewayP2sVpnGatewaysClientDiagnostics.CreateScope("P2SVpnGateway.DisconnectP2SVpnConnections"); scope.Start(); try { var response = await _p2SVpnGatewayP2sVpnGatewaysRestClient.DisconnectP2SVpnConnectionsAsync(Id.SubscriptionId, Id.ResourceGroupName, Id.Name, request, cancellationToken).ConfigureAwait(false); var operation = new NetworkArmOperation(_p2SVpnGatewayP2sVpnGatewaysClientDiagnostics, Pipeline, _p2SVpnGatewayP2sVpnGatewaysRestClient.CreateDisconnectP2SVpnConnectionsRequest(Id.SubscriptionId, Id.ResourceGroupName, Id.Name, request).Request, response, OperationFinalStateVia.Location); if (waitForCompletion) { await operation.WaitForCompletionResponseAsync(cancellationToken).ConfigureAwait(false); } return(operation); } catch (Exception e) { scope.Failed(e); throw; } }
/// <summary> /// Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the /// specified resource group. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// The name of the resource group. /// </param> /// <param name='p2sVpnGatewayName'> /// The name of the P2S Vpn Gateway. /// </param> /// <param name='request'> /// The parameters are supplied to disconnect p2s vpn connections. /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task BeginDisconnectP2sVpnConnectionsAsync(this IP2sVpnGatewaysOperations operations, string resourceGroupName, string p2sVpnGatewayName, P2SVpnConnectionRequest request, CancellationToken cancellationToken = default(CancellationToken)) { (await operations.BeginDisconnectP2sVpnConnectionsWithHttpMessagesAsync(resourceGroupName, p2sVpnGatewayName, request, null, cancellationToken).ConfigureAwait(false)).Dispose(); }
/// <summary> /// Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the /// specified resource group. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// The name of the resource group. /// </param> /// <param name='p2sVpnGatewayName'> /// The name of the P2S Vpn Gateway. /// </param> /// <param name='request'> /// The parameters are supplied to disconnect p2s vpn connections. /// </param> public static void BeginDisconnectP2sVpnConnections(this IP2sVpnGatewaysOperations operations, string resourceGroupName, string p2sVpnGatewayName, P2SVpnConnectionRequest request) { operations.BeginDisconnectP2sVpnConnectionsAsync(resourceGroupName, p2sVpnGatewayName, request).GetAwaiter().GetResult(); }
public virtual P2SVpnGatewayDisconnectP2SVpnConnectionsOperation DisconnectP2SVpnConnections(P2SVpnConnectionRequest request, bool waitForCompletion = true, CancellationToken cancellationToken = default) { if (request == null) { throw new ArgumentNullException(nameof(request)); } using var scope = _clientDiagnostics.CreateScope("P2SVpnGateway.DisconnectP2SVpnConnections"); scope.Start(); try { var response = _restClient.DisconnectP2SVpnConnections(Id.ResourceGroupName, Id.Name, request, cancellationToken); var operation = new P2SVpnGatewayDisconnectP2SVpnConnectionsOperation(_clientDiagnostics, Pipeline, _restClient.CreateDisconnectP2SVpnConnectionsRequest(Id.ResourceGroupName, Id.Name, request).Request, response); if (waitForCompletion) { operation.WaitForCompletion(cancellationToken); } return(operation); } catch (Exception e) { scope.Failed(e); throw; } }