/// <summary>Snippet for ListFieldsAsync</summary> public async Task ListFieldsAsync_RequestObject() { // Snippet: ListFieldsAsync(ListFieldsRequest,CallSettings) // Create client FirestoreAdminClient firestoreAdminClient = await FirestoreAdminClient.CreateAsync(); // Initialize request argument(s) ListFieldsRequest request = new ListFieldsRequest { ParentAsParentName = new ParentName("[PROJECT]", "[DATABASE]", "[COLLECTION_ID]"), }; // Make the request PagedAsyncEnumerable <ListFieldsResponse, apis::Field> response = firestoreAdminClient.ListFieldsAsync(request); // Iterate over all response items, lazily performing RPCs as required await response.ForEachAsync((apis::Field item) => { // Do something with each item Console.WriteLine(item); }); // Or iterate over pages (of server-defined size), performing one RPC per page await response.AsRawResponses().ForEachAsync((ListFieldsResponse page) => { // Do something with each page of items Console.WriteLine("A page of results:"); foreach (apis::Field item in page) { Console.WriteLine(item); } }); // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required int pageSize = 10; Page <apis::Field> singlePage = await response.ReadPageAsync(pageSize); // Do something with the page of items Console.WriteLine($"A page of {pageSize} results (unless it's the final page):"); foreach (apis::Field item in singlePage) { Console.WriteLine(item); } // Store the pageToken, for when the next page is required. string nextPageToken = singlePage.NextPageToken; // End snippet }
protected override void ProcessRecord() { base.ProcessRecord(); ListFieldsRequest request; try { request = new ListFieldsRequest { NamespaceName = NamespaceName, IsMatchAll = IsMatchAll, SourceIds = SourceIds, SourceNames = SourceNames, ParserType = ParserType, ParserIds = ParserIds, ParserNames = ParserNames, IsIncludeParser = IsIncludeParser, Filter = Filter, Limit = Limit, Page = Page, SortOrder = SortOrder, SortBy = SortBy, OpcRequestId = OpcRequestId }; IEnumerable <ListFieldsResponse> responses = GetRequestDelegate().Invoke(request); foreach (var item in responses) { response = item; WriteOutput(response, response.LogAnalyticsFieldCollection, true); } if (!ParameterSetName.Equals(AllPageSet) && !ParameterSetName.Equals(LimitSet) && response.OpcNextPage != null) { WriteWarning("This operation supports pagination and not all resources were returned. Re-run using the -All option to auto paginate and list all resources."); } FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }
protected override void ProcessRecord() { base.ProcessRecord(); ListFieldsRequest request; try { request = new ListFieldsRequest { NamespaceName = NamespaceName, IsMatchAll = IsMatchAll, SourceIds = SourceIds, SourceNames = SourceNames, ParserType = ParserType, ParserIds = ParserIds, ParserNames = ParserNames, IsIncludeParser = IsIncludeParser, Filter = Filter, Limit = Limit, Page = Page, SortOrder = SortOrder, SortBy = SortBy, OpcRequestId = OpcRequestId }; IEnumerable <ListFieldsResponse> responses = GetRequestDelegate().Invoke(request); foreach (var item in responses) { response = item; WriteOutput(response, response.LogAnalyticsFieldCollection, true); } FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }