/// <summary> /// The process record method. /// </summary> protected override void ProcessRecord() { base.ProcessRecord(); try { var options = new ListGeographicRegionOptions() { Name = Name, Id = Id, State = State, IsHome = IsHome }; this.WritePagedObject(Connection.ApiClient.Infrastructure.ListGeographicRegions(PageableRequest, options).Result); } catch (AggregateException ae) { ae.Handle( e => { if (e is ComputeApiException) { WriteError(new ErrorRecord(e, "-2", ErrorCategory.InvalidOperation, Connection)); } else { ThrowTerminatingError(new ErrorRecord(e, "-1", ErrorCategory.ConnectionError, Connection)); } return(true); }); } }
/// <summary> /// List all the geographic regions /// </summary> /// <param name="pagingOptions">Paging options</param> /// <param name="filterOptions">Filtering options</param> /// <returns>Geo Regions</returns> public async Task <PagedResponse <GeographicRegionType> > ListGeographicRegions(IPageableRequest pagingOptions = null, ListGeographicRegionOptions filterOptions = null) { var response = await _apiClient.GetAsync <geographicRegions>( ApiUris.ListGeographicRegion(_apiClient.OrganizationId), pagingOptions, filterOptions); return(new PagedResponse <GeographicRegionType> { items = response.geographicRegion, totalCount = response.totalCountSpecified ? response.totalCount : (int?)null, pageCount = response.pageCountSpecified ? response.pageCount : (int?)null, pageNumber = response.pageNumberSpecified ? response.pageNumber : (int?)null, pageSize = response.pageSizeSpecified ? response.pageSize : (int?)null }); }