/// <summary>Snippet for CreateReadSessionAsync</summary>
        public async Task CreateReadSessionRequestObjectAsync()
        {
            // Snippet: CreateReadSessionAsync(CreateReadSessionRequest, CallSettings)
            // Additional: CreateReadSessionAsync(CreateReadSessionRequest, CancellationToken)
            // Create client
            BigQueryReadClient bigQueryReadClient = await BigQueryReadClient.CreateAsync();

            // Initialize request argument(s)
            CreateReadSessionRequest request = new CreateReadSessionRequest
            {
                ParentAsProjectName = ProjectName.FromProject("[PROJECT]"),
                ReadSession         = new ReadSession(),
                MaxStreamCount      = 0,
            };
            // Make the request
            ReadSession response = await bigQueryReadClient.CreateReadSessionAsync(request);

            // End snippet
        }
        /// <summary>Snippet for ListAttestorsAsync</summary>
        /// <remarks>
        /// This snippet has been automatically generated for illustrative purposes only.
        /// It may require modifications to work in your environment.
        /// </remarks>
        public async Task ListAttestorsResourceNamesAsync()
        {
            // Create client
            BinauthzManagementServiceV1Beta1Client binauthzManagementServiceV1Beta1Client = await BinauthzManagementServiceV1Beta1Client.CreateAsync();

            // Initialize request argument(s)
            ProjectName parent = ProjectName.FromProject("[PROJECT]");
            // Make the request
            PagedAsyncEnumerable <ListAttestorsResponse, Attestor> response = binauthzManagementServiceV1Beta1Client.ListAttestorsAsync(parent);

            // Iterate over all response items, lazily performing RPCs as required
            await response.ForEachAsync((Attestor 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((ListAttestorsResponse page) =>
            {
                // Do something with each page of items
                Console.WriteLine("A page of results:");
                foreach (Attestor 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 <Attestor> 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 (Attestor 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;
        }
        /// <summary>Snippet for CreateDeploymentAsync</summary>
        public async Task CreateDeploymentRequestObjectAsync()
        {
            // Snippet: CreateDeploymentAsync(CreateDeploymentRequest, CallSettings)
            // Additional: CreateDeploymentAsync(CreateDeploymentRequest, CancellationToken)
            // Create client
            GSuiteAddOnsClient gSuiteAddOnsClient = await GSuiteAddOnsClient.CreateAsync();

            // Initialize request argument(s)
            CreateDeploymentRequest request = new CreateDeploymentRequest
            {
                ParentAsProjectName = ProjectName.FromProject("[PROJECT]"),
                DeploymentId        = "",
                Deployment          = new Deployment(),
            };
            // Make the request
            Deployment response = await gSuiteAddOnsClient.CreateDeploymentAsync(request);

            // End snippet
        }
Example #4
0
        /// <summary>Snippet for ListDataSources</summary>
        /// <remarks>
        /// This snippet has been automatically generated for illustrative purposes only.
        /// It may require modifications to work in your environment.
        /// </remarks>
        public void ListDataSourcesResourceNames1()
        {
            // Create client
            DataTransferServiceClient dataTransferServiceClient = DataTransferServiceClient.Create();
            // Initialize request argument(s)
            ProjectName parent = ProjectName.FromProject("[PROJECT]");
            // Make the request
            PagedEnumerable <ListDataSourcesResponse, DataSource> response = dataTransferServiceClient.ListDataSources(parent);

            // Iterate over all response items, lazily performing RPCs as required
            foreach (DataSource 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 (ListDataSourcesResponse page in response.AsRawResponses())
            {
                // Do something with each page of items
                Console.WriteLine("A page of results:");
                foreach (DataSource 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 <DataSource> 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 (DataSource 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;
        }
Example #5
0
        /// <summary>Snippet for ValidateMessageAsync</summary>
        public async Task ValidateMessageRequestObjectAsync()
        {
            // Snippet: ValidateMessageAsync(ValidateMessageRequest, CallSettings)
            // Additional: ValidateMessageAsync(ValidateMessageRequest, CancellationToken)
            // Create client
            SchemaServiceClient schemaServiceClient = await SchemaServiceClient.CreateAsync();

            // Initialize request argument(s)
            ValidateMessageRequest request = new ValidateMessageRequest
            {
                ParentAsProjectName = ProjectName.FromProject("[PROJECT]"),
                SchemaName          = SchemaName.FromProjectSchema("[PROJECT]", "[SCHEMA]"),
                Message             = ByteString.Empty,
                Encoding            = Encoding.Unspecified,
            };
            // Make the request
            ValidateMessageResponse response = await schemaServiceClient.ValidateMessageAsync(request);

            // End snippet
        }
Example #6
0
        /// <summary>Snippet for SendTestMessage</summary>
        public void SendTestMessageRequestObject()
        {
            // Snippet: SendTestMessage(SendTestMessageRequest, CallSettings)
            // Create client
            EssentialContactsServiceClient essentialContactsServiceClient = EssentialContactsServiceClient.Create();
            // Initialize request argument(s)
            SendTestMessageRequest request = new SendTestMessageRequest
            {
                ContactsAsContactNames =
                {
                    ContactName.FromProjectContact("[PROJECT]", "[CONTACT]"),
                },
                ResourceAsProjectName = ProjectName.FromProject("[PROJECT]"),
                NotificationCategory  = NotificationCategory.Unspecified,
            };

            // Make the request
            essentialContactsServiceClient.SendTestMessage(request);
            // End snippet
        }
Example #7
0
        public override void Load()
        {
            var data = new Dictionary <string, string>(StringComparer.OrdinalIgnoreCase);

            var request = new ListSecretsRequest
            {
                ParentAsProjectName = ProjectName.FromProject(projectName),
            };

            var secrets = secretManagerServiceClient.ListSecrets(request);

            foreach (var secret in secrets)
            {
                var    value     = secretManagerServiceClient.AccessSecretVersion($"{secret.Name}/versions/latest");
                string secretVal = this.manager.Load(value.Payload);
                string configKey = this.manager.GetKey(secret.SecretName);
                data.Add(configKey, secretVal);
            }
            Data = data;
        }
 /// <summary>Snippet for CreateReadSession</summary>
 public void CreateReadSessionRequestObject()
 {
     // Snippet: CreateReadSession(CreateReadSessionRequest, CallSettings)
     // Create client
     BigQueryStorageClient bigQueryStorageClient = BigQueryStorageClient.Create();
     // Initialize request argument(s)
     CreateReadSessionRequest request = new CreateReadSessionRequest
     {
         TableReference      = new TableReference(),
         TableModifiers      = new TableModifiers(),
         RequestedStreams    = 0,
         ReadOptions         = new TableReadOptions(),
         Format              = DataFormat.Unspecified,
         ParentAsProjectName = ProjectName.FromProject("[PROJECT]"),
         ShardingStrategy    = ShardingStrategy.Unspecified,
     };
     // Make the request
     ReadSession response = bigQueryStorageClient.CreateReadSession(request);
     // End snippet
 }
Example #9
0
    private async Task CreateInstanceWithMultiRegionAsync()
    {
        InstanceAdminClient instanceAdminClient = await InstanceAdminClient.CreateAsync();

        var      projectName = ProjectName.FromProject(ProjectId);
        Instance instance    = new Instance
        {
            DisplayName = "Multi-region samples test",
            ConfigAsInstanceConfigName = InstanceConfigName.FromProjectInstanceConfig(ProjectId, InstanceConfigId),
            InstanceName = InstanceName.FromProjectInstance(ProjectId, InstanceIdWithMultiRegion),
            NodeCount    = 1,
        };

        await SafeCreateInstanceAsync(async() =>
        {
            var response = await instanceAdminClient.CreateInstanceAsync(projectName, InstanceIdWithMultiRegion, instance);
            // Poll until the returned long-running operation is complete
            response = await response.PollUntilCompletedAsync();
            return(response.Result);
        });
    }
    public static Instance SpannerCreateInstance(string projectId, string instanceId)
    {
        // Create the InstanceAdminClient instance.
        InstanceAdminClient instanceAdminClient = InstanceAdminClient.Create();

        // Initialize request parameters.
        Instance instance = new Instance
        {
            InstanceName = InstanceName.FromProjectInstance(projectId, instanceId),
            ConfigAsInstanceConfigName =
                InstanceConfigName.FromProjectInstanceConfig(projectId, "regional-us-central1"),
            DisplayName = "This is a display name.",
            NodeCount   = 1,
            Labels      =
            {
                { "cloud_spanner_samples", "true" },
            }
        };
        ProjectName parentAsProjectName = ProjectName.FromProject(projectId);

        // Make the CreateInstance request.
        Operation <Instance, CreateInstanceMetadata> response =
            instanceAdminClient.CreateInstance(parentAsProjectName, instanceId, instance);

        Console.WriteLine("Waiting for the operation to finish.");

        // Poll until the returned long-running operation is complete.
        Operation <Instance, CreateInstanceMetadata> completedResponse =
            response.PollUntilCompleted();

        if (completedResponse.IsFaulted)
        {
            Console.WriteLine($"Error while creating instance: {completedResponse.Exception}");
            throw completedResponse.Exception;
        }

        Console.WriteLine($"Instance created successfully.");

        return(completedResponse.Result);
    }
Example #11
0
    public static void Main(string[] args)
    {
        // Asset names, e.g.: //storage.googleapis.com/[YOUR_BUCKET_NAME]
        string[] assetNames = { "ASSET-NAME" };
        string   projectId  = "YOUR-GOOGLE-PROJECT-ID";

        BatchGetAssetsHistoryRequest request = new BatchGetAssetsHistoryRequest
        {
            ParentAsResourceName = ProjectName.FromProject(projectId),
            ContentType          = ContentType.Resource,
            ReadTimeWindow       = new TimeWindow
            {
                StartTime = Timestamp.FromDateTime(DateTime.UtcNow)
            }
        };

        request.AssetNames.AddRange(assetNames);
        AssetServiceClient            client   = AssetServiceClient.Create();
        BatchGetAssetsHistoryResponse response = client.BatchGetAssetsHistory(request);

        Console.WriteLine(response);
    }
        public static int Main(string[] args)
        {
            // Read projectId from args
            if (args.Length != 1)
            {
                Console.WriteLine("Usage: Project ID must be passed as first argument.");
                Console.WriteLine();
                return(1);
            }
            string projectId = args[0];

            // Smoke test against the Google Container Analysis implementation, using
            // a known endpoint.

            // Create client
            var           channelCredential = GoogleCredential.GetApplicationDefault().ToChannelCredentials();
            GrafeasClient client            = new GrafeasClientBuilder
            {
                Endpoint           = "containeranalysis.googleapis.com",
                ChannelCredentials = channelCredential
            }.Build();

            // Call API method
            ProjectName projectName = ProjectName.FromProject(projectId);
            PagedEnumerable <ListNotesResponse, Note> notes = client.ListNotes(projectName, "");

            // Show the result
            foreach (Note note in notes)
            {
                Console.WriteLine(note);
            }

            // Success
            Console.WriteLine("Smoke test passed OK");
            return(0);
        }
Example #13
0
        /// <summary>Snippet for ImportAgentAsync</summary>
        public async Task ImportAgentRequestObjectAsync()
        {
            // Snippet: ImportAgentAsync(ImportAgentRequest, CallSettings)
            // Additional: ImportAgentAsync(ImportAgentRequest, CancellationToken)
            // Create client
            AgentsClient agentsClient = await AgentsClient.CreateAsync();

            // Initialize request argument(s)
            ImportAgentRequest request = new ImportAgentRequest
            {
                ParentAsProjectName = ProjectName.FromProject("[PROJECT]"),
                AgentUri            = "",
                AgentContent        = ByteString.Empty,
            };
            // Make the request
            Operation <Empty, Struct> response = await agentsClient.ImportAgentAsync(request);

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

            // Retrieve the operation result
            Empty 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 <Empty, Struct> retrievedResponse = await agentsClient.PollOnceImportAgentAsync(operationName);

            // Check if the retrieved long-running operation has completed
            if (retrievedResponse.IsCompleted)
            {
                // If it has completed, then access the result
                Empty retrievedResult = retrievedResponse.Result;
            }
            // End snippet
        }
    public BatchGetAssetsHistoryResponse BatchGetAssetsHistory(string[] assetNames, string projectId)
    {
        // Create the client.
        AssetServiceClient client = AssetServiceClient.Create();

        // Build the request.
        BatchGetAssetsHistoryRequest request = new BatchGetAssetsHistoryRequest
        {
            ParentAsResourceName = ProjectName.FromProject(projectId),
            ContentType          = ContentType.Resource,
            ReadTimeWindow       = new TimeWindow
            {
                StartTime = Timestamp.FromDateTime(DateTime.UtcNow)
            }
        };

        request.AssetNames.AddRange(assetNames);

        // Call the API.
        BatchGetAssetsHistoryResponse response = client.BatchGetAssetsHistory(request);

        // Return the result.
        return(response);
    }
Example #15
0
    public ExportAssetsResponse ExportAssets(string bucketName, string projectId)
    {
        string assetDumpFile = $"gs://{bucketName}/my-assets.txt";
        // Create the client
        AssetServiceClient client = AssetServiceClient.Create();
        // Build the request
        ExportAssetsRequest request = new ExportAssetsRequest
        {
            ParentAsResourceName = ProjectName.FromProject(projectId),
            OutputConfig         = new OutputConfig
            {
                GcsDestination = new GcsDestination {
                    Uri = assetDumpFile
                }
            }
        };
        // Start the long-running export operation
        var operation = client.ExportAssets(request);

        // Wait for it to complete (or fail)
        operation = operation.PollUntilCompleted();
        // Return the result
        return(operation.Result);
    }
        public void Overview()
        {
            DateTime startTime    = DateTime.UtcNow;
            string   projectId    = _fixture.ProjectId;
            string   logId        = _fixture.LogId + $"-{Guid.NewGuid()}";
            string   fileName     = "log4net.xml";
            string   resourceName = typeof(GoogleStackdriverAppenderSnippets).Namespace + ".log4net-template.xml";

            string xml;

            using (var stream = typeof(GoogleStackdriverAppenderSnippets).GetTypeInfo().Assembly
                                .GetManifestResourceStream(resourceName))
            {
                using (var reader = new StreamReader(stream))
                {
                    xml = reader.ReadToEnd();
                }
            }
            xml = xml.Replace("PROJECT_ID", projectId).Replace("LOG_ID", logId);
            Assert.False(File.Exists(fileName), "Test would overwrite existing file");
            File.WriteAllText(fileName, xml);

            try
            {
                // Resource: log4net-template.xml log4net_template
                // Sample: Overview
                // Configure log4net to use Google Stackdriver logging from the XML configuration file.
                XmlConfigurator.Configure(LogManager.GetRepository(GetType().GetTypeInfo().Assembly), new FileInfo("log4net.xml"));

                // Retrieve a logger for this context.
                ILog log = LogManager.GetLogger(typeof(Program));
                // Log some information. This log entry will be sent to Google Stackdriver Logging.
                log.Info("An exciting log entry!");

                // Flush buffered log entries before program exit.
                // This is required because log entries are buffered locally before being sent to StackDriver.
                // LogManager.Flush() only works in the full .NET framework (not in .NET Core):
                bool flushCompleted = LogManager.Flush(10_000);
                // On .NET Core, the specific repository needs to be flushed:
                bool repositoryFlushCompleted = ((IFlushable)LogManager.GetRepository(GetType().GetTypeInfo().Assembly)).Flush(10_000);
                // End sample

                Assert.True(repositoryFlushCompleted);

                var logClient = LoggingServiceV2Client.Create();
                var logName   = LogName.FromProjectLog(projectId, logId);

                string formattedTime = XmlConvert.ToString(startTime.AddMinutes(-3), XmlDateTimeSerializationMode.Utc);
                string filter        = $"timestamp >= \"{formattedTime}\" AND logName=\"{logName}\" AND \"An exciting log entry!\"";

                // Wait up to 30 seconds for the log entry to appear in StackDriver.
                for (int i = 0; i < 30; i++)
                {
                    var logEntry = logClient.ListLogEntries(
                        resourceNames: new[] { ProjectName.FromProject(projectId) },
                        filter: filter,
                        orderBy: "timestamp desc")
                                   .FirstOrDefault();
                    if (logEntry != null)
                    {
                        Assert.Contains("An exciting log entry!", logEntry.TextPayload);
                        return;
                    }
                    Thread.Sleep(1_000);
                }
                Assert.False(true, "Log entry failed to appear in StackDriver.");
            }
            finally
            {
                File.Delete(fileName);
            }
        }