/// <summary> /// The process record method. /// </summary> protected override void ProcessRecord() { ResponseType response = null; base.ProcessRecord(); try { var vipPool = new createPool { networkDomainId = NetworkDomain.id, name = PoolName, description = Description, healthMonitorId = HealthMonitorId, loadBalanceMethod = LoadBalanceMethod, serviceDownAction = ServiceDownAction, slowRampTime = SlowRampTime }; response = Connection.ApiClient.Networking.VipPool.CreatePool(vipPool).Result; } catch (AggregateException ae) { ae.Handle( e => { if (e is ComputeApiException) { WriteError(new ErrorRecord(e, "-2", ErrorCategory.InvalidOperation, Connection)); } else { // if (e is HttpRequestException) ThrowTerminatingError(new ErrorRecord(e, "-1", ErrorCategory.ConnectionError, Connection)); } return(true); }); } WriteObject(response); }
/// <summary> /// Creates a Pool on a Network Domain in an MCP 2.0 data center location. /// </summary> /// <param name="pool">The create pool.</param> /// <returns>The async task of <see cref="ResponseType"/></returns> public async Task <ResponseType> CreatePool(createPool pool) { return(await _api.PostAsync <createPool, ResponseType>(ApiUris.CreatePool(_api.OrganizationId), pool)); }