private bool TryHandleBeginNewAsync(IServiceOperations <ExpressRouteManagementClient> client, IDictionary <string, object> parameters, out Action undoFunction) { undoFunction = null; string serviceKey; DedicatedCircuitLinkAuthorizationNewParameters newParameters = null; if (TryAssignParameter <string>("serviceKey", parameters, out serviceKey) && TryAssignParameter <DedicatedCircuitLinkAuthorizationNewParameters>("parameters", parameters, out newParameters) && !string.IsNullOrEmpty(serviceKey) && newParameters != null) { ExpressRouteManagementClient expressRouteClient = GetClientFromOperations(client); undoFunction = () => expressRouteClient.DedicatedCircuitLinkAuthorizations.Remove(serviceKey, (new List <AzureDedicatedCircuitLinkAuthorization>( expressRouteClient.DedicatedCircuitLinkAuthorizations.List(serviceKey) .DedicatedCircuitLinkAuthorizations)).Find( auth => auth.MicrosoftIds.Equals(newParameters.MicrosoftIds) && auth.Limit.Equals(newParameters.Limit)).LinkAuthorizationId); return(true); } TraceParameterError(this, "BeginNewAsync", parameters); return(false); }
/// <summary> /// Gets the specified link authorization for the specified dedicated /// circuit. /// </summary> /// <param name='operations'> /// Reference to the /// Microsoft.WindowsAzure.Management.ExpressRoute.IDedicatedCircuitLinkAuthorizationOperations. /// </param> /// <param name='serviceKey'> /// Required. The service key representing the circuit. /// </param> /// <param name='parameters'> /// Required. Parameters supplied to the new Dedicated Circuit link /// authorization operation. /// </param> /// <returns> /// Get link authorization operation response. /// </returns> public static Task <DedicatedCircuitLinkAuthorizationNewResponse> NewAsync(this IDedicatedCircuitLinkAuthorizationOperations operations, string serviceKey, DedicatedCircuitLinkAuthorizationNewParameters parameters) { return(operations.NewAsync(serviceKey, parameters, CancellationToken.None)); }
/// <summary> /// Gets the specified link authorization for the specified dedicated /// circuit. /// </summary> /// <param name='operations'> /// Reference to the /// Microsoft.WindowsAzure.Management.ExpressRoute.IDedicatedCircuitLinkAuthorizationOperations. /// </param> /// <param name='serviceKey'> /// Required. The service key representing the circuit. /// </param> /// <param name='parameters'> /// Required. Parameters supplied to the new Dedicated Circuit link /// authorization operation. /// </param> /// <returns> /// Get link authorization operation response. /// </returns> public static DedicatedCircuitLinkAuthorizationNewResponse New(this IDedicatedCircuitLinkAuthorizationOperations operations, string serviceKey, DedicatedCircuitLinkAuthorizationNewParameters parameters) { return(Task.Factory.StartNew((object s) => { return ((IDedicatedCircuitLinkAuthorizationOperations)s).NewAsync(serviceKey, parameters); } , operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult()); }