コード例 #1
0
        /// <summary>Snippet for InsertAsync</summary>
        public async Task InsertAsync()
        {
            // Snippet: InsertAsync(string, Route, CallSettings)
            // Additional: InsertAsync(string, Route, CancellationToken)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            string project       = "";
            Route  routeResource = new Route();
            // Make the request
            lro::Operation <Operation, Operation> response = await routesClient.InsertAsync(project, routeResource);

            // Poll until the returned long-running operation is complete
            lro::Operation <Operation, Operation> completedResponse = await response.PollUntilCompletedAsync();

            // Retrieve the operation result
            Operation result = completedResponse.Result;

            // Or get the name of the operation
            string operationName = response.Name;
            // This name can be stored, then the long-running operation retrieved later by name
            lro::Operation <Operation, Operation> retrievedResponse = await routesClient.PollOnceInsertAsync(operationName);

            // Check if the retrieved long-running operation has completed
            if (retrievedResponse.IsCompleted)
            {
                // If it has completed, then access the result
                Operation retrievedResult = retrievedResponse.Result;
            }
            // End snippet
        }
コード例 #2
0
        /// <summary>Snippet for Delete</summary>
        public void DeleteRequestObject()
        {
            // Snippet: Delete(DeleteRouteRequest, CallSettings)
            // Create client
            RoutesClient routesClient = RoutesClient.Create();
            // Initialize request argument(s)
            DeleteRouteRequest request = new DeleteRouteRequest
            {
                RequestId = "",
                Route     = "",
                Project   = "",
            };
            // Make the request
            lro::Operation <Operation, Operation> response = routesClient.Delete(request);

            // Poll until the returned long-running operation is complete
            lro::Operation <Operation, Operation> completedResponse = response.PollUntilCompleted();
            // Retrieve the operation result
            Operation result = completedResponse.Result;

            // Or get the name of the operation
            string operationName = response.Name;
            // This name can be stored, then the long-running operation retrieved later by name
            lro::Operation <Operation, Operation> retrievedResponse = routesClient.PollOnceDelete(operationName);

            // Check if the retrieved long-running operation has completed
            if (retrievedResponse.IsCompleted)
            {
                // If it has completed, then access the result
                Operation retrievedResult = retrievedResponse.Result;
            }
            // End snippet
        }
コード例 #3
0
 /// <summary>Snippet for List</summary>
 public void List()
 {
     // Snippet: List(string, CallSettings)
     // Create client
     RoutesClient routesClient = RoutesClient.Create();
     // Initialize request argument(s)
     string project = "";
     // Make the request
     RouteList response = routesClient.List(project);
     // End snippet
 }
コード例 #4
0
 /// <summary>Snippet for Get</summary>
 public void Get()
 {
     // Snippet: Get(string, string, CallSettings)
     // Create client
     RoutesClient routesClient = RoutesClient.Create();
     // Initialize request argument(s)
     string project = "";
     string route   = "";
     // Make the request
     Route response = routesClient.Get(project, route);
     // End snippet
 }
コード例 #5
0
 /// <summary>Snippet for Insert</summary>
 public void Insert()
 {
     // Snippet: Insert(string, Route, CallSettings)
     // Create client
     RoutesClient routesClient = RoutesClient.Create();
     // Initialize request argument(s)
     string project       = "";
     Route  routeResource = new Route();
     // Make the request
     Operation response = routesClient.Insert(project, routeResource);
     // End snippet
 }
コード例 #6
0
        /// <summary>Snippet for ListAsync</summary>
        public async Task ListRequestObjectAsync()
        {
            // Snippet: ListAsync(ListRoutesRequest, CallSettings)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            ListRoutesRequest request = new ListRoutesRequest
            {
                OrderBy = "",
                Project = "",
                Filter  = "",
                ReturnPartialSuccess = false,
            };
            // Make the request
            PagedAsyncEnumerable <RouteList, Route> response = routesClient.ListAsync(request);

            // Iterate over all response items, lazily performing RPCs as required
            await response.ForEachAsync((Route 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((RouteList page) =>
            {
                // Do something with each page of items
                Console.WriteLine("A page of results:");
                foreach (Route item in page)
                {
                    // Do something with each item
                    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 <Route> 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 (Route item in singlePage)
            {
                // Do something with each item
                Console.WriteLine(item);
            }
            // Store the pageToken, for when the next page is required.
            string nextPageToken = singlePage.NextPageToken;
            // End snippet
        }
コード例 #7
0
        /// <summary>Snippet for ListAsync</summary>
        public async Task ListAsync()
        {
            // Snippet: ListAsync(string, CallSettings)
            // Additional: ListAsync(string, CancellationToken)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            string project = "";
            // Make the request
            RouteList response = await routesClient.ListAsync(project);

            // End snippet
        }
コード例 #8
0
 /// <summary>Snippet for Get</summary>
 public void GetRequestObject()
 {
     // Snippet: Get(GetRouteRequest, CallSettings)
     // Create client
     RoutesClient routesClient = RoutesClient.Create();
     // Initialize request argument(s)
     GetRouteRequest request = new GetRouteRequest
     {
         Route   = "",
         Project = "",
     };
     // Make the request
     Route response = routesClient.Get(request);
     // End snippet
 }
コード例 #9
0
        /// <summary>Snippet for DeleteAsync</summary>
        public async Task DeleteAsync()
        {
            // Snippet: DeleteAsync(string, string, CallSettings)
            // Additional: DeleteAsync(string, string, CancellationToken)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            string project = "";
            string route   = "";
            // Make the request
            Operation response = await routesClient.DeleteAsync(project, route);

            // End snippet
        }
コード例 #10
0
        /// <summary>Snippet for InsertAsync</summary>
        public async Task InsertAsync()
        {
            // Snippet: InsertAsync(string, Route, CallSettings)
            // Additional: InsertAsync(string, Route, CancellationToken)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            string project       = "";
            Route  routeResource = new Route();
            // Make the request
            Operation response = await routesClient.InsertAsync(project, routeResource);

            // End snippet
        }
コード例 #11
0
 /// <summary>Snippet for Delete</summary>
 public void DeleteRequestObject()
 {
     // Snippet: Delete(DeleteRouteRequest, CallSettings)
     // Create client
     RoutesClient routesClient = RoutesClient.Create();
     // Initialize request argument(s)
     DeleteRouteRequest request = new DeleteRouteRequest
     {
         RequestId = "",
         Route     = "",
         Project   = "",
     };
     // Make the request
     Operation response = routesClient.Delete(request);
     // End snippet
 }
コード例 #12
0
 /// <summary>Snippet for Insert</summary>
 public void InsertRequestObject()
 {
     // Snippet: Insert(InsertRouteRequest, CallSettings)
     // Create client
     RoutesClient routesClient = RoutesClient.Create();
     // Initialize request argument(s)
     InsertRouteRequest request = new InsertRouteRequest
     {
         RequestId     = "",
         RouteResource = new Route(),
         Project       = "",
     };
     // Make the request
     Operation response = routesClient.Insert(request);
     // End snippet
 }
コード例 #13
0
        /// <summary>Snippet for GetAsync</summary>
        public async Task GetRequestObjectAsync()
        {
            // Snippet: GetAsync(GetRouteRequest, CallSettings)
            // Additional: GetAsync(GetRouteRequest, CancellationToken)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            GetRouteRequest request = new GetRouteRequest
            {
                Route   = "",
                Project = "",
            };
            // Make the request
            Route response = await routesClient.GetAsync(request);

            // End snippet
        }
コード例 #14
0
        /// <summary>Snippet for List</summary>
        public void List()
        {
            // Snippet: List(string, string, int?, CallSettings)
            // Create client
            RoutesClient routesClient = RoutesClient.Create();
            // Initialize request argument(s)
            string project = "";
            // Make the request
            PagedEnumerable <RouteList, Route> response = routesClient.List(project);

            // Iterate over all response items, lazily performing RPCs as required
            foreach (Route item in response)
            {
                // Do something with each item
                Console.WriteLine(item);
            }

            // Or iterate over pages (of server-defined size), performing one RPC per page
            foreach (RouteList page in response.AsRawResponses())
            {
                // Do something with each page of items
                Console.WriteLine("A page of results:");
                foreach (Route item in page)
                {
                    // Do something with each item
                    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 <Route> singlePage = response.ReadPage(pageSize);

            // Do something with the page of items
            Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
            foreach (Route item in singlePage)
            {
                // Do something with each item
                Console.WriteLine(item);
            }
            // Store the pageToken, for when the next page is required.
            string nextPageToken = singlePage.NextPageToken;
            // End snippet
        }
コード例 #15
0
        /// <summary>Snippet for InsertAsync</summary>
        public async Task InsertRequestObjectAsync()
        {
            // Snippet: InsertAsync(InsertRouteRequest, CallSettings)
            // Additional: InsertAsync(InsertRouteRequest, CancellationToken)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            InsertRouteRequest request = new InsertRouteRequest
            {
                RequestId     = "",
                RouteResource = new Route(),
                Project       = "",
            };
            // Make the request
            Operation response = await routesClient.InsertAsync(request);

            // End snippet
        }
コード例 #16
0
 /// <summary>Snippet for List</summary>
 public void ListRequestObject()
 {
     // Snippet: List(ListRoutesRequest, CallSettings)
     // Create client
     RoutesClient routesClient = RoutesClient.Create();
     // Initialize request argument(s)
     ListRoutesRequest request = new ListRoutesRequest
     {
         PageToken            = "",
         MaxResults           = 0U,
         OrderBy              = "",
         Project              = "",
         Filter               = "",
         ReturnPartialSuccess = false,
     };
     // Make the request
     RouteList response = routesClient.List(request);
     // End snippet
 }
コード例 #17
0
        /// <summary>Snippet for DeleteAsync</summary>
        public async Task DeleteRequestObjectAsync()
        {
            // Snippet: DeleteAsync(DeleteRouteRequest, CallSettings)
            // Additional: DeleteAsync(DeleteRouteRequest, CancellationToken)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            DeleteRouteRequest request = new DeleteRouteRequest
            {
                RequestId = "",
                Route     = "",
                Project   = "",
            };
            // Make the request
            Operation response = await routesClient.DeleteAsync(request);

            // End snippet
        }
コード例 #18
0
        /// <summary>Snippet for ListAsync</summary>
        public async Task ListRequestObjectAsync()
        {
            // Snippet: ListAsync(ListRoutesRequest, CallSettings)
            // Additional: ListAsync(ListRoutesRequest, CancellationToken)
            // Create client
            RoutesClient routesClient = await RoutesClient.CreateAsync();

            // Initialize request argument(s)
            ListRoutesRequest request = new ListRoutesRequest
            {
                PageToken            = "",
                MaxResults           = 0U,
                OrderBy              = "",
                Project              = "",
                Filter               = "",
                ReturnPartialSuccess = false,
            };
            // Make the request
            RouteList response = await routesClient.ListAsync(request);

            // End snippet
        }
コード例 #19
0
        private async Task <List <int> > GetContentIdsAsync(ContentStatus status, string token, ResourceType type)
        {
            var ids = new List <int>();

            switch (type)
            {
            case ResourceType _ when type == ResourceTypes.Exhibit:
                var exhibitsClient = new ExhibitsClient(_endpointConfig.DataStoreUrl)
                {
                    Authorization = token
                };
                var exhibits = await exhibitsClient.GetAsync(status : status);

                foreach (var exhibit in exhibits.Items)
                {
                    if (UserPermissions.IsAllowedToGetHistory(User.Identity, exhibit.UserId))
                    {
                        ids.Add(exhibit.Id);
                    }
                }
                break;

            case ResourceType _ when type == ResourceTypes.Route:
                var routesClient = new RoutesClient(_endpointConfig.DataStoreUrl)
                {
                    Authorization = token
                };
                var routes = await routesClient.GetAsync(status : status);

                foreach (var route in routes.Items)
                {
                    if (UserPermissions.IsAllowedToGetHistory(User.Identity, route.UserId))
                    {
                        ids.Add(route.Id);
                    }
                }
                break;

            case ResourceType _ when type == ResourceTypes.Tag:
                var tagsClient = new TagsClient(_endpointConfig.DataStoreUrl)
                {
                    Authorization = token
                };
                var tags = await tagsClient.GetAllAsync(status : status);

                foreach (var tag in tags.Items)
                {
                    if (UserPermissions.IsAllowedToGetHistory(User.Identity, tag.UserId))
                    {
                        ids.Add(tag.Id);
                    }
                }
                break;

            case ResourceType _ when type == ResourceTypes.Media:
                var mediaClient = new MediaClient(_endpointConfig.DataStoreUrl)
                {
                    Authorization = token
                };
                var media = await mediaClient.GetAsync(status : status);

                foreach (var medium in media.Items)
                {
                    if (UserPermissions.IsAllowedToGetHistory(User.Identity, medium.UserId))
                    {
                        ids.Add(medium.Id);
                    }
                }
                break;

            case ResourceType _ when type == ResourceTypes.ExhibitPage:
                var exhibitPagesClient = new ExhibitPagesClient(_endpointConfig.DataStoreUrl)
                {
                    Authorization = token
                };
                var exhibitPages = await exhibitPagesClient.GetAllPagesAsync(status : status);

                foreach (var exhibitPage in exhibitPages.Items)
                {
                    if (UserPermissions.IsAllowedToGetHistory(User.Identity, exhibitPage.UserId))
                    {
                        ids.Add(exhibitPage.Id);
                    }
                }
                break;
            }
            return(ids);
        }