public AnalyzeIamPolicyLongrunningResponse AnalyzeIamPolicyLongrunning( string scope, string fullResourceName, string dataset, string tablePrefix) { // Create the client. AssetServiceClient client = AssetServiceClient.Create(); // Build the request. AnalyzeIamPolicyLongrunningRequest request = new AnalyzeIamPolicyLongrunningRequest { AnalysisQuery = new IamPolicyAnalysisQuery { Scope = scope, ResourceSelector = new IamPolicyAnalysisQuery.Types.ResourceSelector { FullResourceName = fullResourceName, }, Options = new IamPolicyAnalysisQuery.Types.Options { ExpandGroups = true, OutputGroupEdges = true, }, }, OutputConfig = new IamPolicyAnalysisOutputConfig { BigqueryDestination = new IamPolicyAnalysisOutputConfig.Types.BigQueryDestination { Dataset = dataset, TablePrefix = tablePrefix, }, }, }; // Start the analyze long-running operation var operation = client.AnalyzeIamPolicyLongrunning(request); // Wait for it to complete operation = operation.PollUntilCompleted(); // Return the operation result. If the operation has failed // calling Result will throw. return(operation.Result); }
public AnalyzeIamPolicyLongrunningRequest AnalyzeIamPolicyLongrunning( string scope, string fullResourceName, string uri) { // Create the client. AssetServiceClient client = AssetServiceClient.Create(); // Build the request. AnalyzeIamPolicyLongrunningRequest request = new AnalyzeIamPolicyLongrunningRequest { AnalysisQuery = new IamPolicyAnalysisQuery { Scope = scope, ResourceSelector = new IamPolicyAnalysisQuery.Types.ResourceSelector { FullResourceName = fullResourceName, }, Options = new IamPolicyAnalysisQuery.Types.Options { ExpandGroups = true, OutputGroupEdges = true, }, }, OutputConfig = new IamPolicyAnalysisOutputConfig { GcsDestination = new IamPolicyAnalysisOutputConfig.Types.GcsDestination { Uri = uri, }, }, }; // Start the analyze long-running operation var operation = client.AnalyzeIamPolicyLongrunning(request); // Wait for it to complete operation = operation.PollUntilCompleted(); // Return the metadata(request) return(operation.Metadata); }
/// <summary>Snippet for AnalyzeIamPolicyLongrunning</summary> public void AnalyzeIamPolicyLongrunningRequestObject() { // Snippet: AnalyzeIamPolicyLongrunning(AnalyzeIamPolicyLongrunningRequest, CallSettings) // Create client AssetServiceClient assetServiceClient = AssetServiceClient.Create(); // Initialize request argument(s) AnalyzeIamPolicyLongrunningRequest request = new AnalyzeIamPolicyLongrunningRequest { AnalysisQuery = new IamPolicyAnalysisQuery(), OutputConfig = new IamPolicyAnalysisOutputConfig(), }; // Make the request Operation <AnalyzeIamPolicyLongrunningResponse, AnalyzeIamPolicyLongrunningRequest> response = assetServiceClient.AnalyzeIamPolicyLongrunning(request); // Poll until the returned long-running operation is complete Operation <AnalyzeIamPolicyLongrunningResponse, AnalyzeIamPolicyLongrunningRequest> completedResponse = response.PollUntilCompleted(); // Retrieve the operation result AnalyzeIamPolicyLongrunningResponse 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 Operation <AnalyzeIamPolicyLongrunningResponse, AnalyzeIamPolicyLongrunningRequest> retrievedResponse = assetServiceClient.PollOnceAnalyzeIamPolicyLongrunning(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result AnalyzeIamPolicyLongrunningResponse retrievedResult = retrievedResponse.Result; } // End snippet }