Class NotificationChannelServiceClient

  • All Implemented Interfaces:
    com.google.api.gax.core.BackgroundResource, AutoCloseable

    @Generated("by gapic-generator-java")
    public class NotificationChannelServiceClient
    extends Object
    implements com.google.api.gax.core.BackgroundResource
    Service Description: The Notification Channel API provides access to configuration that controls how messages related to incidents are sent.

    This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     try (NotificationChannelServiceClient notificationChannelServiceClient =
         NotificationChannelServiceClient.create()) {
       NotificationChannelDescriptorName name =
           NotificationChannelDescriptorName.ofProjectChannelDescriptorName(
               "[PROJECT]", "[CHANNEL_DESCRIPTOR]");
       NotificationChannelDescriptor response =
           notificationChannelServiceClient.getNotificationChannelDescriptor(name);
     }
     

    Note: close() needs to be called on the NotificationChannelServiceClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

    The surface of this class includes several types of Java methods for each of the API's methods:

    1. A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
    2. A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
    3. A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.

    See the individual methods for example code.

    Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

    This class can be customized by passing in a custom instance of NotificationChannelServiceSettings to create(). For example:

    To customize credentials:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     NotificationChannelServiceSettings notificationChannelServiceSettings =
         NotificationChannelServiceSettings.newBuilder()
             .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
             .build();
     NotificationChannelServiceClient notificationChannelServiceClient =
         NotificationChannelServiceClient.create(notificationChannelServiceSettings);
     

    To customize the endpoint:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     NotificationChannelServiceSettings notificationChannelServiceSettings =
         NotificationChannelServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
     NotificationChannelServiceClient notificationChannelServiceClient =
         NotificationChannelServiceClient.create(notificationChannelServiceSettings);
     

    Please refer to the GitHub repository's samples for more quickstart code snippets.

    • Constructor Detail

      • NotificationChannelServiceClient

        protected NotificationChannelServiceClient​(NotificationChannelServiceSettings settings)
                                            throws IOException
        Constructs an instance of NotificationChannelServiceClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.
        Throws:
        IOException
    • Method Detail

      • listNotificationChannelDescriptors

        public final NotificationChannelServiceClient.ListNotificationChannelDescriptorsPagedResponse listNotificationChannelDescriptors​(com.google.api.resourcenames.ResourceName name)
        Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ResourceName name = ResourceName.of("[FOLDER]");
           for (NotificationChannelDescriptor element :
               notificationChannelServiceClient.listNotificationChannelDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The REST resource name of the parent from which to retrieve the notification channel descriptors. The expected syntax is:

        projects/[PROJECT_ID_OR_NUMBER]

        Note that this [names](https://cloud.google.com/monitoring/api/v3#project_name) the parent container in which to look for the descriptors; to retrieve a single descriptor by name, use the [GetNotificationChannelDescriptor][google.monitoring.v3.NotificationChannelService.GetNotificationChannelDescriptor] operation, instead.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannelDescriptors

        public final NotificationChannelServiceClient.ListNotificationChannelDescriptorsPagedResponse listNotificationChannelDescriptors​(OrganizationName name)
        Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           OrganizationName name = OrganizationName.of("[ORGANIZATION]");
           for (NotificationChannelDescriptor element :
               notificationChannelServiceClient.listNotificationChannelDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The REST resource name of the parent from which to retrieve the notification channel descriptors. The expected syntax is:

        projects/[PROJECT_ID_OR_NUMBER]

        Note that this [names](https://cloud.google.com/monitoring/api/v3#project_name) the parent container in which to look for the descriptors; to retrieve a single descriptor by name, use the [GetNotificationChannelDescriptor][google.monitoring.v3.NotificationChannelService.GetNotificationChannelDescriptor] operation, instead.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannelDescriptors

        public final NotificationChannelServiceClient.ListNotificationChannelDescriptorsPagedResponse listNotificationChannelDescriptors​(ProjectName name)
        Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           for (NotificationChannelDescriptor element :
               notificationChannelServiceClient.listNotificationChannelDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The REST resource name of the parent from which to retrieve the notification channel descriptors. The expected syntax is:

        projects/[PROJECT_ID_OR_NUMBER]

        Note that this [names](https://cloud.google.com/monitoring/api/v3#project_name) the parent container in which to look for the descriptors; to retrieve a single descriptor by name, use the [GetNotificationChannelDescriptor][google.monitoring.v3.NotificationChannelService.GetNotificationChannelDescriptor] operation, instead.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannelDescriptors

        public final NotificationChannelServiceClient.ListNotificationChannelDescriptorsPagedResponse listNotificationChannelDescriptors​(String name)
        Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           for (NotificationChannelDescriptor element :
               notificationChannelServiceClient.listNotificationChannelDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The REST resource name of the parent from which to retrieve the notification channel descriptors. The expected syntax is:

        projects/[PROJECT_ID_OR_NUMBER]

        Note that this [names](https://cloud.google.com/monitoring/api/v3#project_name) the parent container in which to look for the descriptors; to retrieve a single descriptor by name, use the [GetNotificationChannelDescriptor][google.monitoring.v3.NotificationChannelService.GetNotificationChannelDescriptor] operation, instead.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannelDescriptors

        public final NotificationChannelServiceClient.ListNotificationChannelDescriptorsPagedResponse listNotificationChannelDescriptors​(ListNotificationChannelDescriptorsRequest request)
        Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ListNotificationChannelDescriptorsRequest request =
               ListNotificationChannelDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           for (NotificationChannelDescriptor element :
               notificationChannelServiceClient
                   .listNotificationChannelDescriptors(request)
                   .iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannelDescriptorsPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListNotificationChannelDescriptorsRequest,​NotificationChannelServiceClient.ListNotificationChannelDescriptorsPagedResponse> listNotificationChannelDescriptorsPagedCallable()
        Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ListNotificationChannelDescriptorsRequest request =
               ListNotificationChannelDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           ApiFuture<NotificationChannelDescriptor> future =
               notificationChannelServiceClient
                   .listNotificationChannelDescriptorsPagedCallable()
                   .futureCall(request);
           // Do something.
           for (NotificationChannelDescriptor element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listNotificationChannelDescriptorsCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListNotificationChannelDescriptorsRequest,​ListNotificationChannelDescriptorsResponse> listNotificationChannelDescriptorsCallable()
        Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ListNotificationChannelDescriptorsRequest request =
               ListNotificationChannelDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           while (true) {
             ListNotificationChannelDescriptorsResponse response =
                 notificationChannelServiceClient
                     .listNotificationChannelDescriptorsCallable()
                     .call(request);
             for (NotificationChannelDescriptor element : response.getChannelDescriptorsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • getNotificationChannelDescriptor

        public final NotificationChannelDescriptor getNotificationChannelDescriptor​(NotificationChannelDescriptorName name)
        Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           NotificationChannelDescriptorName name =
               NotificationChannelDescriptorName.ofProjectChannelDescriptorName(
                   "[PROJECT]", "[CHANNEL_DESCRIPTOR]");
           NotificationChannelDescriptor response =
               notificationChannelServiceClient.getNotificationChannelDescriptor(name);
         }
         
        Parameters:
        name - Required. The channel type for which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/notificationChannelDescriptors/[CHANNEL_TYPE]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannelDescriptor

        public final NotificationChannelDescriptor getNotificationChannelDescriptor​(String name)
        Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name =
               NotificationChannelDescriptorName.ofProjectChannelDescriptorName(
                       "[PROJECT]", "[CHANNEL_DESCRIPTOR]")
                   .toString();
           NotificationChannelDescriptor response =
               notificationChannelServiceClient.getNotificationChannelDescriptor(name);
         }
         
        Parameters:
        name - Required. The channel type for which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/notificationChannelDescriptors/[CHANNEL_TYPE]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannelDescriptor

        public final NotificationChannelDescriptor getNotificationChannelDescriptor​(GetNotificationChannelDescriptorRequest request)
        Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           GetNotificationChannelDescriptorRequest request =
               GetNotificationChannelDescriptorRequest.newBuilder()
                   .setName(
                       NotificationChannelDescriptorName.ofProjectChannelDescriptorName(
                               "[PROJECT]", "[CHANNEL_DESCRIPTOR]")
                           .toString())
                   .build();
           NotificationChannelDescriptor response =
               notificationChannelServiceClient.getNotificationChannelDescriptor(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannelDescriptorCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetNotificationChannelDescriptorRequest,​NotificationChannelDescriptor> getNotificationChannelDescriptorCallable()
        Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           GetNotificationChannelDescriptorRequest request =
               GetNotificationChannelDescriptorRequest.newBuilder()
                   .setName(
                       NotificationChannelDescriptorName.ofProjectChannelDescriptorName(
                               "[PROJECT]", "[CHANNEL_DESCRIPTOR]")
                           .toString())
                   .build();
           ApiFuture<NotificationChannelDescriptor> future =
               notificationChannelServiceClient
                   .getNotificationChannelDescriptorCallable()
                   .futureCall(request);
           // Do something.
           NotificationChannelDescriptor response = future.get();
         }
         
      • listNotificationChannels

        public final NotificationChannelServiceClient.ListNotificationChannelsPagedResponse listNotificationChannels​(com.google.api.resourcenames.ResourceName name)
        Lists the notification channels that have been created for the project. To list the types of notification channels that are supported, use the `ListNotificationChannelDescriptors` method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ResourceName name = ResourceName.of("[FOLDER]");
           for (NotificationChannel element :
               notificationChannelServiceClient.listNotificationChannels(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        This names the container in which to look for the notification channels; it does not name a specific channel. To query a specific channel by REST resource name, use the [`GetNotificationChannel`][google.monitoring.v3.NotificationChannelService.GetNotificationChannel] operation.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannels

        public final NotificationChannelServiceClient.ListNotificationChannelsPagedResponse listNotificationChannels​(OrganizationName name)
        Lists the notification channels that have been created for the project. To list the types of notification channels that are supported, use the `ListNotificationChannelDescriptors` method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           OrganizationName name = OrganizationName.of("[ORGANIZATION]");
           for (NotificationChannel element :
               notificationChannelServiceClient.listNotificationChannels(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        This names the container in which to look for the notification channels; it does not name a specific channel. To query a specific channel by REST resource name, use the [`GetNotificationChannel`][google.monitoring.v3.NotificationChannelService.GetNotificationChannel] operation.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannels

        public final NotificationChannelServiceClient.ListNotificationChannelsPagedResponse listNotificationChannels​(ProjectName name)
        Lists the notification channels that have been created for the project. To list the types of notification channels that are supported, use the `ListNotificationChannelDescriptors` method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           for (NotificationChannel element :
               notificationChannelServiceClient.listNotificationChannels(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        This names the container in which to look for the notification channels; it does not name a specific channel. To query a specific channel by REST resource name, use the [`GetNotificationChannel`][google.monitoring.v3.NotificationChannelService.GetNotificationChannel] operation.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannels

        public final NotificationChannelServiceClient.ListNotificationChannelsPagedResponse listNotificationChannels​(String name)
        Lists the notification channels that have been created for the project. To list the types of notification channels that are supported, use the `ListNotificationChannelDescriptors` method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           for (NotificationChannel element :
               notificationChannelServiceClient.listNotificationChannels(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        This names the container in which to look for the notification channels; it does not name a specific channel. To query a specific channel by REST resource name, use the [`GetNotificationChannel`][google.monitoring.v3.NotificationChannelService.GetNotificationChannel] operation.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannels

        public final NotificationChannelServiceClient.ListNotificationChannelsPagedResponse listNotificationChannels​(ListNotificationChannelsRequest request)
        Lists the notification channels that have been created for the project. To list the types of notification channels that are supported, use the `ListNotificationChannelDescriptors` method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ListNotificationChannelsRequest request =
               ListNotificationChannelsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setOrderBy("orderBy-1207110587")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           for (NotificationChannel element :
               notificationChannelServiceClient.listNotificationChannels(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listNotificationChannelsPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListNotificationChannelsRequest,​NotificationChannelServiceClient.ListNotificationChannelsPagedResponse> listNotificationChannelsPagedCallable()
        Lists the notification channels that have been created for the project. To list the types of notification channels that are supported, use the `ListNotificationChannelDescriptors` method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ListNotificationChannelsRequest request =
               ListNotificationChannelsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setOrderBy("orderBy-1207110587")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           ApiFuture<NotificationChannel> future =
               notificationChannelServiceClient
                   .listNotificationChannelsPagedCallable()
                   .futureCall(request);
           // Do something.
           for (NotificationChannel element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listNotificationChannelsCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListNotificationChannelsRequest,​ListNotificationChannelsResponse> listNotificationChannelsCallable()
        Lists the notification channels that have been created for the project. To list the types of notification channels that are supported, use the `ListNotificationChannelDescriptors` method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ListNotificationChannelsRequest request =
               ListNotificationChannelsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setOrderBy("orderBy-1207110587")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           while (true) {
             ListNotificationChannelsResponse response =
                 notificationChannelServiceClient.listNotificationChannelsCallable().call(request);
             for (NotificationChannel element : response.getNotificationChannelsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • getNotificationChannel

        public final NotificationChannel getNotificationChannel​(NotificationChannelName name)
        Gets a single notification channel. The channel includes the relevant configuration details with which the channel was created. However, the response may truncate or omit passwords, API keys, or other private key matter and thus the response may not be 100% identical to the information that was supplied in the call to the create method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           NotificationChannelName name =
               NotificationChannelName.ofProjectNotificationChannelName(
                   "[PROJECT]", "[NOTIFICATION_CHANNEL]");
           NotificationChannel response = notificationChannelServiceClient.getNotificationChannel(name);
         }
         
        Parameters:
        name - Required. The channel for which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannel

        public final NotificationChannel getNotificationChannel​(String name)
        Gets a single notification channel. The channel includes the relevant configuration details with which the channel was created. However, the response may truncate or omit passwords, API keys, or other private key matter and thus the response may not be 100% identical to the information that was supplied in the call to the create method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name =
               NotificationChannelName.ofProjectNotificationChannelName(
                       "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                   .toString();
           NotificationChannel response = notificationChannelServiceClient.getNotificationChannel(name);
         }
         
        Parameters:
        name - Required. The channel for which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannel

        public final NotificationChannel getNotificationChannel​(GetNotificationChannelRequest request)
        Gets a single notification channel. The channel includes the relevant configuration details with which the channel was created. However, the response may truncate or omit passwords, API keys, or other private key matter and thus the response may not be 100% identical to the information that was supplied in the call to the create method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           GetNotificationChannelRequest request =
               GetNotificationChannelRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .build();
           NotificationChannel response =
               notificationChannelServiceClient.getNotificationChannel(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannelCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetNotificationChannelRequest,​NotificationChannel> getNotificationChannelCallable()
        Gets a single notification channel. The channel includes the relevant configuration details with which the channel was created. However, the response may truncate or omit passwords, API keys, or other private key matter and thus the response may not be 100% identical to the information that was supplied in the call to the create method.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           GetNotificationChannelRequest request =
               GetNotificationChannelRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .build();
           ApiFuture<NotificationChannel> future =
               notificationChannelServiceClient.getNotificationChannelCallable().futureCall(request);
           // Do something.
           NotificationChannel response = future.get();
         }
         
      • createNotificationChannel

        public final NotificationChannel createNotificationChannel​(com.google.api.resourcenames.ResourceName name,
                                                                   NotificationChannel notificationChannel)
        Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or PagerDuty service.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ResourceName name = ResourceName.of("[FOLDER]");
           NotificationChannel notificationChannel = NotificationChannel.newBuilder().build();
           NotificationChannel response =
               notificationChannelServiceClient.createNotificationChannel(name, notificationChannel);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        This names the container into which the channel will be written, this does not name the newly created channel. The resulting channel's name will have a normalized version of this field as a prefix, but will add `/notificationChannels/[CHANNEL_ID]` to identify the channel.

        notificationChannel - Required. The definition of the `NotificationChannel` to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createNotificationChannel

        public final NotificationChannel createNotificationChannel​(OrganizationName name,
                                                                   NotificationChannel notificationChannel)
        Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or PagerDuty service.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           OrganizationName name = OrganizationName.of("[ORGANIZATION]");
           NotificationChannel notificationChannel = NotificationChannel.newBuilder().build();
           NotificationChannel response =
               notificationChannelServiceClient.createNotificationChannel(name, notificationChannel);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        This names the container into which the channel will be written, this does not name the newly created channel. The resulting channel's name will have a normalized version of this field as a prefix, but will add `/notificationChannels/[CHANNEL_ID]` to identify the channel.

        notificationChannel - Required. The definition of the `NotificationChannel` to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createNotificationChannel

        public final NotificationChannel createNotificationChannel​(ProjectName name,
                                                                   NotificationChannel notificationChannel)
        Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or PagerDuty service.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           NotificationChannel notificationChannel = NotificationChannel.newBuilder().build();
           NotificationChannel response =
               notificationChannelServiceClient.createNotificationChannel(name, notificationChannel);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        This names the container into which the channel will be written, this does not name the newly created channel. The resulting channel's name will have a normalized version of this field as a prefix, but will add `/notificationChannels/[CHANNEL_ID]` to identify the channel.

        notificationChannel - Required. The definition of the `NotificationChannel` to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createNotificationChannel

        public final NotificationChannel createNotificationChannel​(String name,
                                                                   NotificationChannel notificationChannel)
        Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or PagerDuty service.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           NotificationChannel notificationChannel = NotificationChannel.newBuilder().build();
           NotificationChannel response =
               notificationChannelServiceClient.createNotificationChannel(name, notificationChannel);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        This names the container into which the channel will be written, this does not name the newly created channel. The resulting channel's name will have a normalized version of this field as a prefix, but will add `/notificationChannels/[CHANNEL_ID]` to identify the channel.

        notificationChannel - Required. The definition of the `NotificationChannel` to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createNotificationChannel

        public final NotificationChannel createNotificationChannel​(CreateNotificationChannelRequest request)
        Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or PagerDuty service.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           CreateNotificationChannelRequest request =
               CreateNotificationChannelRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setNotificationChannel(NotificationChannel.newBuilder().build())
                   .build();
           NotificationChannel response =
               notificationChannelServiceClient.createNotificationChannel(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createNotificationChannelCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateNotificationChannelRequest,​NotificationChannel> createNotificationChannelCallable()
        Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or PagerDuty service.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           CreateNotificationChannelRequest request =
               CreateNotificationChannelRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setNotificationChannel(NotificationChannel.newBuilder().build())
                   .build();
           ApiFuture<NotificationChannel> future =
               notificationChannelServiceClient.createNotificationChannelCallable().futureCall(request);
           // Do something.
           NotificationChannel response = future.get();
         }
         
      • updateNotificationChannel

        public final NotificationChannel updateNotificationChannel​(com.google.protobuf.FieldMask updateMask,
                                                                   NotificationChannel notificationChannel)
        Updates a notification channel. Fields not specified in the field mask remain unchanged.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           FieldMask updateMask = FieldMask.newBuilder().build();
           NotificationChannel notificationChannel = NotificationChannel.newBuilder().build();
           NotificationChannel response =
               notificationChannelServiceClient.updateNotificationChannel(
                   updateMask, notificationChannel);
         }
         
        Parameters:
        updateMask - The fields to update.
        notificationChannel - Required. A description of the changes to be applied to the specified notification channel. The description must provide a definition for fields to be updated; the names of these fields should also be included in the `update_mask`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateNotificationChannel

        public final NotificationChannel updateNotificationChannel​(UpdateNotificationChannelRequest request)
        Updates a notification channel. Fields not specified in the field mask remain unchanged.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           UpdateNotificationChannelRequest request =
               UpdateNotificationChannelRequest.newBuilder()
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .setNotificationChannel(NotificationChannel.newBuilder().build())
                   .build();
           NotificationChannel response =
               notificationChannelServiceClient.updateNotificationChannel(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateNotificationChannelCallable

        public final com.google.api.gax.rpc.UnaryCallable<UpdateNotificationChannelRequest,​NotificationChannel> updateNotificationChannelCallable()
        Updates a notification channel. Fields not specified in the field mask remain unchanged.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           UpdateNotificationChannelRequest request =
               UpdateNotificationChannelRequest.newBuilder()
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .setNotificationChannel(NotificationChannel.newBuilder().build())
                   .build();
           ApiFuture<NotificationChannel> future =
               notificationChannelServiceClient.updateNotificationChannelCallable().futureCall(request);
           // Do something.
           NotificationChannel response = future.get();
         }
         
      • deleteNotificationChannel

        public final void deleteNotificationChannel​(NotificationChannelName name,
                                                    boolean force)
        Deletes a notification channel.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           NotificationChannelName name =
               NotificationChannelName.ofProjectNotificationChannelName(
                   "[PROJECT]", "[NOTIFICATION_CHANNEL]");
           boolean force = true;
           notificationChannelServiceClient.deleteNotificationChannel(name, force);
         }
         
        Parameters:
        name - Required. The channel for which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]

        force - If true, the notification channel will be deleted regardless of its use in alert policies (the policies will be updated to remove the channel). If false, channels that are still referenced by an existing alerting policy will fail to be deleted in a delete operation.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteNotificationChannel

        public final void deleteNotificationChannel​(String name,
                                                    boolean force)
        Deletes a notification channel.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name =
               NotificationChannelName.ofProjectNotificationChannelName(
                       "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                   .toString();
           boolean force = true;
           notificationChannelServiceClient.deleteNotificationChannel(name, force);
         }
         
        Parameters:
        name - Required. The channel for which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]

        force - If true, the notification channel will be deleted regardless of its use in alert policies (the policies will be updated to remove the channel). If false, channels that are still referenced by an existing alerting policy will fail to be deleted in a delete operation.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteNotificationChannel

        public final void deleteNotificationChannel​(DeleteNotificationChannelRequest request)
        Deletes a notification channel.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           DeleteNotificationChannelRequest request =
               DeleteNotificationChannelRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .setForce(true)
                   .build();
           notificationChannelServiceClient.deleteNotificationChannel(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteNotificationChannelCallable

        public final com.google.api.gax.rpc.UnaryCallable<DeleteNotificationChannelRequest,​com.google.protobuf.Empty> deleteNotificationChannelCallable()
        Deletes a notification channel.

        Design your application to single-thread API calls that modify the state of notification channels in a single project. This includes calls to CreateNotificationChannel, DeleteNotificationChannel and UpdateNotificationChannel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           DeleteNotificationChannelRequest request =
               DeleteNotificationChannelRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .setForce(true)
                   .build();
           ApiFuture<Empty> future =
               notificationChannelServiceClient.deleteNotificationChannelCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • sendNotificationChannelVerificationCode

        public final void sendNotificationChannelVerificationCode​(NotificationChannelName name)
        Causes a verification code to be delivered to the channel. The code can then be supplied in `VerifyNotificationChannel` to verify the channel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           NotificationChannelName name =
               NotificationChannelName.ofProjectNotificationChannelName(
                   "[PROJECT]", "[NOTIFICATION_CHANNEL]");
           notificationChannelServiceClient.sendNotificationChannelVerificationCode(name);
         }
         
        Parameters:
        name - Required. The notification channel to which to send a verification code.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • sendNotificationChannelVerificationCode

        public final void sendNotificationChannelVerificationCode​(String name)
        Causes a verification code to be delivered to the channel. The code can then be supplied in `VerifyNotificationChannel` to verify the channel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name =
               NotificationChannelName.ofProjectNotificationChannelName(
                       "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                   .toString();
           notificationChannelServiceClient.sendNotificationChannelVerificationCode(name);
         }
         
        Parameters:
        name - Required. The notification channel to which to send a verification code.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • sendNotificationChannelVerificationCode

        public final void sendNotificationChannelVerificationCode​(SendNotificationChannelVerificationCodeRequest request)
        Causes a verification code to be delivered to the channel. The code can then be supplied in `VerifyNotificationChannel` to verify the channel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           SendNotificationChannelVerificationCodeRequest request =
               SendNotificationChannelVerificationCodeRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .build();
           notificationChannelServiceClient.sendNotificationChannelVerificationCode(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • sendNotificationChannelVerificationCodeCallable

        public final com.google.api.gax.rpc.UnaryCallable<SendNotificationChannelVerificationCodeRequest,​com.google.protobuf.Empty> sendNotificationChannelVerificationCodeCallable()
        Causes a verification code to be delivered to the channel. The code can then be supplied in `VerifyNotificationChannel` to verify the channel.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           SendNotificationChannelVerificationCodeRequest request =
               SendNotificationChannelVerificationCodeRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .build();
           ApiFuture<Empty> future =
               notificationChannelServiceClient
                   .sendNotificationChannelVerificationCodeCallable()
                   .futureCall(request);
           // Do something.
           future.get();
         }
         
      • getNotificationChannelVerificationCode

        public final GetNotificationChannelVerificationCodeResponse getNotificationChannelVerificationCode​(NotificationChannelName name)
        Requests a verification code for an already verified channel that can then be used in a call to VerifyNotificationChannel() on a different channel with an equivalent identity in the same or in a different project. This makes it possible to copy a channel between projects without requiring manual reverification of the channel. If the channel is not in the verified state, this method will fail (in other words, this may only be used if the SendNotificationChannelVerificationCode and VerifyNotificationChannel paths have already been used to put the given channel into the verified state).

        There is no guarantee that the verification codes returned by this method will be of a similar structure or form as the ones that are delivered to the channel via SendNotificationChannelVerificationCode; while VerifyNotificationChannel() will recognize both the codes delivered via SendNotificationChannelVerificationCode() and returned from GetNotificationChannelVerificationCode(), it is typically the case that the verification codes delivered via SendNotificationChannelVerificationCode() will be shorter and also have a shorter expiration (e.g. codes such as "G-123456") whereas GetVerificationCode() will typically return a much longer, websafe base 64 encoded string that has a longer expiration time.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           NotificationChannelName name =
               NotificationChannelName.ofProjectNotificationChannelName(
                   "[PROJECT]", "[NOTIFICATION_CHANNEL]");
           GetNotificationChannelVerificationCodeResponse response =
               notificationChannelServiceClient.getNotificationChannelVerificationCode(name);
         }
         
        Parameters:
        name - Required. The notification channel for which a verification code is to be generated and retrieved. This must name a channel that is already verified; if the specified channel is not verified, the request will fail.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannelVerificationCode

        public final GetNotificationChannelVerificationCodeResponse getNotificationChannelVerificationCode​(String name)
        Requests a verification code for an already verified channel that can then be used in a call to VerifyNotificationChannel() on a different channel with an equivalent identity in the same or in a different project. This makes it possible to copy a channel between projects without requiring manual reverification of the channel. If the channel is not in the verified state, this method will fail (in other words, this may only be used if the SendNotificationChannelVerificationCode and VerifyNotificationChannel paths have already been used to put the given channel into the verified state).

        There is no guarantee that the verification codes returned by this method will be of a similar structure or form as the ones that are delivered to the channel via SendNotificationChannelVerificationCode; while VerifyNotificationChannel() will recognize both the codes delivered via SendNotificationChannelVerificationCode() and returned from GetNotificationChannelVerificationCode(), it is typically the case that the verification codes delivered via SendNotificationChannelVerificationCode() will be shorter and also have a shorter expiration (e.g. codes such as "G-123456") whereas GetVerificationCode() will typically return a much longer, websafe base 64 encoded string that has a longer expiration time.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name =
               NotificationChannelName.ofProjectNotificationChannelName(
                       "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                   .toString();
           GetNotificationChannelVerificationCodeResponse response =
               notificationChannelServiceClient.getNotificationChannelVerificationCode(name);
         }
         
        Parameters:
        name - Required. The notification channel for which a verification code is to be generated and retrieved. This must name a channel that is already verified; if the specified channel is not verified, the request will fail.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannelVerificationCode

        public final GetNotificationChannelVerificationCodeResponse getNotificationChannelVerificationCode​(GetNotificationChannelVerificationCodeRequest request)
        Requests a verification code for an already verified channel that can then be used in a call to VerifyNotificationChannel() on a different channel with an equivalent identity in the same or in a different project. This makes it possible to copy a channel between projects without requiring manual reverification of the channel. If the channel is not in the verified state, this method will fail (in other words, this may only be used if the SendNotificationChannelVerificationCode and VerifyNotificationChannel paths have already been used to put the given channel into the verified state).

        There is no guarantee that the verification codes returned by this method will be of a similar structure or form as the ones that are delivered to the channel via SendNotificationChannelVerificationCode; while VerifyNotificationChannel() will recognize both the codes delivered via SendNotificationChannelVerificationCode() and returned from GetNotificationChannelVerificationCode(), it is typically the case that the verification codes delivered via SendNotificationChannelVerificationCode() will be shorter and also have a shorter expiration (e.g. codes such as "G-123456") whereas GetVerificationCode() will typically return a much longer, websafe base 64 encoded string that has a longer expiration time.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           GetNotificationChannelVerificationCodeRequest request =
               GetNotificationChannelVerificationCodeRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .setExpireTime(Timestamp.newBuilder().build())
                   .build();
           GetNotificationChannelVerificationCodeResponse response =
               notificationChannelServiceClient.getNotificationChannelVerificationCode(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getNotificationChannelVerificationCodeCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetNotificationChannelVerificationCodeRequest,​GetNotificationChannelVerificationCodeResponse> getNotificationChannelVerificationCodeCallable()
        Requests a verification code for an already verified channel that can then be used in a call to VerifyNotificationChannel() on a different channel with an equivalent identity in the same or in a different project. This makes it possible to copy a channel between projects without requiring manual reverification of the channel. If the channel is not in the verified state, this method will fail (in other words, this may only be used if the SendNotificationChannelVerificationCode and VerifyNotificationChannel paths have already been used to put the given channel into the verified state).

        There is no guarantee that the verification codes returned by this method will be of a similar structure or form as the ones that are delivered to the channel via SendNotificationChannelVerificationCode; while VerifyNotificationChannel() will recognize both the codes delivered via SendNotificationChannelVerificationCode() and returned from GetNotificationChannelVerificationCode(), it is typically the case that the verification codes delivered via SendNotificationChannelVerificationCode() will be shorter and also have a shorter expiration (e.g. codes such as "G-123456") whereas GetVerificationCode() will typically return a much longer, websafe base 64 encoded string that has a longer expiration time.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           GetNotificationChannelVerificationCodeRequest request =
               GetNotificationChannelVerificationCodeRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .setExpireTime(Timestamp.newBuilder().build())
                   .build();
           ApiFuture<GetNotificationChannelVerificationCodeResponse> future =
               notificationChannelServiceClient
                   .getNotificationChannelVerificationCodeCallable()
                   .futureCall(request);
           // Do something.
           GetNotificationChannelVerificationCodeResponse response = future.get();
         }
         
      • verifyNotificationChannel

        public final NotificationChannel verifyNotificationChannel​(NotificationChannelName name,
                                                                   String code)
        Verifies a `NotificationChannel` by proving receipt of the code delivered to the channel as a result of calling `SendNotificationChannelVerificationCode`.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           NotificationChannelName name =
               NotificationChannelName.ofProjectNotificationChannelName(
                   "[PROJECT]", "[NOTIFICATION_CHANNEL]");
           String code = "code3059181";
           NotificationChannel response =
               notificationChannelServiceClient.verifyNotificationChannel(name, code);
         }
         
        Parameters:
        name - Required. The notification channel to verify.
        code - Required. The verification code that was delivered to the channel as a result of invoking the `SendNotificationChannelVerificationCode` API method or that was retrieved from a verified channel via `GetNotificationChannelVerificationCode`. For example, one might have "G-123456" or "TKNZGhhd2EyN3I1MnRnMjRv" (in general, one is only guaranteed that the code is valid UTF-8; one should not make any assumptions regarding the structure or format of the code).
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • verifyNotificationChannel

        public final NotificationChannel verifyNotificationChannel​(String name,
                                                                   String code)
        Verifies a `NotificationChannel` by proving receipt of the code delivered to the channel as a result of calling `SendNotificationChannelVerificationCode`.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           String name =
               NotificationChannelName.ofProjectNotificationChannelName(
                       "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                   .toString();
           String code = "code3059181";
           NotificationChannel response =
               notificationChannelServiceClient.verifyNotificationChannel(name, code);
         }
         
        Parameters:
        name - Required. The notification channel to verify.
        code - Required. The verification code that was delivered to the channel as a result of invoking the `SendNotificationChannelVerificationCode` API method or that was retrieved from a verified channel via `GetNotificationChannelVerificationCode`. For example, one might have "G-123456" or "TKNZGhhd2EyN3I1MnRnMjRv" (in general, one is only guaranteed that the code is valid UTF-8; one should not make any assumptions regarding the structure or format of the code).
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • verifyNotificationChannel

        public final NotificationChannel verifyNotificationChannel​(VerifyNotificationChannelRequest request)
        Verifies a `NotificationChannel` by proving receipt of the code delivered to the channel as a result of calling `SendNotificationChannelVerificationCode`.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           VerifyNotificationChannelRequest request =
               VerifyNotificationChannelRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .setCode("code3059181")
                   .build();
           NotificationChannel response =
               notificationChannelServiceClient.verifyNotificationChannel(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • verifyNotificationChannelCallable

        public final com.google.api.gax.rpc.UnaryCallable<VerifyNotificationChannelRequest,​NotificationChannel> verifyNotificationChannelCallable()
        Verifies a `NotificationChannel` by proving receipt of the code delivered to the channel as a result of calling `SendNotificationChannelVerificationCode`.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (NotificationChannelServiceClient notificationChannelServiceClient =
             NotificationChannelServiceClient.create()) {
           VerifyNotificationChannelRequest request =
               VerifyNotificationChannelRequest.newBuilder()
                   .setName(
                       NotificationChannelName.ofProjectNotificationChannelName(
                               "[PROJECT]", "[NOTIFICATION_CHANNEL]")
                           .toString())
                   .setCode("code3059181")
                   .build();
           ApiFuture<NotificationChannel> future =
               notificationChannelServiceClient.verifyNotificationChannelCallable().futureCall(request);
           // Do something.
           NotificationChannel response = future.get();
         }
         
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in interface com.google.api.gax.core.BackgroundResource
      • isShutdown

        public boolean isShutdown()
        Specified by:
        isShutdown in interface com.google.api.gax.core.BackgroundResource
      • isTerminated

        public boolean isTerminated()
        Specified by:
        isTerminated in interface com.google.api.gax.core.BackgroundResource
      • shutdownNow

        public void shutdownNow()
        Specified by:
        shutdownNow in interface com.google.api.gax.core.BackgroundResource