public AzureDedicatedCircuit SetAzureDedicatedCircuitProperties(Guid serviceKey, UInt32?bandwidth, CircuitSku?sku) { var updateParams = new DedicatedCircuitUpdateParameters() { }; if (bandwidth.HasValue) { updateParams.Bandwidth = bandwidth.Value.ToString(); } if (sku.HasValue) { updateParams.Sku = sku.Value.ToString(); } var result = Client.DedicatedCircuits.Update(serviceKey.ToString(), updateParams); if (result.HttpStatusCode.Equals(HttpStatusCode.OK)) { return(GetAzureDedicatedCircuit(serviceKey)); } else { throw new Exception(result.Error.ToString()); } }
public void CanCreateGetListUpdateAndDeleteDedicatedCircuit() { using (var undoContext = UndoContext.Current) { undoContext.Start(); var expressRouteClient = GetCustomerExpressRouteManagementClient(); var providers = expressRouteClient.DedicatedCircuitServiceProviders.List(); var providerName = GetProviderName(); var provider = providers.Single(p => p.Name.Equals(providerName, StringComparison.CurrentCultureIgnoreCase)); var location = provider.DedicatedCircuitLocations.Split(',').First(); var bandwidth = provider.DedicatedCircuitBandwidths.First().Bandwidth; var circuitName = TestUtilities.GenerateName("circuit"); var newParams = new DedicatedCircuitNewParameters() { Bandwidth = bandwidth, CircuitName = circuitName, Location = location, ServiceProviderName = provider.Name, BillingType = BillingType.UnlimitedData }; var newResponse = expressRouteClient.DedicatedCircuits.New(newParams); TestUtilities.ValidateOperationResponse(newResponse); Guid serviceKey; Assert.True(Guid.TryParse(newResponse.Data, out serviceKey)); DedicatedCircuitGetResponse createdCircuit = expressRouteClient.DedicatedCircuits.Get(serviceKey.ToString()); Assert.Equal(createdCircuit.DedicatedCircuit.CircuitName, circuitName, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(createdCircuit.DedicatedCircuit.ServiceProviderName, provider.Name, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(createdCircuit.DedicatedCircuit.Bandwidth, bandwidth); Assert.Equal(createdCircuit.DedicatedCircuit.Location, location, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(createdCircuit.DedicatedCircuit.Status, DedicatedCircuitState.Enabled); Assert.Equal(createdCircuit.DedicatedCircuit.ServiceProviderProvisioningState, ProviderProvisioningState.NotProvisioned); Assert.Equal(createdCircuit.DedicatedCircuit.BillingType, BillingType.UnlimitedData.ToString()); DedicatedCircuitListResponse circuits = expressRouteClient.DedicatedCircuits.List(); TestUtilities.ValidateOperationResponse(circuits); Assert.NotEmpty(circuits.DedicatedCircuits); var circuit = circuits.DedicatedCircuits.FirstOrDefault(c => c.CircuitName.Equals(circuitName, StringComparison.CurrentCultureIgnoreCase)); Assert.NotNull(circuit); Assert.Equal(serviceKey.ToString(), circuit.ServiceKey); Assert.Equal(location, circuit.Location, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(provider.Name, circuit.ServiceProviderName, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(circuit.ServiceProviderProvisioningState, ProviderProvisioningState.NotProvisioned); Assert.Equal(bandwidth, circuit.Bandwidth); Assert.Equal(circuit.Status, DedicatedCircuitState.Enabled); var updateParams = new DedicatedCircuitUpdateParameters() { Bandwidth = provider.DedicatedCircuitBandwidths.Last().Bandwidth.ToString() }; var updateResponse = expressRouteClient.DedicatedCircuits.Update(serviceKey.ToString(), updateParams); TestUtilities.ValidateOperationResponse(updateResponse); var updatedCircuit = expressRouteClient.DedicatedCircuits.Get(serviceKey.ToString()); TestUtilities.ValidateOperationResponse(updatedCircuit); Assert.Equal(updatedCircuit.DedicatedCircuit.Bandwidth.ToString(), updateParams.Bandwidth); } }
public void CanCreateGetListUpdateAndDeleteDedicatedCircuit() { using (var undoContext = UndoContext.Current) { undoContext.Start(); var expressRouteClient = GetCustomerExpressRouteManagementClient(); var provider = expressRouteClient.DedicatedCircuitServiceProviders.List().Single(p => p.Name.Equals(GetProviderName(), StringComparison.CurrentCultureIgnoreCase)); var location = provider.DedicatedCircuitLocations.Split(',').First(); var bandwidth = provider.DedicatedCircuitBandwidths.First().Bandwidth; var circuitName = TestUtilities.GenerateName("circuit"); var newParams = new DedicatedCircuitNewParameters() { Bandwidth = bandwidth, CircuitName = circuitName, Location = location, ServiceProviderName = provider.Name, BillingType = BillingType.ServiceProviderType }; var newResponse = expressRouteClient.DedicatedCircuits.New(newParams); TestUtilities.ValidateOperationResponse(newResponse); Guid serviceKey; Assert.True(Guid.TryParse(newResponse.Data, out serviceKey)); DedicatedCircuitGetResponse createdCircuit = expressRouteClient.DedicatedCircuits.Get(serviceKey.ToString()); Assert.Equal(createdCircuit.DedicatedCircuit.CircuitName, circuitName, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(createdCircuit.DedicatedCircuit.ServiceProviderName, provider.Name, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(createdCircuit.DedicatedCircuit.Bandwidth, bandwidth); Assert.Equal(createdCircuit.DedicatedCircuit.Location, location, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(createdCircuit.DedicatedCircuit.Status, DedicatedCircuitState.Enabled); Assert.Equal(createdCircuit.DedicatedCircuit.ServiceProviderProvisioningState, ProviderProvisioningState.NotProvisioned); Assert.Equal(createdCircuit.DedicatedCircuit.BillingType, BillingType.ServiceProviderType); DedicatedCircuitListResponse circuits = expressRouteClient.DedicatedCircuits.List(); TestUtilities.ValidateOperationResponse(circuits); Assert.NotEmpty(circuits.DedicatedCircuits); var circuit = circuits.DedicatedCircuits.FirstOrDefault(c => c.CircuitName.Equals(circuitName, StringComparison.CurrentCultureIgnoreCase)); Assert.NotNull(circuit); Assert.Equal(serviceKey.ToString(), circuit.ServiceKey); Assert.Equal(location, circuit.Location, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(provider.Name, circuit.ServiceProviderName, StringComparer.CurrentCultureIgnoreCase); Assert.Equal(circuit.ServiceProviderProvisioningState, ProviderProvisioningState.NotProvisioned); Assert.Equal(bandwidth, circuit.Bandwidth); Assert.Equal(circuit.Status, DedicatedCircuitState.Enabled); var updateParams = new DedicatedCircuitUpdateParameters() { Bandwidth = provider.DedicatedCircuitBandwidths.Last().Bandwidth.ToString() }; var updateResponse = expressRouteClient.DedicatedCircuits.Update(serviceKey.ToString(), updateParams); TestUtilities.ValidateOperationResponse(updateResponse); var updatedCircuit = expressRouteClient.DedicatedCircuits.Get(serviceKey.ToString()); TestUtilities.ValidateOperationResponse(updatedCircuit); Assert.Equal(updatedCircuit.DedicatedCircuit.Bandwidth.ToString(), updateParams.Bandwidth); } }
/// <summary> /// The Update Dedicated Circuit operation updates an existing /// dedicated circuit. /// </summary> /// <param name='operations'> /// Reference to the /// Microsoft.WindowsAzure.Management.ExpressRoute.IDedicatedCircuitOperations. /// </param> /// <param name='serviceKey'> /// Required. Service Key of the circuit being updated /// </param> /// <param name='parameters'> /// Required. Parameters supplied to the update dedicated circuit /// operation. /// </param> /// <returns> /// The response body contains the status of the specified asynchronous /// operation, indicating whether it has succeeded, is inprogress, or /// has failed. Note that this status is distinct from the HTTP status /// code returned for the Get Operation Status operation itself. If /// the asynchronous operation succeeded, the response body includes /// the HTTP status code for the successful request. If the /// asynchronous operation failed, the response body includes the HTTP /// status code for the failed request, and also includes error /// information regarding the failure. /// </returns> public static Task <ExpressRouteOperationStatusResponse> UpdateAsync(this IDedicatedCircuitOperations operations, string serviceKey, DedicatedCircuitUpdateParameters parameters) { return(operations.UpdateAsync(serviceKey, parameters, CancellationToken.None)); }
/// <summary> /// The Update Dedicated Circuit operation updates an existing /// dedicated circuit. /// </summary> /// <param name='operations'> /// Reference to the /// Microsoft.WindowsAzure.Management.ExpressRoute.IDedicatedCircuitOperations. /// </param> /// <param name='serviceKey'> /// Required. Service Key of the circuit being updated /// </param> /// <param name='parameters'> /// Required. Parameters supplied to the update dedicated circuit /// operation. /// </param> /// <returns> /// The response body contains the status of the specified asynchronous /// operation, indicating whether it has succeeded, is inprogress, or /// has failed. Note that this status is distinct from the HTTP status /// code returned for the Get Operation Status operation itself. If /// the asynchronous operation succeeded, the response body includes /// the HTTP status code for the successful request. If the /// asynchronous operation failed, the response body includes the HTTP /// status code for the failed request, and also includes error /// information regarding the failure. /// </returns> public static ExpressRouteOperationStatusResponse Update(this IDedicatedCircuitOperations operations, string serviceKey, DedicatedCircuitUpdateParameters parameters) { return(Task.Factory.StartNew((object s) => { return ((IDedicatedCircuitOperations)s).UpdateAsync(serviceKey, parameters); } , operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult()); }