diff --git a/java-network-management/README.md b/java-network-management/README.md index afe22aa6cb05..a597bf24c0fe 100644 --- a/java-network-management/README.md +++ b/java-network-management/README.md @@ -13,9 +13,9 @@ Java idiomatic client for [Network Management API][product-docs]. If you are using Maven, add this to your pom.xml file: - + ```xml com.google.cloud @@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a You will need a [Google Cloud Platform Console][developer-console] project with the Network Management API [API enabled][enable-api]. You will need to [enable billing][enable-billing] to use Google Network Management API. [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by -[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line: +[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line: `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`. ### Installation and setup @@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-network-management.svg -[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-network-management&core=gav +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-network-management/1.14.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy [developer-console]: https://console.developers.google.com/ [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects -[cloud-sdk]: https://cloud.google.com/sdk/ +[cloud-cli]: https://cloud.google.com/cli [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct diff --git a/java-network-management/grpc-google-cloud-network-management-v1/src/main/java/com/google/cloud/networkmanagement/v1/ReachabilityServiceGrpc.java b/java-network-management/grpc-google-cloud-network-management-v1/src/main/java/com/google/cloud/networkmanagement/v1/ReachabilityServiceGrpc.java index b09ce4809a6f..923b6377ca09 100644 --- a/java-network-management/grpc-google-cloud-network-management-v1/src/main/java/com/google/cloud/networkmanagement/v1/ReachabilityServiceGrpc.java +++ b/java-network-management/grpc-google-cloud-network-management-v1/src/main/java/com/google/cloud/networkmanagement/v1/ReachabilityServiceGrpc.java @@ -396,7 +396,7 @@ public ReachabilityServiceFutureStub newStub( * to troubleshoot connectivity issues. * */ - public abstract static class ReachabilityServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -405,7 +405,7 @@ public abstract static class ReachabilityServiceImplBase implements io.grpc.Bind * Lists all Connectivity Tests owned by a project. * */ - public void listConnectivityTests( + default void listConnectivityTests( com.google.cloud.networkmanagement.v1.ListConnectivityTestsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networkmanagement.v1.ListConnectivityTestsResponse> @@ -421,7 +421,7 @@ public void listConnectivityTests( * Gets the details of a specific Connectivity Test. * */ - public void getConnectivityTest( + default void getConnectivityTest( com.google.cloud.networkmanagement.v1.GetConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -446,7 +446,7 @@ public void getConnectivityTest( * see the Connectivity Test documentation. * */ - public void createConnectivityTest( + default void createConnectivityTest( com.google.cloud.networkmanagement.v1.CreateConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -471,7 +471,7 @@ public void createConnectivityTest( * in `ConnectivityTest` for for more details. * */ - public void updateConnectivityTest( + default void updateConnectivityTest( com.google.cloud.networkmanagement.v1.UpdateConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -494,7 +494,7 @@ public void updateConnectivityTest( * the reachability result returns a value of `UNKNOWN`. * */ - public void rerunConnectivityTest( + default void rerunConnectivityTest( com.google.cloud.networkmanagement.v1.RerunConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -508,60 +508,38 @@ public void rerunConnectivityTest( * Deletes a specific `ConnectivityTest`. * */ - public void deleteConnectivityTest( + default void deleteConnectivityTest( com.google.cloud.networkmanagement.v1.DeleteConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteConnectivityTestMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ReachabilityService. + * + *
+   * The Reachability service in the Google Cloud Network Management API provides
+   * services that analyze the reachability within a single Google Virtual Private
+   * Cloud (VPC) network, between peered VPC networks, between VPC and on-premises
+   * networks, or between VPC networks and internet hosts. A reachability analysis
+   * is based on Google Cloud network configurations.
+   * You can use the analysis results to verify these configurations and
+   * to troubleshoot connectivity issues.
+   * 
+ */ + public abstract static class ReachabilityServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListConnectivityTestsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1.ListConnectivityTestsRequest, - com.google.cloud.networkmanagement.v1.ListConnectivityTestsResponse>( - this, METHODID_LIST_CONNECTIVITY_TESTS))) - .addMethod( - getGetConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1.GetConnectivityTestRequest, - com.google.cloud.networkmanagement.v1.ConnectivityTest>( - this, METHODID_GET_CONNECTIVITY_TEST))) - .addMethod( - getCreateConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1.CreateConnectivityTestRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_CONNECTIVITY_TEST))) - .addMethod( - getUpdateConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1.UpdateConnectivityTestRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_CONNECTIVITY_TEST))) - .addMethod( - getRerunConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1.RerunConnectivityTestRequest, - com.google.longrunning.Operation>(this, METHODID_RERUN_CONNECTIVITY_TEST))) - .addMethod( - getDeleteConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1.DeleteConnectivityTestRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_CONNECTIVITY_TEST))) - .build(); + return ReachabilityServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ReachabilityService. * *
    * The Reachability service in the Google Cloud Network Management API provides
@@ -716,7 +694,7 @@ public void deleteConnectivityTest(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ReachabilityService.
    *
    * 
    * The Reachability service in the Google Cloud Network Management API provides
@@ -852,7 +830,7 @@ public com.google.longrunning.Operation deleteConnectivityTest(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ReachabilityService.
    *
    * 
    * The Reachability service in the Google Cloud Network Management API provides
@@ -1006,10 +984,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ReachabilityServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ReachabilityServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1067,6 +1045,49 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListConnectivityTestsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1.ListConnectivityTestsRequest,
+                    com.google.cloud.networkmanagement.v1.ListConnectivityTestsResponse>(
+                    service, METHODID_LIST_CONNECTIVITY_TESTS)))
+        .addMethod(
+            getGetConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1.GetConnectivityTestRequest,
+                    com.google.cloud.networkmanagement.v1.ConnectivityTest>(
+                    service, METHODID_GET_CONNECTIVITY_TEST)))
+        .addMethod(
+            getCreateConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1.CreateConnectivityTestRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_CONNECTIVITY_TEST)))
+        .addMethod(
+            getUpdateConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1.UpdateConnectivityTestRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_CONNECTIVITY_TEST)))
+        .addMethod(
+            getRerunConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1.RerunConnectivityTestRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RERUN_CONNECTIVITY_TEST)))
+        .addMethod(
+            getDeleteConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1.DeleteConnectivityTestRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_CONNECTIVITY_TEST)))
+        .build();
+  }
+
   private abstract static class ReachabilityServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-network-management/grpc-google-cloud-network-management-v1beta1/src/main/java/com/google/cloud/networkmanagement/v1beta1/ReachabilityServiceGrpc.java b/java-network-management/grpc-google-cloud-network-management-v1beta1/src/main/java/com/google/cloud/networkmanagement/v1beta1/ReachabilityServiceGrpc.java
index a3c9cd320bae..e6d3e7277198 100644
--- a/java-network-management/grpc-google-cloud-network-management-v1beta1/src/main/java/com/google/cloud/networkmanagement/v1beta1/ReachabilityServiceGrpc.java
+++ b/java-network-management/grpc-google-cloud-network-management-v1beta1/src/main/java/com/google/cloud/networkmanagement/v1beta1/ReachabilityServiceGrpc.java
@@ -397,7 +397,7 @@ public ReachabilityServiceFutureStub newStub(
    * to troubleshoot connectivity issues.
    * 
*/ - public abstract static class ReachabilityServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -406,7 +406,7 @@ public abstract static class ReachabilityServiceImplBase implements io.grpc.Bind * Lists all Connectivity Tests owned by a project. *
*/ - public void listConnectivityTests( + default void listConnectivityTests( com.google.cloud.networkmanagement.v1beta1.ListConnectivityTestsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networkmanagement.v1beta1.ListConnectivityTestsResponse> @@ -422,7 +422,7 @@ public void listConnectivityTests( * Gets the details of a specific Connectivity Test. *
*/ - public void getConnectivityTest( + default void getConnectivityTest( com.google.cloud.networkmanagement.v1beta1.GetConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -447,7 +447,7 @@ public void getConnectivityTest( * see the Connectivity Test documentation. * */ - public void createConnectivityTest( + default void createConnectivityTest( com.google.cloud.networkmanagement.v1beta1.CreateConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -472,7 +472,7 @@ public void createConnectivityTest( * in `ConnectivityTest` for for more details. * */ - public void updateConnectivityTest( + default void updateConnectivityTest( com.google.cloud.networkmanagement.v1beta1.UpdateConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -495,7 +495,7 @@ public void updateConnectivityTest( * the reachability result returns a value of `UNKNOWN`. * */ - public void rerunConnectivityTest( + default void rerunConnectivityTest( com.google.cloud.networkmanagement.v1beta1.RerunConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -509,60 +509,38 @@ public void rerunConnectivityTest( * Deletes a specific `ConnectivityTest`. * */ - public void deleteConnectivityTest( + default void deleteConnectivityTest( com.google.cloud.networkmanagement.v1beta1.DeleteConnectivityTestRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteConnectivityTestMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ReachabilityService. + * + *
+   * The Reachability service in the Google Cloud Network Management API provides
+   * services that analyze the reachability within a single Google Virtual Private
+   * Cloud (VPC) network, between peered VPC networks, between VPC and on-premises
+   * networks, or between VPC networks and internet hosts. A reachability analysis
+   * is based on Google Cloud network configurations.
+   * You can use the analysis results to verify these configurations and
+   * to troubleshoot connectivity issues.
+   * 
+ */ + public abstract static class ReachabilityServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListConnectivityTestsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1beta1.ListConnectivityTestsRequest, - com.google.cloud.networkmanagement.v1beta1.ListConnectivityTestsResponse>( - this, METHODID_LIST_CONNECTIVITY_TESTS))) - .addMethod( - getGetConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1beta1.GetConnectivityTestRequest, - com.google.cloud.networkmanagement.v1beta1.ConnectivityTest>( - this, METHODID_GET_CONNECTIVITY_TEST))) - .addMethod( - getCreateConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1beta1.CreateConnectivityTestRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_CONNECTIVITY_TEST))) - .addMethod( - getUpdateConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1beta1.UpdateConnectivityTestRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_CONNECTIVITY_TEST))) - .addMethod( - getRerunConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1beta1.RerunConnectivityTestRequest, - com.google.longrunning.Operation>(this, METHODID_RERUN_CONNECTIVITY_TEST))) - .addMethod( - getDeleteConnectivityTestMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkmanagement.v1beta1.DeleteConnectivityTestRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_CONNECTIVITY_TEST))) - .build(); + return ReachabilityServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ReachabilityService. * *
    * The Reachability service in the Google Cloud Network Management API provides
@@ -717,7 +695,7 @@ public void deleteConnectivityTest(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ReachabilityService.
    *
    * 
    * The Reachability service in the Google Cloud Network Management API provides
@@ -853,7 +831,7 @@ public com.google.longrunning.Operation deleteConnectivityTest(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ReachabilityService.
    *
    * 
    * The Reachability service in the Google Cloud Network Management API provides
@@ -1007,10 +985,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ReachabilityServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ReachabilityServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1069,6 +1047,49 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListConnectivityTestsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1beta1.ListConnectivityTestsRequest,
+                    com.google.cloud.networkmanagement.v1beta1.ListConnectivityTestsResponse>(
+                    service, METHODID_LIST_CONNECTIVITY_TESTS)))
+        .addMethod(
+            getGetConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1beta1.GetConnectivityTestRequest,
+                    com.google.cloud.networkmanagement.v1beta1.ConnectivityTest>(
+                    service, METHODID_GET_CONNECTIVITY_TEST)))
+        .addMethod(
+            getCreateConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1beta1.CreateConnectivityTestRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_CONNECTIVITY_TEST)))
+        .addMethod(
+            getUpdateConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1beta1.UpdateConnectivityTestRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_CONNECTIVITY_TEST)))
+        .addMethod(
+            getRerunConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1beta1.RerunConnectivityTestRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RERUN_CONNECTIVITY_TEST)))
+        .addMethod(
+            getDeleteConnectivityTestMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkmanagement.v1beta1.DeleteConnectivityTestRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_CONNECTIVITY_TEST)))
+        .build();
+  }
+
   private abstract static class ReachabilityServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-network-security/README.md b/java-network-security/README.md
index 7969f8d38fee..a31350b31923 100644
--- a/java-network-security/README.md
+++ b/java-network-security/README.md
@@ -16,9 +16,9 @@ Java idiomatic client for [Network Security API][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -55,7 +55,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Network Security API [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Network Security API.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -179,14 +179,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-preview-yellow
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-network-security.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-network-security&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-network-security/0.16.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-network-security/grpc-google-cloud-network-security-v1/src/main/java/com/google/cloud/networksecurity/v1/NetworkSecurityGrpc.java b/java-network-security/grpc-google-cloud-network-security-v1/src/main/java/com/google/cloud/networksecurity/v1/NetworkSecurityGrpc.java
index d32cae5f056f..e022c05bf8b2 100644
--- a/java-network-security/grpc-google-cloud-network-security-v1/src/main/java/com/google/cloud/networksecurity/v1/NetworkSecurityGrpc.java
+++ b/java-network-security/grpc-google-cloud-network-security-v1/src/main/java/com/google/cloud/networksecurity/v1/NetworkSecurityGrpc.java
@@ -832,7 +832,7 @@ public NetworkSecurityFutureStub newStub(
    * information.
    * 
*/ - public abstract static class NetworkSecurityImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -841,7 +841,7 @@ public abstract static class NetworkSecurityImplBase implements io.grpc.Bindable * Lists AuthorizationPolicies in a given project and location. *
*/ - public void listAuthorizationPolicies( + default void listAuthorizationPolicies( com.google.cloud.networksecurity.v1.ListAuthorizationPoliciesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networksecurity.v1.ListAuthorizationPoliciesResponse> @@ -857,7 +857,7 @@ public void listAuthorizationPolicies( * Gets details of a single AuthorizationPolicy. *
*/ - public void getAuthorizationPolicy( + default void getAuthorizationPolicy( com.google.cloud.networksecurity.v1.GetAuthorizationPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -872,7 +872,7 @@ public void getAuthorizationPolicy( * Creates a new AuthorizationPolicy in a given project and location. * */ - public void createAuthorizationPolicy( + default void createAuthorizationPolicy( com.google.cloud.networksecurity.v1.CreateAuthorizationPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -886,7 +886,7 @@ public void createAuthorizationPolicy( * Updates the parameters of a single AuthorizationPolicy. * */ - public void updateAuthorizationPolicy( + default void updateAuthorizationPolicy( com.google.cloud.networksecurity.v1.UpdateAuthorizationPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -900,7 +900,7 @@ public void updateAuthorizationPolicy( * Deletes a single AuthorizationPolicy. * */ - public void deleteAuthorizationPolicy( + default void deleteAuthorizationPolicy( com.google.cloud.networksecurity.v1.DeleteAuthorizationPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -914,7 +914,7 @@ public void deleteAuthorizationPolicy( * Lists ServerTlsPolicies in a given project and location. * */ - public void listServerTlsPolicies( + default void listServerTlsPolicies( com.google.cloud.networksecurity.v1.ListServerTlsPoliciesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networksecurity.v1.ListServerTlsPoliciesResponse> @@ -930,7 +930,7 @@ public void listServerTlsPolicies( * Gets details of a single ServerTlsPolicy. * */ - public void getServerTlsPolicy( + default void getServerTlsPolicy( com.google.cloud.networksecurity.v1.GetServerTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -945,7 +945,7 @@ public void getServerTlsPolicy( * Creates a new ServerTlsPolicy in a given project and location. * */ - public void createServerTlsPolicy( + default void createServerTlsPolicy( com.google.cloud.networksecurity.v1.CreateServerTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -959,7 +959,7 @@ public void createServerTlsPolicy( * Updates the parameters of a single ServerTlsPolicy. * */ - public void updateServerTlsPolicy( + default void updateServerTlsPolicy( com.google.cloud.networksecurity.v1.UpdateServerTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -973,7 +973,7 @@ public void updateServerTlsPolicy( * Deletes a single ServerTlsPolicy. * */ - public void deleteServerTlsPolicy( + default void deleteServerTlsPolicy( com.google.cloud.networksecurity.v1.DeleteServerTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -987,7 +987,7 @@ public void deleteServerTlsPolicy( * Lists ClientTlsPolicies in a given project and location. * */ - public void listClientTlsPolicies( + default void listClientTlsPolicies( com.google.cloud.networksecurity.v1.ListClientTlsPoliciesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networksecurity.v1.ListClientTlsPoliciesResponse> @@ -1003,7 +1003,7 @@ public void listClientTlsPolicies( * Gets details of a single ClientTlsPolicy. * */ - public void getClientTlsPolicy( + default void getClientTlsPolicy( com.google.cloud.networksecurity.v1.GetClientTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1018,7 +1018,7 @@ public void getClientTlsPolicy( * Creates a new ClientTlsPolicy in a given project and location. * */ - public void createClientTlsPolicy( + default void createClientTlsPolicy( com.google.cloud.networksecurity.v1.CreateClientTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1032,7 +1032,7 @@ public void createClientTlsPolicy( * Updates the parameters of a single ClientTlsPolicy. * */ - public void updateClientTlsPolicy( + default void updateClientTlsPolicy( com.google.cloud.networksecurity.v1.UpdateClientTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1046,121 +1046,34 @@ public void updateClientTlsPolicy( * Deletes a single ClientTlsPolicy. * */ - public void deleteClientTlsPolicy( + default void deleteClientTlsPolicy( com.google.cloud.networksecurity.v1.DeleteClientTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteClientTlsPolicyMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service NetworkSecurity. + * + *
+   * Network Security API provides resources to configure authentication and
+   * authorization policies. Refer to per API resource documentation for more
+   * information.
+   * 
+ */ + public abstract static class NetworkSecurityImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListAuthorizationPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.ListAuthorizationPoliciesRequest, - com.google.cloud.networksecurity.v1.ListAuthorizationPoliciesResponse>( - this, METHODID_LIST_AUTHORIZATION_POLICIES))) - .addMethod( - getGetAuthorizationPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.GetAuthorizationPolicyRequest, - com.google.cloud.networksecurity.v1.AuthorizationPolicy>( - this, METHODID_GET_AUTHORIZATION_POLICY))) - .addMethod( - getCreateAuthorizationPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.CreateAuthorizationPolicyRequest, - com.google.longrunning.Operation>( - this, METHODID_CREATE_AUTHORIZATION_POLICY))) - .addMethod( - getUpdateAuthorizationPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.UpdateAuthorizationPolicyRequest, - com.google.longrunning.Operation>( - this, METHODID_UPDATE_AUTHORIZATION_POLICY))) - .addMethod( - getDeleteAuthorizationPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.DeleteAuthorizationPolicyRequest, - com.google.longrunning.Operation>( - this, METHODID_DELETE_AUTHORIZATION_POLICY))) - .addMethod( - getListServerTlsPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.ListServerTlsPoliciesRequest, - com.google.cloud.networksecurity.v1.ListServerTlsPoliciesResponse>( - this, METHODID_LIST_SERVER_TLS_POLICIES))) - .addMethod( - getGetServerTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.GetServerTlsPolicyRequest, - com.google.cloud.networksecurity.v1.ServerTlsPolicy>( - this, METHODID_GET_SERVER_TLS_POLICY))) - .addMethod( - getCreateServerTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.CreateServerTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_SERVER_TLS_POLICY))) - .addMethod( - getUpdateServerTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.UpdateServerTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_SERVER_TLS_POLICY))) - .addMethod( - getDeleteServerTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.DeleteServerTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_SERVER_TLS_POLICY))) - .addMethod( - getListClientTlsPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.ListClientTlsPoliciesRequest, - com.google.cloud.networksecurity.v1.ListClientTlsPoliciesResponse>( - this, METHODID_LIST_CLIENT_TLS_POLICIES))) - .addMethod( - getGetClientTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.GetClientTlsPolicyRequest, - com.google.cloud.networksecurity.v1.ClientTlsPolicy>( - this, METHODID_GET_CLIENT_TLS_POLICY))) - .addMethod( - getCreateClientTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.CreateClientTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_CLIENT_TLS_POLICY))) - .addMethod( - getUpdateClientTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.UpdateClientTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_CLIENT_TLS_POLICY))) - .addMethod( - getDeleteClientTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1.DeleteClientTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_CLIENT_TLS_POLICY))) - .build(); + return NetworkSecurityGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service NetworkSecurity. * *
    * Network Security API provides resources to configure authentication and
@@ -1430,7 +1343,7 @@ public void deleteClientTlsPolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service NetworkSecurity.
    *
    * 
    * Network Security API provides resources to configure authentication and
@@ -1648,7 +1561,7 @@ public com.google.longrunning.Operation deleteClientTlsPolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service NetworkSecurity.
    *
    * 
    * Network Security API provides resources to configure authentication and
@@ -1904,10 +1817,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final NetworkSecurityImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(NetworkSecurityImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2016,6 +1929,110 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListAuthorizationPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.ListAuthorizationPoliciesRequest,
+                    com.google.cloud.networksecurity.v1.ListAuthorizationPoliciesResponse>(
+                    service, METHODID_LIST_AUTHORIZATION_POLICIES)))
+        .addMethod(
+            getGetAuthorizationPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.GetAuthorizationPolicyRequest,
+                    com.google.cloud.networksecurity.v1.AuthorizationPolicy>(
+                    service, METHODID_GET_AUTHORIZATION_POLICY)))
+        .addMethod(
+            getCreateAuthorizationPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.CreateAuthorizationPolicyRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_CREATE_AUTHORIZATION_POLICY)))
+        .addMethod(
+            getUpdateAuthorizationPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.UpdateAuthorizationPolicyRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_UPDATE_AUTHORIZATION_POLICY)))
+        .addMethod(
+            getDeleteAuthorizationPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.DeleteAuthorizationPolicyRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_DELETE_AUTHORIZATION_POLICY)))
+        .addMethod(
+            getListServerTlsPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.ListServerTlsPoliciesRequest,
+                    com.google.cloud.networksecurity.v1.ListServerTlsPoliciesResponse>(
+                    service, METHODID_LIST_SERVER_TLS_POLICIES)))
+        .addMethod(
+            getGetServerTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.GetServerTlsPolicyRequest,
+                    com.google.cloud.networksecurity.v1.ServerTlsPolicy>(
+                    service, METHODID_GET_SERVER_TLS_POLICY)))
+        .addMethod(
+            getCreateServerTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.CreateServerTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_SERVER_TLS_POLICY)))
+        .addMethod(
+            getUpdateServerTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.UpdateServerTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_SERVER_TLS_POLICY)))
+        .addMethod(
+            getDeleteServerTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.DeleteServerTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_SERVER_TLS_POLICY)))
+        .addMethod(
+            getListClientTlsPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.ListClientTlsPoliciesRequest,
+                    com.google.cloud.networksecurity.v1.ListClientTlsPoliciesResponse>(
+                    service, METHODID_LIST_CLIENT_TLS_POLICIES)))
+        .addMethod(
+            getGetClientTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.GetClientTlsPolicyRequest,
+                    com.google.cloud.networksecurity.v1.ClientTlsPolicy>(
+                    service, METHODID_GET_CLIENT_TLS_POLICY)))
+        .addMethod(
+            getCreateClientTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.CreateClientTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_CLIENT_TLS_POLICY)))
+        .addMethod(
+            getUpdateClientTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.UpdateClientTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_CLIENT_TLS_POLICY)))
+        .addMethod(
+            getDeleteClientTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1.DeleteClientTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_CLIENT_TLS_POLICY)))
+        .build();
+  }
+
   private abstract static class NetworkSecurityBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-network-security/grpc-google-cloud-network-security-v1beta1/src/main/java/com/google/cloud/networksecurity/v1beta1/NetworkSecurityGrpc.java b/java-network-security/grpc-google-cloud-network-security-v1beta1/src/main/java/com/google/cloud/networksecurity/v1beta1/NetworkSecurityGrpc.java
index ef56ee68ea5c..ee1fd9568613 100644
--- a/java-network-security/grpc-google-cloud-network-security-v1beta1/src/main/java/com/google/cloud/networksecurity/v1beta1/NetworkSecurityGrpc.java
+++ b/java-network-security/grpc-google-cloud-network-security-v1beta1/src/main/java/com/google/cloud/networksecurity/v1beta1/NetworkSecurityGrpc.java
@@ -834,7 +834,7 @@ public NetworkSecurityFutureStub newStub(
    * information.
    * 
*/ - public abstract static class NetworkSecurityImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -843,7 +843,7 @@ public abstract static class NetworkSecurityImplBase implements io.grpc.Bindable * Lists AuthorizationPolicies in a given project and location. *
*/ - public void listAuthorizationPolicies( + default void listAuthorizationPolicies( com.google.cloud.networksecurity.v1beta1.ListAuthorizationPoliciesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networksecurity.v1beta1.ListAuthorizationPoliciesResponse> @@ -859,7 +859,7 @@ public void listAuthorizationPolicies( * Gets details of a single AuthorizationPolicy. *
*/ - public void getAuthorizationPolicy( + default void getAuthorizationPolicy( com.google.cloud.networksecurity.v1beta1.GetAuthorizationPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -874,7 +874,7 @@ public void getAuthorizationPolicy( * Creates a new AuthorizationPolicy in a given project and location. * */ - public void createAuthorizationPolicy( + default void createAuthorizationPolicy( com.google.cloud.networksecurity.v1beta1.CreateAuthorizationPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -888,7 +888,7 @@ public void createAuthorizationPolicy( * Updates the parameters of a single AuthorizationPolicy. * */ - public void updateAuthorizationPolicy( + default void updateAuthorizationPolicy( com.google.cloud.networksecurity.v1beta1.UpdateAuthorizationPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -902,7 +902,7 @@ public void updateAuthorizationPolicy( * Deletes a single AuthorizationPolicy. * */ - public void deleteAuthorizationPolicy( + default void deleteAuthorizationPolicy( com.google.cloud.networksecurity.v1beta1.DeleteAuthorizationPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -916,7 +916,7 @@ public void deleteAuthorizationPolicy( * Lists ServerTlsPolicies in a given project and location. * */ - public void listServerTlsPolicies( + default void listServerTlsPolicies( com.google.cloud.networksecurity.v1beta1.ListServerTlsPoliciesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networksecurity.v1beta1.ListServerTlsPoliciesResponse> @@ -932,7 +932,7 @@ public void listServerTlsPolicies( * Gets details of a single ServerTlsPolicy. * */ - public void getServerTlsPolicy( + default void getServerTlsPolicy( com.google.cloud.networksecurity.v1beta1.GetServerTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -947,7 +947,7 @@ public void getServerTlsPolicy( * Creates a new ServerTlsPolicy in a given project and location. * */ - public void createServerTlsPolicy( + default void createServerTlsPolicy( com.google.cloud.networksecurity.v1beta1.CreateServerTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -961,7 +961,7 @@ public void createServerTlsPolicy( * Updates the parameters of a single ServerTlsPolicy. * */ - public void updateServerTlsPolicy( + default void updateServerTlsPolicy( com.google.cloud.networksecurity.v1beta1.UpdateServerTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -975,7 +975,7 @@ public void updateServerTlsPolicy( * Deletes a single ServerTlsPolicy. * */ - public void deleteServerTlsPolicy( + default void deleteServerTlsPolicy( com.google.cloud.networksecurity.v1beta1.DeleteServerTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -989,7 +989,7 @@ public void deleteServerTlsPolicy( * Lists ClientTlsPolicies in a given project and location. * */ - public void listClientTlsPolicies( + default void listClientTlsPolicies( com.google.cloud.networksecurity.v1beta1.ListClientTlsPoliciesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networksecurity.v1beta1.ListClientTlsPoliciesResponse> @@ -1005,7 +1005,7 @@ public void listClientTlsPolicies( * Gets details of a single ClientTlsPolicy. * */ - public void getClientTlsPolicy( + default void getClientTlsPolicy( com.google.cloud.networksecurity.v1beta1.GetClientTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1020,7 +1020,7 @@ public void getClientTlsPolicy( * Creates a new ClientTlsPolicy in a given project and location. * */ - public void createClientTlsPolicy( + default void createClientTlsPolicy( com.google.cloud.networksecurity.v1beta1.CreateClientTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1034,7 +1034,7 @@ public void createClientTlsPolicy( * Updates the parameters of a single ClientTlsPolicy. * */ - public void updateClientTlsPolicy( + default void updateClientTlsPolicy( com.google.cloud.networksecurity.v1beta1.UpdateClientTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1048,121 +1048,34 @@ public void updateClientTlsPolicy( * Deletes a single ClientTlsPolicy. * */ - public void deleteClientTlsPolicy( + default void deleteClientTlsPolicy( com.google.cloud.networksecurity.v1beta1.DeleteClientTlsPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteClientTlsPolicyMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service NetworkSecurity. + * + *
+   * Network Security API provides resources to configure authentication and
+   * authorization policies. Refer to per API resource documentation for more
+   * information.
+   * 
+ */ + public abstract static class NetworkSecurityImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListAuthorizationPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.ListAuthorizationPoliciesRequest, - com.google.cloud.networksecurity.v1beta1.ListAuthorizationPoliciesResponse>( - this, METHODID_LIST_AUTHORIZATION_POLICIES))) - .addMethod( - getGetAuthorizationPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.GetAuthorizationPolicyRequest, - com.google.cloud.networksecurity.v1beta1.AuthorizationPolicy>( - this, METHODID_GET_AUTHORIZATION_POLICY))) - .addMethod( - getCreateAuthorizationPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.CreateAuthorizationPolicyRequest, - com.google.longrunning.Operation>( - this, METHODID_CREATE_AUTHORIZATION_POLICY))) - .addMethod( - getUpdateAuthorizationPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.UpdateAuthorizationPolicyRequest, - com.google.longrunning.Operation>( - this, METHODID_UPDATE_AUTHORIZATION_POLICY))) - .addMethod( - getDeleteAuthorizationPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.DeleteAuthorizationPolicyRequest, - com.google.longrunning.Operation>( - this, METHODID_DELETE_AUTHORIZATION_POLICY))) - .addMethod( - getListServerTlsPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.ListServerTlsPoliciesRequest, - com.google.cloud.networksecurity.v1beta1.ListServerTlsPoliciesResponse>( - this, METHODID_LIST_SERVER_TLS_POLICIES))) - .addMethod( - getGetServerTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.GetServerTlsPolicyRequest, - com.google.cloud.networksecurity.v1beta1.ServerTlsPolicy>( - this, METHODID_GET_SERVER_TLS_POLICY))) - .addMethod( - getCreateServerTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.CreateServerTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_SERVER_TLS_POLICY))) - .addMethod( - getUpdateServerTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.UpdateServerTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_SERVER_TLS_POLICY))) - .addMethod( - getDeleteServerTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.DeleteServerTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_SERVER_TLS_POLICY))) - .addMethod( - getListClientTlsPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.ListClientTlsPoliciesRequest, - com.google.cloud.networksecurity.v1beta1.ListClientTlsPoliciesResponse>( - this, METHODID_LIST_CLIENT_TLS_POLICIES))) - .addMethod( - getGetClientTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.GetClientTlsPolicyRequest, - com.google.cloud.networksecurity.v1beta1.ClientTlsPolicy>( - this, METHODID_GET_CLIENT_TLS_POLICY))) - .addMethod( - getCreateClientTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.CreateClientTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_CLIENT_TLS_POLICY))) - .addMethod( - getUpdateClientTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.UpdateClientTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_CLIENT_TLS_POLICY))) - .addMethod( - getDeleteClientTlsPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networksecurity.v1beta1.DeleteClientTlsPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_CLIENT_TLS_POLICY))) - .build(); + return NetworkSecurityGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service NetworkSecurity. * *
    * Network Security API provides resources to configure authentication and
@@ -1432,7 +1345,7 @@ public void deleteClientTlsPolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service NetworkSecurity.
    *
    * 
    * Network Security API provides resources to configure authentication and
@@ -1652,7 +1565,7 @@ public com.google.longrunning.Operation deleteClientTlsPolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service NetworkSecurity.
    *
    * 
    * Network Security API provides resources to configure authentication and
@@ -1910,10 +1823,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final NetworkSecurityImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(NetworkSecurityImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2025,6 +1938,110 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListAuthorizationPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.ListAuthorizationPoliciesRequest,
+                    com.google.cloud.networksecurity.v1beta1.ListAuthorizationPoliciesResponse>(
+                    service, METHODID_LIST_AUTHORIZATION_POLICIES)))
+        .addMethod(
+            getGetAuthorizationPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.GetAuthorizationPolicyRequest,
+                    com.google.cloud.networksecurity.v1beta1.AuthorizationPolicy>(
+                    service, METHODID_GET_AUTHORIZATION_POLICY)))
+        .addMethod(
+            getCreateAuthorizationPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.CreateAuthorizationPolicyRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_CREATE_AUTHORIZATION_POLICY)))
+        .addMethod(
+            getUpdateAuthorizationPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.UpdateAuthorizationPolicyRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_UPDATE_AUTHORIZATION_POLICY)))
+        .addMethod(
+            getDeleteAuthorizationPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.DeleteAuthorizationPolicyRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_DELETE_AUTHORIZATION_POLICY)))
+        .addMethod(
+            getListServerTlsPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.ListServerTlsPoliciesRequest,
+                    com.google.cloud.networksecurity.v1beta1.ListServerTlsPoliciesResponse>(
+                    service, METHODID_LIST_SERVER_TLS_POLICIES)))
+        .addMethod(
+            getGetServerTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.GetServerTlsPolicyRequest,
+                    com.google.cloud.networksecurity.v1beta1.ServerTlsPolicy>(
+                    service, METHODID_GET_SERVER_TLS_POLICY)))
+        .addMethod(
+            getCreateServerTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.CreateServerTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_SERVER_TLS_POLICY)))
+        .addMethod(
+            getUpdateServerTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.UpdateServerTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_SERVER_TLS_POLICY)))
+        .addMethod(
+            getDeleteServerTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.DeleteServerTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_SERVER_TLS_POLICY)))
+        .addMethod(
+            getListClientTlsPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.ListClientTlsPoliciesRequest,
+                    com.google.cloud.networksecurity.v1beta1.ListClientTlsPoliciesResponse>(
+                    service, METHODID_LIST_CLIENT_TLS_POLICIES)))
+        .addMethod(
+            getGetClientTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.GetClientTlsPolicyRequest,
+                    com.google.cloud.networksecurity.v1beta1.ClientTlsPolicy>(
+                    service, METHODID_GET_CLIENT_TLS_POLICY)))
+        .addMethod(
+            getCreateClientTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.CreateClientTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_CLIENT_TLS_POLICY)))
+        .addMethod(
+            getUpdateClientTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.UpdateClientTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_CLIENT_TLS_POLICY)))
+        .addMethod(
+            getDeleteClientTlsPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networksecurity.v1beta1.DeleteClientTlsPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_CLIENT_TLS_POLICY)))
+        .build();
+  }
+
   private abstract static class NetworkSecurityBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-networkconnectivity/README.md b/java-networkconnectivity/README.md
index 421e349cccac..80c89b7982c1 100644
--- a/java-networkconnectivity/README.md
+++ b/java-networkconnectivity/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Network Connectivity Center][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Network Connectivity Center [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Network Connectivity Center.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-networkconnectivity.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-networkconnectivity&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-networkconnectivity/1.12.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-networkconnectivity/grpc-google-cloud-networkconnectivity-v1/src/main/java/com/google/cloud/networkconnectivity/v1/HubServiceGrpc.java b/java-networkconnectivity/grpc-google-cloud-networkconnectivity-v1/src/main/java/com/google/cloud/networkconnectivity/v1/HubServiceGrpc.java
index 2c1620fb084e..b25e24f63eeb 100644
--- a/java-networkconnectivity/grpc-google-cloud-networkconnectivity-v1/src/main/java/com/google/cloud/networkconnectivity/v1/HubServiceGrpc.java
+++ b/java-networkconnectivity/grpc-google-cloud-networkconnectivity-v1/src/main/java/com/google/cloud/networkconnectivity/v1/HubServiceGrpc.java
@@ -538,7 +538,7 @@ public HubServiceFutureStub newStub(
    * through a simple, centralized connectivity management model.
    * 
*/ - public abstract static class HubServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -547,7 +547,7 @@ public abstract static class HubServiceImplBase implements io.grpc.BindableServi * Lists the Network Connectivity Center hubs associated with a given project. *
*/ - public void listHubs( + default void listHubs( com.google.cloud.networkconnectivity.v1.ListHubsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -561,7 +561,7 @@ public void listHubs( * Gets details about a Network Connectivity Center hub. *
*/ - public void getHub( + default void getHub( com.google.cloud.networkconnectivity.v1.GetHubRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetHubMethod(), responseObserver); @@ -574,7 +574,7 @@ public void getHub( * Creates a new Network Connectivity Center hub in the specified project. * */ - public void createHub( + default void createHub( com.google.cloud.networkconnectivity.v1.CreateHubRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getCreateHubMethod(), responseObserver); @@ -588,7 +588,7 @@ public void createHub( * hub. * */ - public void updateHub( + default void updateHub( com.google.cloud.networkconnectivity.v1.UpdateHubRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getUpdateHubMethod(), responseObserver); @@ -601,7 +601,7 @@ public void updateHub( * Deletes a Network Connectivity Center hub. * */ - public void deleteHub( + default void deleteHub( com.google.cloud.networkconnectivity.v1.DeleteHubRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getDeleteHubMethod(), responseObserver); @@ -615,7 +615,7 @@ public void deleteHub( * location. * */ - public void listSpokes( + default void listSpokes( com.google.cloud.networkconnectivity.v1.ListSpokesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -629,7 +629,7 @@ public void listSpokes( * Gets details about a Network Connectivity Center spoke. * */ - public void getSpoke( + default void getSpoke( com.google.cloud.networkconnectivity.v1.GetSpokeRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -643,7 +643,7 @@ public void getSpoke( * Creates a Network Connectivity Center spoke. * */ - public void createSpoke( + default void createSpoke( com.google.cloud.networkconnectivity.v1.CreateSpokeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -657,7 +657,7 @@ public void createSpoke( * Updates the parameters of a Network Connectivity Center spoke. * */ - public void updateSpoke( + default void updateSpoke( com.google.cloud.networkconnectivity.v1.UpdateSpokeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -671,84 +671,33 @@ public void updateSpoke( * Deletes a Network Connectivity Center spoke. * */ - public void deleteSpoke( + default void deleteSpoke( com.google.cloud.networkconnectivity.v1.DeleteSpokeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteSpokeMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service HubService. + * + *
+   * Network Connectivity Center is a hub-and-spoke abstraction for network
+   * connectivity management in Google Cloud. It reduces operational complexity
+   * through a simple, centralized connectivity management model.
+   * 
+ */ + public abstract static class HubServiceImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListHubsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.ListHubsRequest, - com.google.cloud.networkconnectivity.v1.ListHubsResponse>( - this, METHODID_LIST_HUBS))) - .addMethod( - getGetHubMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.GetHubRequest, - com.google.cloud.networkconnectivity.v1.Hub>(this, METHODID_GET_HUB))) - .addMethod( - getCreateHubMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.CreateHubRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_HUB))) - .addMethod( - getUpdateHubMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.UpdateHubRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_HUB))) - .addMethod( - getDeleteHubMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.DeleteHubRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_HUB))) - .addMethod( - getListSpokesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.ListSpokesRequest, - com.google.cloud.networkconnectivity.v1.ListSpokesResponse>( - this, METHODID_LIST_SPOKES))) - .addMethod( - getGetSpokeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.GetSpokeRequest, - com.google.cloud.networkconnectivity.v1.Spoke>(this, METHODID_GET_SPOKE))) - .addMethod( - getCreateSpokeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.CreateSpokeRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_SPOKE))) - .addMethod( - getUpdateSpokeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.UpdateSpokeRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_SPOKE))) - .addMethod( - getDeleteSpokeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1.DeleteSpokeRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_SPOKE))) - .build(); + return HubServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service HubService. * *
    * Network Connectivity Center is a hub-and-spoke abstraction for network
@@ -919,7 +868,7 @@ public void deleteSpoke(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service HubService.
    *
    * 
    * Network Connectivity Center is a hub-and-spoke abstraction for network
@@ -1073,7 +1022,7 @@ public com.google.longrunning.Operation deleteSpoke(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service HubService.
    *
    * 
    * Network Connectivity Center is a hub-and-spoke abstraction for network
@@ -1245,10 +1194,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final HubServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(HubServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1329,6 +1278,73 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListHubsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.ListHubsRequest,
+                    com.google.cloud.networkconnectivity.v1.ListHubsResponse>(
+                    service, METHODID_LIST_HUBS)))
+        .addMethod(
+            getGetHubMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.GetHubRequest,
+                    com.google.cloud.networkconnectivity.v1.Hub>(service, METHODID_GET_HUB)))
+        .addMethod(
+            getCreateHubMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.CreateHubRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_HUB)))
+        .addMethod(
+            getUpdateHubMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.UpdateHubRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_HUB)))
+        .addMethod(
+            getDeleteHubMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.DeleteHubRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_HUB)))
+        .addMethod(
+            getListSpokesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.ListSpokesRequest,
+                    com.google.cloud.networkconnectivity.v1.ListSpokesResponse>(
+                    service, METHODID_LIST_SPOKES)))
+        .addMethod(
+            getGetSpokeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.GetSpokeRequest,
+                    com.google.cloud.networkconnectivity.v1.Spoke>(service, METHODID_GET_SPOKE)))
+        .addMethod(
+            getCreateSpokeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.CreateSpokeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_SPOKE)))
+        .addMethod(
+            getUpdateSpokeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.UpdateSpokeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_SPOKE)))
+        .addMethod(
+            getDeleteSpokeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1.DeleteSpokeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_SPOKE)))
+        .build();
+  }
+
   private abstract static class HubServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-networkconnectivity/grpc-google-cloud-networkconnectivity-v1alpha1/src/main/java/com/google/cloud/networkconnectivity/v1alpha1/HubServiceGrpc.java b/java-networkconnectivity/grpc-google-cloud-networkconnectivity-v1alpha1/src/main/java/com/google/cloud/networkconnectivity/v1alpha1/HubServiceGrpc.java
index aae81be9d5c9..77c13dfdc9fb 100644
--- a/java-networkconnectivity/grpc-google-cloud-networkconnectivity-v1alpha1/src/main/java/com/google/cloud/networkconnectivity/v1alpha1/HubServiceGrpc.java
+++ b/java-networkconnectivity/grpc-google-cloud-networkconnectivity-v1alpha1/src/main/java/com/google/cloud/networkconnectivity/v1alpha1/HubServiceGrpc.java
@@ -542,7 +542,7 @@ public HubServiceFutureStub newStub(
    * model.
    * 
*/ - public abstract static class HubServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -551,7 +551,7 @@ public abstract static class HubServiceImplBase implements io.grpc.BindableServi * Lists Hubs in a given project and location. *
*/ - public void listHubs( + default void listHubs( com.google.cloud.networkconnectivity.v1alpha1.ListHubsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -565,7 +565,7 @@ public void listHubs( * Gets details of a single Hub. *
*/ - public void getHub( + default void getHub( com.google.cloud.networkconnectivity.v1alpha1.GetHubRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -579,7 +579,7 @@ public void getHub( * Creates a new Hub in a given project and location. * */ - public void createHub( + default void createHub( com.google.cloud.networkconnectivity.v1alpha1.CreateHubRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getCreateHubMethod(), responseObserver); @@ -592,7 +592,7 @@ public void createHub( * Updates the parameters of a single Hub. * */ - public void updateHub( + default void updateHub( com.google.cloud.networkconnectivity.v1alpha1.UpdateHubRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getUpdateHubMethod(), responseObserver); @@ -605,7 +605,7 @@ public void updateHub( * Deletes a single Hub. * */ - public void deleteHub( + default void deleteHub( com.google.cloud.networkconnectivity.v1alpha1.DeleteHubRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getDeleteHubMethod(), responseObserver); @@ -618,7 +618,7 @@ public void deleteHub( * Lists Spokes in a given project and location. * */ - public void listSpokes( + default void listSpokes( com.google.cloud.networkconnectivity.v1alpha1.ListSpokesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.networkconnectivity.v1alpha1.ListSpokesResponse> @@ -633,7 +633,7 @@ public void listSpokes( * Gets details of a single Spoke. * */ - public void getSpoke( + default void getSpoke( com.google.cloud.networkconnectivity.v1alpha1.GetSpokeRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -647,7 +647,7 @@ public void getSpoke( * Creates a new Spoke in a given project and location. * */ - public void createSpoke( + default void createSpoke( com.google.cloud.networkconnectivity.v1alpha1.CreateSpokeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -661,7 +661,7 @@ public void createSpoke( * Updates the parameters of a single Spoke. * */ - public void updateSpoke( + default void updateSpoke( com.google.cloud.networkconnectivity.v1alpha1.UpdateSpokeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -675,85 +675,34 @@ public void updateSpoke( * Deletes a single Spoke. * */ - public void deleteSpoke( + default void deleteSpoke( com.google.cloud.networkconnectivity.v1alpha1.DeleteSpokeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteSpokeMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service HubService. + * + *
+   * Network Connectivity Center is a hub-and-spoke abstraction for
+   * network connectivity management in Google Cloud. It reduces
+   * operational complexity through a simple, centralized connectivity management
+   * model.
+   * 
+ */ + public abstract static class HubServiceImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListHubsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.ListHubsRequest, - com.google.cloud.networkconnectivity.v1alpha1.ListHubsResponse>( - this, METHODID_LIST_HUBS))) - .addMethod( - getGetHubMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.GetHubRequest, - com.google.cloud.networkconnectivity.v1alpha1.Hub>(this, METHODID_GET_HUB))) - .addMethod( - getCreateHubMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.CreateHubRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_HUB))) - .addMethod( - getUpdateHubMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.UpdateHubRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_HUB))) - .addMethod( - getDeleteHubMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.DeleteHubRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_HUB))) - .addMethod( - getListSpokesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.ListSpokesRequest, - com.google.cloud.networkconnectivity.v1alpha1.ListSpokesResponse>( - this, METHODID_LIST_SPOKES))) - .addMethod( - getGetSpokeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.GetSpokeRequest, - com.google.cloud.networkconnectivity.v1alpha1.Spoke>( - this, METHODID_GET_SPOKE))) - .addMethod( - getCreateSpokeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.CreateSpokeRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_SPOKE))) - .addMethod( - getUpdateSpokeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.UpdateSpokeRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_SPOKE))) - .addMethod( - getDeleteSpokeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.networkconnectivity.v1alpha1.DeleteSpokeRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_SPOKE))) - .build(); + return HubServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service HubService. * *
    * Network Connectivity Center is a hub-and-spoke abstraction for
@@ -925,7 +874,7 @@ public void deleteSpoke(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service HubService.
    *
    * 
    * Network Connectivity Center is a hub-and-spoke abstraction for
@@ -1078,7 +1027,7 @@ public com.google.longrunning.Operation deleteSpoke(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service HubService.
    *
    * 
    * Network Connectivity Center is a hub-and-spoke abstraction for
@@ -1249,10 +1198,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final HubServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(HubServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1333,6 +1282,74 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListHubsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.ListHubsRequest,
+                    com.google.cloud.networkconnectivity.v1alpha1.ListHubsResponse>(
+                    service, METHODID_LIST_HUBS)))
+        .addMethod(
+            getGetHubMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.GetHubRequest,
+                    com.google.cloud.networkconnectivity.v1alpha1.Hub>(service, METHODID_GET_HUB)))
+        .addMethod(
+            getCreateHubMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.CreateHubRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_HUB)))
+        .addMethod(
+            getUpdateHubMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.UpdateHubRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_HUB)))
+        .addMethod(
+            getDeleteHubMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.DeleteHubRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_HUB)))
+        .addMethod(
+            getListSpokesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.ListSpokesRequest,
+                    com.google.cloud.networkconnectivity.v1alpha1.ListSpokesResponse>(
+                    service, METHODID_LIST_SPOKES)))
+        .addMethod(
+            getGetSpokeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.GetSpokeRequest,
+                    com.google.cloud.networkconnectivity.v1alpha1.Spoke>(
+                    service, METHODID_GET_SPOKE)))
+        .addMethod(
+            getCreateSpokeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.CreateSpokeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_SPOKE)))
+        .addMethod(
+            getUpdateSpokeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.UpdateSpokeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_SPOKE)))
+        .addMethod(
+            getDeleteSpokeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.networkconnectivity.v1alpha1.DeleteSpokeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_SPOKE)))
+        .build();
+  }
+
   private abstract static class HubServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-notebooks/README.md b/java-notebooks/README.md
index 4715f0d5c481..a9b49eebd574 100644
--- a/java-notebooks/README.md
+++ b/java-notebooks/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [AI Platform Notebooks][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the AI Platform Notebooks [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google AI Platform Notebooks.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-notebooks.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-notebooks&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-notebooks/1.11.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-notebooks/grpc-google-cloud-notebooks-v1/src/main/java/com/google/cloud/notebooks/v1/ManagedNotebookServiceGrpc.java b/java-notebooks/grpc-google-cloud-notebooks-v1/src/main/java/com/google/cloud/notebooks/v1/ManagedNotebookServiceGrpc.java
index bac16a032630..c456de5f03f7 100644
--- a/java-notebooks/grpc-google-cloud-notebooks-v1/src/main/java/com/google/cloud/notebooks/v1/ManagedNotebookServiceGrpc.java
+++ b/java-notebooks/grpc-google-cloud-notebooks-v1/src/main/java/com/google/cloud/notebooks/v1/ManagedNotebookServiceGrpc.java
@@ -660,7 +660,7 @@ public ManagedNotebookServiceFutureStub newStub(
    * API v1 service for Managed Notebooks.
    * 
*/ - public abstract static class ManagedNotebookServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -669,7 +669,7 @@ public abstract static class ManagedNotebookServiceImplBase implements io.grpc.B * Lists Runtimes in a given project and location. *
*/ - public void listRuntimes( + default void listRuntimes( com.google.cloud.notebooks.v1.ListRuntimesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -685,7 +685,7 @@ public void listRuntimes( * rather than zonal. *
*/ - public void getRuntime( + default void getRuntime( com.google.cloud.notebooks.v1.GetRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetRuntimeMethod(), responseObserver); @@ -698,7 +698,7 @@ public void getRuntime( * Creates a new Runtime in a given project and location. * */ - public void createRuntime( + default void createRuntime( com.google.cloud.notebooks.v1.CreateRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -712,7 +712,7 @@ public void createRuntime( * Update Notebook Runtime configuration. * */ - public void updateRuntime( + default void updateRuntime( com.google.cloud.notebooks.v1.UpdateRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -726,7 +726,7 @@ public void updateRuntime( * Deletes a single Runtime. * */ - public void deleteRuntime( + default void deleteRuntime( com.google.cloud.notebooks.v1.DeleteRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -744,7 +744,7 @@ public void deleteRuntime( * https://cloud.google.com/compute/docs/instances/suspend-resume-instance * */ - public void startRuntime( + default void startRuntime( com.google.cloud.notebooks.v1.StartRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -762,7 +762,7 @@ public void startRuntime( * https://cloud.google.com/compute/docs/instances/suspend-resume-instance * */ - public void stopRuntime( + default void stopRuntime( com.google.cloud.notebooks.v1.StopRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -776,7 +776,7 @@ public void stopRuntime( * Switch a Managed Notebook Runtime. * */ - public void switchRuntime( + default void switchRuntime( com.google.cloud.notebooks.v1.SwitchRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -790,7 +790,7 @@ public void switchRuntime( * Resets a Managed Notebook Runtime. * */ - public void resetRuntime( + default void resetRuntime( com.google.cloud.notebooks.v1.ResetRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -804,7 +804,7 @@ public void resetRuntime( * Upgrades a Managed Notebook Runtime to the latest version. * */ - public void upgradeRuntime( + default void upgradeRuntime( com.google.cloud.notebooks.v1.UpgradeRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -818,7 +818,7 @@ public void upgradeRuntime( * Report and process a runtime event. * */ - public void reportRuntimeEvent( + default void reportRuntimeEvent( com.google.cloud.notebooks.v1.ReportRuntimeEventRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -833,7 +833,7 @@ public void reportRuntimeEvent( * attached to the runtime. Only accessible from the tenant instance. * */ - public void refreshRuntimeTokenInternal( + default void refreshRuntimeTokenInternal( com.google.cloud.notebooks.v1.RefreshRuntimeTokenInternalRequest request, io.grpc.stub.StreamObserver< com.google.cloud.notebooks.v1.RefreshRuntimeTokenInternalResponse> @@ -849,102 +849,32 @@ public void refreshRuntimeTokenInternal( * Creates a Diagnostic File and runs Diagnostic Tool given a Runtime. * */ - public void diagnoseRuntime( + default void diagnoseRuntime( com.google.cloud.notebooks.v1.DiagnoseRuntimeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDiagnoseRuntimeMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ManagedNotebookService. + * + *
+   * API v1 service for Managed Notebooks.
+   * 
+ */ + public abstract static class ManagedNotebookServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListRuntimesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ListRuntimesRequest, - com.google.cloud.notebooks.v1.ListRuntimesResponse>( - this, METHODID_LIST_RUNTIMES))) - .addMethod( - getGetRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.GetRuntimeRequest, - com.google.cloud.notebooks.v1.Runtime>(this, METHODID_GET_RUNTIME))) - .addMethod( - getCreateRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.CreateRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_RUNTIME))) - .addMethod( - getUpdateRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.UpdateRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_RUNTIME))) - .addMethod( - getDeleteRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.DeleteRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_RUNTIME))) - .addMethod( - getStartRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.StartRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_START_RUNTIME))) - .addMethod( - getStopRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.StopRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_STOP_RUNTIME))) - .addMethod( - getSwitchRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.SwitchRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_SWITCH_RUNTIME))) - .addMethod( - getResetRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ResetRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_RESET_RUNTIME))) - .addMethod( - getUpgradeRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.UpgradeRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_UPGRADE_RUNTIME))) - .addMethod( - getReportRuntimeEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ReportRuntimeEventRequest, - com.google.longrunning.Operation>(this, METHODID_REPORT_RUNTIME_EVENT))) - .addMethod( - getRefreshRuntimeTokenInternalMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.RefreshRuntimeTokenInternalRequest, - com.google.cloud.notebooks.v1.RefreshRuntimeTokenInternalResponse>( - this, METHODID_REFRESH_RUNTIME_TOKEN_INTERNAL))) - .addMethod( - getDiagnoseRuntimeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.DiagnoseRuntimeRequest, - com.google.longrunning.Operation>(this, METHODID_DIAGNOSE_RUNTIME))) - .build(); + return ManagedNotebookServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ManagedNotebookService. * *
    * API v1 service for Managed Notebooks.
@@ -1183,7 +1113,7 @@ public void diagnoseRuntime(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ManagedNotebookService.
    *
    * 
    * API v1 service for Managed Notebooks.
@@ -1384,7 +1314,8 @@ public com.google.longrunning.Operation diagnoseRuntime(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service
+   * ManagedNotebookService.
    *
    * 
    * API v1 service for Managed Notebooks.
@@ -1605,10 +1536,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ManagedNotebookServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ManagedNotebookServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1702,6 +1633,91 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListRuntimesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ListRuntimesRequest,
+                    com.google.cloud.notebooks.v1.ListRuntimesResponse>(
+                    service, METHODID_LIST_RUNTIMES)))
+        .addMethod(
+            getGetRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.GetRuntimeRequest,
+                    com.google.cloud.notebooks.v1.Runtime>(service, METHODID_GET_RUNTIME)))
+        .addMethod(
+            getCreateRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.CreateRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_RUNTIME)))
+        .addMethod(
+            getUpdateRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.UpdateRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_RUNTIME)))
+        .addMethod(
+            getDeleteRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.DeleteRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_RUNTIME)))
+        .addMethod(
+            getStartRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.StartRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_START_RUNTIME)))
+        .addMethod(
+            getStopRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.StopRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_STOP_RUNTIME)))
+        .addMethod(
+            getSwitchRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.SwitchRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SWITCH_RUNTIME)))
+        .addMethod(
+            getResetRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ResetRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESET_RUNTIME)))
+        .addMethod(
+            getUpgradeRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.UpgradeRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPGRADE_RUNTIME)))
+        .addMethod(
+            getReportRuntimeEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ReportRuntimeEventRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REPORT_RUNTIME_EVENT)))
+        .addMethod(
+            getRefreshRuntimeTokenInternalMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.RefreshRuntimeTokenInternalRequest,
+                    com.google.cloud.notebooks.v1.RefreshRuntimeTokenInternalResponse>(
+                    service, METHODID_REFRESH_RUNTIME_TOKEN_INTERNAL)))
+        .addMethod(
+            getDiagnoseRuntimeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.DiagnoseRuntimeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DIAGNOSE_RUNTIME)))
+        .build();
+  }
+
   private abstract static class ManagedNotebookServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-notebooks/grpc-google-cloud-notebooks-v1/src/main/java/com/google/cloud/notebooks/v1/NotebookServiceGrpc.java b/java-notebooks/grpc-google-cloud-notebooks-v1/src/main/java/com/google/cloud/notebooks/v1/NotebookServiceGrpc.java
index 720d3c168839..dca4eea751b7 100644
--- a/java-notebooks/grpc-google-cloud-notebooks-v1/src/main/java/com/google/cloud/notebooks/v1/NotebookServiceGrpc.java
+++ b/java-notebooks/grpc-google-cloud-notebooks-v1/src/main/java/com/google/cloud/notebooks/v1/NotebookServiceGrpc.java
@@ -1629,7 +1629,7 @@ public NotebookServiceFutureStub newStub(
    * API v1 service for Cloud AI Platform Notebooks.
    * 
*/ - public abstract static class NotebookServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -1638,7 +1638,7 @@ public abstract static class NotebookServiceImplBase implements io.grpc.Bindable * Lists instances in a given project and location. *
*/ - public void listInstances( + default void listInstances( com.google.cloud.notebooks.v1.ListInstancesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1653,7 +1653,7 @@ public void listInstances( * Gets details of a single Instance. *
*/ - public void getInstance( + default void getInstance( com.google.cloud.notebooks.v1.GetInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1667,7 +1667,7 @@ public void getInstance( * Creates a new Instance in a given project and location. * */ - public void createInstance( + default void createInstance( com.google.cloud.notebooks.v1.CreateInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1684,7 +1684,7 @@ public void createInstance( * call makes these instances manageable by the Notebooks API. * */ - public void registerInstance( + default void registerInstance( com.google.cloud.notebooks.v1.RegisterInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1698,7 +1698,7 @@ public void registerInstance( * Updates the guest accelerators of a single Instance. * */ - public void setInstanceAccelerator( + default void setInstanceAccelerator( com.google.cloud.notebooks.v1.SetInstanceAcceleratorRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1712,7 +1712,7 @@ public void setInstanceAccelerator( * Updates the machine type of a single Instance. * */ - public void setInstanceMachineType( + default void setInstanceMachineType( com.google.cloud.notebooks.v1.SetInstanceMachineTypeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1726,7 +1726,7 @@ public void setInstanceMachineType( * Update Notebook Instance configurations. * */ - public void updateInstanceConfig( + default void updateInstanceConfig( com.google.cloud.notebooks.v1.UpdateInstanceConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1740,7 +1740,7 @@ public void updateInstanceConfig( * Updates the Shielded instance configuration of a single Instance. * */ - public void updateShieldedInstanceConfig( + default void updateShieldedInstanceConfig( com.google.cloud.notebooks.v1.UpdateShieldedInstanceConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1754,7 +1754,7 @@ public void updateShieldedInstanceConfig( * Replaces all the labels of an Instance. * */ - public void setInstanceLabels( + default void setInstanceLabels( com.google.cloud.notebooks.v1.SetInstanceLabelsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1768,7 +1768,7 @@ public void setInstanceLabels( * Add/update metadata items for an instance. * */ - public void updateInstanceMetadataItems( + default void updateInstanceMetadataItems( com.google.cloud.notebooks.v1.UpdateInstanceMetadataItemsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.notebooks.v1.UpdateInstanceMetadataItemsResponse> @@ -1784,7 +1784,7 @@ public void updateInstanceMetadataItems( * Deletes a single Instance. * */ - public void deleteInstance( + default void deleteInstance( com.google.cloud.notebooks.v1.DeleteInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1798,7 +1798,7 @@ public void deleteInstance( * Starts a notebook instance. * */ - public void startInstance( + default void startInstance( com.google.cloud.notebooks.v1.StartInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1812,7 +1812,7 @@ public void startInstance( * Stops a notebook instance. * */ - public void stopInstance( + default void stopInstance( com.google.cloud.notebooks.v1.StopInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1826,7 +1826,7 @@ public void stopInstance( * Resets a notebook instance. * */ - public void resetInstance( + default void resetInstance( com.google.cloud.notebooks.v1.ResetInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1843,7 +1843,7 @@ public void resetInstance( * the instance metadata store. Do not use this method directly. * */ - public void reportInstanceInfo( + default void reportInstanceInfo( com.google.cloud.notebooks.v1.ReportInstanceInfoRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1857,7 +1857,7 @@ public void reportInstanceInfo( * Check if a notebook instance is upgradable. * */ - public void isInstanceUpgradeable( + default void isInstanceUpgradeable( com.google.cloud.notebooks.v1.IsInstanceUpgradeableRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1872,7 +1872,7 @@ public void isInstanceUpgradeable( * Check if a notebook instance is healthy. * */ - public void getInstanceHealth( + default void getInstanceHealth( com.google.cloud.notebooks.v1.GetInstanceHealthRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1887,7 +1887,7 @@ public void getInstanceHealth( * Upgrades a notebook instance to the latest version. * */ - public void upgradeInstance( + default void upgradeInstance( com.google.cloud.notebooks.v1.UpgradeInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1901,7 +1901,7 @@ public void upgradeInstance( * Rollbacks a notebook instance to the previous version. * */ - public void rollbackInstance( + default void rollbackInstance( com.google.cloud.notebooks.v1.RollbackInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1915,7 +1915,7 @@ public void rollbackInstance( * Creates a Diagnostic File and runs Diagnostic Tool given an Instance. * */ - public void diagnoseInstance( + default void diagnoseInstance( com.google.cloud.notebooks.v1.DiagnoseInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1930,7 +1930,7 @@ public void diagnoseInstance( * call this endpoint to upgrade themselves. Do not use this method directly. * */ - public void upgradeInstanceInternal( + default void upgradeInstanceInternal( com.google.cloud.notebooks.v1.UpgradeInstanceInternalRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1944,7 +1944,7 @@ public void upgradeInstanceInternal( * Lists environments in a project. * */ - public void listEnvironments( + default void listEnvironments( com.google.cloud.notebooks.v1.ListEnvironmentsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1959,7 +1959,7 @@ public void listEnvironments( * Gets details of a single Environment. * */ - public void getEnvironment( + default void getEnvironment( com.google.cloud.notebooks.v1.GetEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1973,7 +1973,7 @@ public void getEnvironment( * Creates a new Environment. * */ - public void createEnvironment( + default void createEnvironment( com.google.cloud.notebooks.v1.CreateEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1987,7 +1987,7 @@ public void createEnvironment( * Deletes a single Environment. * */ - public void deleteEnvironment( + default void deleteEnvironment( com.google.cloud.notebooks.v1.DeleteEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2001,7 +2001,7 @@ public void deleteEnvironment( * Lists schedules in a given project and location. * */ - public void listSchedules( + default void listSchedules( com.google.cloud.notebooks.v1.ListSchedulesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2016,7 +2016,7 @@ public void listSchedules( * Gets details of schedule * */ - public void getSchedule( + default void getSchedule( com.google.cloud.notebooks.v1.GetScheduleRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2030,7 +2030,7 @@ public void getSchedule( * Deletes schedule and all underlying jobs * */ - public void deleteSchedule( + default void deleteSchedule( com.google.cloud.notebooks.v1.DeleteScheduleRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2044,7 +2044,7 @@ public void deleteSchedule( * Creates a new Scheduled Notebook in a given project and location. * */ - public void createSchedule( + default void createSchedule( com.google.cloud.notebooks.v1.CreateScheduleRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2058,7 +2058,7 @@ public void createSchedule( * Triggers execution of an existing schedule. * */ - public void triggerSchedule( + default void triggerSchedule( com.google.cloud.notebooks.v1.TriggerScheduleRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2072,7 +2072,7 @@ public void triggerSchedule( * Lists executions in a given project and location * */ - public void listExecutions( + default void listExecutions( com.google.cloud.notebooks.v1.ListExecutionsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2087,7 +2087,7 @@ public void listExecutions( * Gets details of executions * */ - public void getExecution( + default void getExecution( com.google.cloud.notebooks.v1.GetExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2101,7 +2101,7 @@ public void getExecution( * Deletes execution * */ - public void deleteExecution( + default void deleteExecution( com.google.cloud.notebooks.v1.DeleteExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2115,234 +2115,32 @@ public void deleteExecution( * Creates a new Execution in a given project and location. * */ - public void createExecution( + default void createExecution( com.google.cloud.notebooks.v1.CreateExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getCreateExecutionMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service NotebookService. + * + *
+   * API v1 service for Cloud AI Platform Notebooks.
+   * 
+ */ + public abstract static class NotebookServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListInstancesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ListInstancesRequest, - com.google.cloud.notebooks.v1.ListInstancesResponse>( - this, METHODID_LIST_INSTANCES))) - .addMethod( - getGetInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.GetInstanceRequest, - com.google.cloud.notebooks.v1.Instance>(this, METHODID_GET_INSTANCE))) - .addMethod( - getCreateInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.CreateInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_INSTANCE))) - .addMethod( - getRegisterInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.RegisterInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_REGISTER_INSTANCE))) - .addMethod( - getSetInstanceAcceleratorMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.SetInstanceAcceleratorRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INSTANCE_ACCELERATOR))) - .addMethod( - getSetInstanceMachineTypeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.SetInstanceMachineTypeRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INSTANCE_MACHINE_TYPE))) - .addMethod( - getUpdateInstanceConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.UpdateInstanceConfigRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_INSTANCE_CONFIG))) - .addMethod( - getUpdateShieldedInstanceConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.UpdateShieldedInstanceConfigRequest, - com.google.longrunning.Operation>( - this, METHODID_UPDATE_SHIELDED_INSTANCE_CONFIG))) - .addMethod( - getSetInstanceLabelsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.SetInstanceLabelsRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INSTANCE_LABELS))) - .addMethod( - getUpdateInstanceMetadataItemsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.UpdateInstanceMetadataItemsRequest, - com.google.cloud.notebooks.v1.UpdateInstanceMetadataItemsResponse>( - this, METHODID_UPDATE_INSTANCE_METADATA_ITEMS))) - .addMethod( - getDeleteInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.DeleteInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_INSTANCE))) - .addMethod( - getStartInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.StartInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_START_INSTANCE))) - .addMethod( - getStopInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.StopInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_STOP_INSTANCE))) - .addMethod( - getResetInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ResetInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_RESET_INSTANCE))) - .addMethod( - getReportInstanceInfoMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ReportInstanceInfoRequest, - com.google.longrunning.Operation>(this, METHODID_REPORT_INSTANCE_INFO))) - .addMethod( - getIsInstanceUpgradeableMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.IsInstanceUpgradeableRequest, - com.google.cloud.notebooks.v1.IsInstanceUpgradeableResponse>( - this, METHODID_IS_INSTANCE_UPGRADEABLE))) - .addMethod( - getGetInstanceHealthMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.GetInstanceHealthRequest, - com.google.cloud.notebooks.v1.GetInstanceHealthResponse>( - this, METHODID_GET_INSTANCE_HEALTH))) - .addMethod( - getUpgradeInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.UpgradeInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_UPGRADE_INSTANCE))) - .addMethod( - getRollbackInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.RollbackInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_ROLLBACK_INSTANCE))) - .addMethod( - getDiagnoseInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.DiagnoseInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_DIAGNOSE_INSTANCE))) - .addMethod( - getUpgradeInstanceInternalMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.UpgradeInstanceInternalRequest, - com.google.longrunning.Operation>(this, METHODID_UPGRADE_INSTANCE_INTERNAL))) - .addMethod( - getListEnvironmentsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ListEnvironmentsRequest, - com.google.cloud.notebooks.v1.ListEnvironmentsResponse>( - this, METHODID_LIST_ENVIRONMENTS))) - .addMethod( - getGetEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.GetEnvironmentRequest, - com.google.cloud.notebooks.v1.Environment>(this, METHODID_GET_ENVIRONMENT))) - .addMethod( - getCreateEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.CreateEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_ENVIRONMENT))) - .addMethod( - getDeleteEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.DeleteEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_ENVIRONMENT))) - .addMethod( - getListSchedulesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ListSchedulesRequest, - com.google.cloud.notebooks.v1.ListSchedulesResponse>( - this, METHODID_LIST_SCHEDULES))) - .addMethod( - getGetScheduleMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.GetScheduleRequest, - com.google.cloud.notebooks.v1.Schedule>(this, METHODID_GET_SCHEDULE))) - .addMethod( - getDeleteScheduleMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.DeleteScheduleRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_SCHEDULE))) - .addMethod( - getCreateScheduleMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.CreateScheduleRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_SCHEDULE))) - .addMethod( - getTriggerScheduleMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.TriggerScheduleRequest, - com.google.longrunning.Operation>(this, METHODID_TRIGGER_SCHEDULE))) - .addMethod( - getListExecutionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.ListExecutionsRequest, - com.google.cloud.notebooks.v1.ListExecutionsResponse>( - this, METHODID_LIST_EXECUTIONS))) - .addMethod( - getGetExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.GetExecutionRequest, - com.google.cloud.notebooks.v1.Execution>(this, METHODID_GET_EXECUTION))) - .addMethod( - getDeleteExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.DeleteExecutionRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_EXECUTION))) - .addMethod( - getCreateExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1.CreateExecutionRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_EXECUTION))) - .build(); + return NotebookServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service NotebookService. * *
    * API v1 service for Cloud AI Platform Notebooks.
@@ -2920,7 +2718,7 @@ public void createExecution(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service NotebookService.
    *
    * 
    * API v1 service for Cloud AI Platform Notebooks.
@@ -3390,7 +3188,7 @@ public com.google.longrunning.Operation createExecution(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service NotebookService.
    *
    * 
    * API v1 service for Cloud AI Platform Notebooks.
@@ -3914,10 +3712,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final NotebookServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(NotebookServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -4125,6 +3923,223 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListInstancesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ListInstancesRequest,
+                    com.google.cloud.notebooks.v1.ListInstancesResponse>(
+                    service, METHODID_LIST_INSTANCES)))
+        .addMethod(
+            getGetInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.GetInstanceRequest,
+                    com.google.cloud.notebooks.v1.Instance>(service, METHODID_GET_INSTANCE)))
+        .addMethod(
+            getCreateInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.CreateInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_INSTANCE)))
+        .addMethod(
+            getRegisterInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.RegisterInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REGISTER_INSTANCE)))
+        .addMethod(
+            getSetInstanceAcceleratorMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.SetInstanceAcceleratorRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INSTANCE_ACCELERATOR)))
+        .addMethod(
+            getSetInstanceMachineTypeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.SetInstanceMachineTypeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INSTANCE_MACHINE_TYPE)))
+        .addMethod(
+            getUpdateInstanceConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.UpdateInstanceConfigRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_INSTANCE_CONFIG)))
+        .addMethod(
+            getUpdateShieldedInstanceConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.UpdateShieldedInstanceConfigRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_UPDATE_SHIELDED_INSTANCE_CONFIG)))
+        .addMethod(
+            getSetInstanceLabelsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.SetInstanceLabelsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INSTANCE_LABELS)))
+        .addMethod(
+            getUpdateInstanceMetadataItemsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.UpdateInstanceMetadataItemsRequest,
+                    com.google.cloud.notebooks.v1.UpdateInstanceMetadataItemsResponse>(
+                    service, METHODID_UPDATE_INSTANCE_METADATA_ITEMS)))
+        .addMethod(
+            getDeleteInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.DeleteInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_INSTANCE)))
+        .addMethod(
+            getStartInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.StartInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_START_INSTANCE)))
+        .addMethod(
+            getStopInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.StopInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_STOP_INSTANCE)))
+        .addMethod(
+            getResetInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ResetInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESET_INSTANCE)))
+        .addMethod(
+            getReportInstanceInfoMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ReportInstanceInfoRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REPORT_INSTANCE_INFO)))
+        .addMethod(
+            getIsInstanceUpgradeableMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.IsInstanceUpgradeableRequest,
+                    com.google.cloud.notebooks.v1.IsInstanceUpgradeableResponse>(
+                    service, METHODID_IS_INSTANCE_UPGRADEABLE)))
+        .addMethod(
+            getGetInstanceHealthMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.GetInstanceHealthRequest,
+                    com.google.cloud.notebooks.v1.GetInstanceHealthResponse>(
+                    service, METHODID_GET_INSTANCE_HEALTH)))
+        .addMethod(
+            getUpgradeInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.UpgradeInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPGRADE_INSTANCE)))
+        .addMethod(
+            getRollbackInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.RollbackInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_ROLLBACK_INSTANCE)))
+        .addMethod(
+            getDiagnoseInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.DiagnoseInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DIAGNOSE_INSTANCE)))
+        .addMethod(
+            getUpgradeInstanceInternalMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.UpgradeInstanceInternalRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPGRADE_INSTANCE_INTERNAL)))
+        .addMethod(
+            getListEnvironmentsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ListEnvironmentsRequest,
+                    com.google.cloud.notebooks.v1.ListEnvironmentsResponse>(
+                    service, METHODID_LIST_ENVIRONMENTS)))
+        .addMethod(
+            getGetEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.GetEnvironmentRequest,
+                    com.google.cloud.notebooks.v1.Environment>(service, METHODID_GET_ENVIRONMENT)))
+        .addMethod(
+            getCreateEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.CreateEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_ENVIRONMENT)))
+        .addMethod(
+            getDeleteEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.DeleteEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_ENVIRONMENT)))
+        .addMethod(
+            getListSchedulesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ListSchedulesRequest,
+                    com.google.cloud.notebooks.v1.ListSchedulesResponse>(
+                    service, METHODID_LIST_SCHEDULES)))
+        .addMethod(
+            getGetScheduleMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.GetScheduleRequest,
+                    com.google.cloud.notebooks.v1.Schedule>(service, METHODID_GET_SCHEDULE)))
+        .addMethod(
+            getDeleteScheduleMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.DeleteScheduleRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_SCHEDULE)))
+        .addMethod(
+            getCreateScheduleMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.CreateScheduleRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_SCHEDULE)))
+        .addMethod(
+            getTriggerScheduleMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.TriggerScheduleRequest,
+                    com.google.longrunning.Operation>(service, METHODID_TRIGGER_SCHEDULE)))
+        .addMethod(
+            getListExecutionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.ListExecutionsRequest,
+                    com.google.cloud.notebooks.v1.ListExecutionsResponse>(
+                    service, METHODID_LIST_EXECUTIONS)))
+        .addMethod(
+            getGetExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.GetExecutionRequest,
+                    com.google.cloud.notebooks.v1.Execution>(service, METHODID_GET_EXECUTION)))
+        .addMethod(
+            getDeleteExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.DeleteExecutionRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_EXECUTION)))
+        .addMethod(
+            getCreateExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1.CreateExecutionRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_EXECUTION)))
+        .build();
+  }
+
   private abstract static class NotebookServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-notebooks/grpc-google-cloud-notebooks-v1beta1/src/main/java/com/google/cloud/notebooks/v1beta1/NotebookServiceGrpc.java b/java-notebooks/grpc-google-cloud-notebooks-v1beta1/src/main/java/com/google/cloud/notebooks/v1beta1/NotebookServiceGrpc.java
index eb0fea688128..adb6020a5b33 100644
--- a/java-notebooks/grpc-google-cloud-notebooks-v1beta1/src/main/java/com/google/cloud/notebooks/v1beta1/NotebookServiceGrpc.java
+++ b/java-notebooks/grpc-google-cloud-notebooks-v1beta1/src/main/java/com/google/cloud/notebooks/v1beta1/NotebookServiceGrpc.java
@@ -968,7 +968,7 @@ public NotebookServiceFutureStub newStub(
    * API v1beta1 service for Cloud AI Platform Notebooks.
    * 
*/ - public abstract static class NotebookServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -977,7 +977,7 @@ public abstract static class NotebookServiceImplBase implements io.grpc.Bindable * Lists instances in a given project and location. *
*/ - public void listInstances( + default void listInstances( com.google.cloud.notebooks.v1beta1.ListInstancesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -992,7 +992,7 @@ public void listInstances( * Gets details of a single Instance. *
*/ - public void getInstance( + default void getInstance( com.google.cloud.notebooks.v1beta1.GetInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1006,7 +1006,7 @@ public void getInstance( * Creates a new Instance in a given project and location. * */ - public void createInstance( + default void createInstance( com.google.cloud.notebooks.v1beta1.CreateInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1023,7 +1023,7 @@ public void createInstance( * call makes these instances manageable by the Notebooks API. * */ - public void registerInstance( + default void registerInstance( com.google.cloud.notebooks.v1beta1.RegisterInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1037,7 +1037,7 @@ public void registerInstance( * Updates the guest accelerators of a single Instance. * */ - public void setInstanceAccelerator( + default void setInstanceAccelerator( com.google.cloud.notebooks.v1beta1.SetInstanceAcceleratorRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1051,7 +1051,7 @@ public void setInstanceAccelerator( * Updates the machine type of a single Instance. * */ - public void setInstanceMachineType( + default void setInstanceMachineType( com.google.cloud.notebooks.v1beta1.SetInstanceMachineTypeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1065,7 +1065,7 @@ public void setInstanceMachineType( * Updates the labels of an Instance. * */ - public void setInstanceLabels( + default void setInstanceLabels( com.google.cloud.notebooks.v1beta1.SetInstanceLabelsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1079,7 +1079,7 @@ public void setInstanceLabels( * Deletes a single Instance. * */ - public void deleteInstance( + default void deleteInstance( com.google.cloud.notebooks.v1beta1.DeleteInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1093,7 +1093,7 @@ public void deleteInstance( * Starts a notebook instance. * */ - public void startInstance( + default void startInstance( com.google.cloud.notebooks.v1beta1.StartInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1107,7 +1107,7 @@ public void startInstance( * Stops a notebook instance. * */ - public void stopInstance( + default void stopInstance( com.google.cloud.notebooks.v1beta1.StopInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1121,7 +1121,7 @@ public void stopInstance( * Resets a notebook instance. * */ - public void resetInstance( + default void resetInstance( com.google.cloud.notebooks.v1beta1.ResetInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1138,7 +1138,7 @@ public void resetInstance( * the instance metadata store. Do not use this method directly. * */ - public void reportInstanceInfo( + default void reportInstanceInfo( com.google.cloud.notebooks.v1beta1.ReportInstanceInfoRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1154,7 +1154,7 @@ public void reportInstanceInfo( * */ @java.lang.Deprecated - public void isInstanceUpgradeable( + default void isInstanceUpgradeable( com.google.cloud.notebooks.v1beta1.IsInstanceUpgradeableRequest request, io.grpc.stub.StreamObserver< com.google.cloud.notebooks.v1beta1.IsInstanceUpgradeableResponse> @@ -1172,7 +1172,7 @@ public void isInstanceUpgradeable( * */ @java.lang.Deprecated - public void upgradeInstance( + default void upgradeInstance( com.google.cloud.notebooks.v1beta1.UpgradeInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1189,7 +1189,7 @@ public void upgradeInstance( * */ @java.lang.Deprecated - public void upgradeInstanceInternal( + default void upgradeInstanceInternal( com.google.cloud.notebooks.v1beta1.UpgradeInstanceInternalRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1203,7 +1203,7 @@ public void upgradeInstanceInternal( * Lists environments in a project. * */ - public void listEnvironments( + default void listEnvironments( com.google.cloud.notebooks.v1beta1.ListEnvironmentsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1218,7 +1218,7 @@ public void listEnvironments( * Gets details of a single Environment. * */ - public void getEnvironment( + default void getEnvironment( com.google.cloud.notebooks.v1beta1.GetEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1233,7 +1233,7 @@ public void getEnvironment( * Creates a new Environment. * */ - public void createEnvironment( + default void createEnvironment( com.google.cloud.notebooks.v1beta1.CreateEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1247,140 +1247,32 @@ public void createEnvironment( * Deletes a single Environment. * */ - public void deleteEnvironment( + default void deleteEnvironment( com.google.cloud.notebooks.v1beta1.DeleteEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteEnvironmentMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service NotebookService. + * + *
+   * API v1beta1 service for Cloud AI Platform Notebooks.
+   * 
+ */ + public abstract static class NotebookServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListInstancesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.ListInstancesRequest, - com.google.cloud.notebooks.v1beta1.ListInstancesResponse>( - this, METHODID_LIST_INSTANCES))) - .addMethod( - getGetInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.GetInstanceRequest, - com.google.cloud.notebooks.v1beta1.Instance>(this, METHODID_GET_INSTANCE))) - .addMethod( - getCreateInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.CreateInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_INSTANCE))) - .addMethod( - getRegisterInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.RegisterInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_REGISTER_INSTANCE))) - .addMethod( - getSetInstanceAcceleratorMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.SetInstanceAcceleratorRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INSTANCE_ACCELERATOR))) - .addMethod( - getSetInstanceMachineTypeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.SetInstanceMachineTypeRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INSTANCE_MACHINE_TYPE))) - .addMethod( - getSetInstanceLabelsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.SetInstanceLabelsRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INSTANCE_LABELS))) - .addMethod( - getDeleteInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.DeleteInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_INSTANCE))) - .addMethod( - getStartInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.StartInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_START_INSTANCE))) - .addMethod( - getStopInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.StopInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_STOP_INSTANCE))) - .addMethod( - getResetInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.ResetInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_RESET_INSTANCE))) - .addMethod( - getReportInstanceInfoMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.ReportInstanceInfoRequest, - com.google.longrunning.Operation>(this, METHODID_REPORT_INSTANCE_INFO))) - .addMethod( - getIsInstanceUpgradeableMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.IsInstanceUpgradeableRequest, - com.google.cloud.notebooks.v1beta1.IsInstanceUpgradeableResponse>( - this, METHODID_IS_INSTANCE_UPGRADEABLE))) - .addMethod( - getUpgradeInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.UpgradeInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_UPGRADE_INSTANCE))) - .addMethod( - getUpgradeInstanceInternalMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.UpgradeInstanceInternalRequest, - com.google.longrunning.Operation>(this, METHODID_UPGRADE_INSTANCE_INTERNAL))) - .addMethod( - getListEnvironmentsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.ListEnvironmentsRequest, - com.google.cloud.notebooks.v1beta1.ListEnvironmentsResponse>( - this, METHODID_LIST_ENVIRONMENTS))) - .addMethod( - getGetEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.GetEnvironmentRequest, - com.google.cloud.notebooks.v1beta1.Environment>( - this, METHODID_GET_ENVIRONMENT))) - .addMethod( - getCreateEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.CreateEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_ENVIRONMENT))) - .addMethod( - getDeleteEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.notebooks.v1beta1.DeleteEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_ENVIRONMENT))) - .build(); + return NotebookServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service NotebookService. * *
    * API v1beta1 service for Cloud AI Platform Notebooks.
@@ -1721,7 +1613,7 @@ public void deleteEnvironment(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service NotebookService.
    *
    * 
    * API v1beta1 service for Cloud AI Platform Notebooks.
@@ -2001,7 +1893,7 @@ public com.google.longrunning.Operation deleteEnvironment(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service NotebookService.
    *
    * 
    * API v1beta1 service for Cloud AI Platform Notebooks.
@@ -2314,10 +2206,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final NotebookServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(NotebookServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2445,6 +2337,129 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListInstancesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.ListInstancesRequest,
+                    com.google.cloud.notebooks.v1beta1.ListInstancesResponse>(
+                    service, METHODID_LIST_INSTANCES)))
+        .addMethod(
+            getGetInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.GetInstanceRequest,
+                    com.google.cloud.notebooks.v1beta1.Instance>(service, METHODID_GET_INSTANCE)))
+        .addMethod(
+            getCreateInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.CreateInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_INSTANCE)))
+        .addMethod(
+            getRegisterInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.RegisterInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REGISTER_INSTANCE)))
+        .addMethod(
+            getSetInstanceAcceleratorMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.SetInstanceAcceleratorRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INSTANCE_ACCELERATOR)))
+        .addMethod(
+            getSetInstanceMachineTypeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.SetInstanceMachineTypeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INSTANCE_MACHINE_TYPE)))
+        .addMethod(
+            getSetInstanceLabelsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.SetInstanceLabelsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INSTANCE_LABELS)))
+        .addMethod(
+            getDeleteInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.DeleteInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_INSTANCE)))
+        .addMethod(
+            getStartInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.StartInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_START_INSTANCE)))
+        .addMethod(
+            getStopInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.StopInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_STOP_INSTANCE)))
+        .addMethod(
+            getResetInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.ResetInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESET_INSTANCE)))
+        .addMethod(
+            getReportInstanceInfoMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.ReportInstanceInfoRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REPORT_INSTANCE_INFO)))
+        .addMethod(
+            getIsInstanceUpgradeableMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.IsInstanceUpgradeableRequest,
+                    com.google.cloud.notebooks.v1beta1.IsInstanceUpgradeableResponse>(
+                    service, METHODID_IS_INSTANCE_UPGRADEABLE)))
+        .addMethod(
+            getUpgradeInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.UpgradeInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPGRADE_INSTANCE)))
+        .addMethod(
+            getUpgradeInstanceInternalMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.UpgradeInstanceInternalRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPGRADE_INSTANCE_INTERNAL)))
+        .addMethod(
+            getListEnvironmentsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.ListEnvironmentsRequest,
+                    com.google.cloud.notebooks.v1beta1.ListEnvironmentsResponse>(
+                    service, METHODID_LIST_ENVIRONMENTS)))
+        .addMethod(
+            getGetEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.GetEnvironmentRequest,
+                    com.google.cloud.notebooks.v1beta1.Environment>(
+                    service, METHODID_GET_ENVIRONMENT)))
+        .addMethod(
+            getCreateEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.CreateEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_ENVIRONMENT)))
+        .addMethod(
+            getDeleteEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.notebooks.v1beta1.DeleteEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_ENVIRONMENT)))
+        .build();
+  }
+
   private abstract static class NotebookServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-optimization/README.md b/java-optimization/README.md
index c841f25f07bc..8b2a5c316c60 100644
--- a/java-optimization/README.md
+++ b/java-optimization/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud Fleet Routing][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Fleet Routing [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud Fleet Routing.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-optimization.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-optimization&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-optimization/1.11.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-optimization/grpc-google-cloud-optimization-v1/src/main/java/com/google/cloud/optimization/v1/FleetRoutingGrpc.java b/java-optimization/grpc-google-cloud-optimization-v1/src/main/java/com/google/cloud/optimization/v1/FleetRoutingGrpc.java
index 6383e2eb7c4a..0c64074e87a4 100644
--- a/java-optimization/grpc-google-cloud-optimization-v1/src/main/java/com/google/cloud/optimization/v1/FleetRoutingGrpc.java
+++ b/java-optimization/grpc-google-cloud-optimization-v1/src/main/java/com/google/cloud/optimization/v1/FleetRoutingGrpc.java
@@ -204,7 +204,7 @@ public FleetRoutingFutureStub newStub(
    *     * at least one of latitude and longitude must be non-zero.
    * 
*/ - public abstract static class FleetRoutingImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -224,7 +224,7 @@ public abstract static class FleetRoutingImplBase implements io.grpc.BindableSer * `ShipmentModel`. *
*/ - public void optimizeTours( + default void optimizeTours( com.google.cloud.optimization.v1.OptimizeToursRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -247,35 +247,46 @@ public void optimizeTours( * vehicles minimizing the overall cost. *
*/ - public void batchOptimizeTours( + default void batchOptimizeTours( com.google.cloud.optimization.v1.BatchOptimizeToursRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getBatchOptimizeToursMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service FleetRouting. + * + *
+   * A service for optimizing vehicle tours.
+   * Validity of certain types of fields:
+   *   * `google.protobuf.Timestamp`
+   *     * Times are in Unix time: seconds since 1970-01-01T00:00:00+00:00.
+   *     * seconds must be in [0, 253402300799],
+   *       i.e. in [1970-01-01T00:00:00+00:00, 9999-12-31T23:59:59+00:00].
+   *     * nanos must be unset or set to 0.
+   *   * `google.protobuf.Duration`
+   *     * seconds must be in [0, 253402300799],
+   *       i.e. in [1970-01-01T00:00:00+00:00, 9999-12-31T23:59:59+00:00].
+   *     * nanos must be unset or set to 0.
+   *   * `google.type.LatLng`
+   *     * latitude must be in [-90.0, 90.0].
+   *     * longitude must be in [-180.0, 180.0].
+   *     * at least one of latitude and longitude must be non-zero.
+   * 
+ */ + public abstract static class FleetRoutingImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getOptimizeToursMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.optimization.v1.OptimizeToursRequest, - com.google.cloud.optimization.v1.OptimizeToursResponse>( - this, METHODID_OPTIMIZE_TOURS))) - .addMethod( - getBatchOptimizeToursMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.optimization.v1.BatchOptimizeToursRequest, - com.google.longrunning.Operation>(this, METHODID_BATCH_OPTIMIZE_TOURS))) - .build(); + return FleetRoutingGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service FleetRouting. * *
    * A service for optimizing vehicle tours.
@@ -360,7 +371,7 @@ public void batchOptimizeTours(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service FleetRouting.
    *
    * 
    * A service for optimizing vehicle tours.
@@ -439,7 +450,7 @@ public com.google.longrunning.Operation batchOptimizeTours(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service FleetRouting.
    *
    * 
    * A service for optimizing vehicle tours.
@@ -526,10 +537,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final FleetRoutingImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(FleetRoutingImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -565,6 +576,24 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getOptimizeToursMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.optimization.v1.OptimizeToursRequest,
+                    com.google.cloud.optimization.v1.OptimizeToursResponse>(
+                    service, METHODID_OPTIMIZE_TOURS)))
+        .addMethod(
+            getBatchOptimizeToursMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.optimization.v1.BatchOptimizeToursRequest,
+                    com.google.longrunning.Operation>(service, METHODID_BATCH_OPTIMIZE_TOURS)))
+        .build();
+  }
+
   private abstract static class FleetRoutingBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-orchestration-airflow/README.md b/java-orchestration-airflow/README.md
index 72480261e5e7..e62c85670944 100644
--- a/java-orchestration-airflow/README.md
+++ b/java-orchestration-airflow/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud Composer][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Composer [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud Composer.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-orchestration-airflow.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-orchestration-airflow&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-orchestration-airflow/1.13.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1/src/main/java/com/google/cloud/orchestration/airflow/service/v1/EnvironmentsGrpc.java b/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1/src/main/java/com/google/cloud/orchestration/airflow/service/v1/EnvironmentsGrpc.java
index 5c0f51281f9d..cf88548a4682 100644
--- a/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1/src/main/java/com/google/cloud/orchestration/airflow/service/v1/EnvironmentsGrpc.java
+++ b/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1/src/main/java/com/google/cloud/orchestration/airflow/service/v1/EnvironmentsGrpc.java
@@ -411,7 +411,7 @@ public EnvironmentsFutureStub newStub(
    * Managed Apache Airflow Environments.
    * 
*/ - public abstract static class EnvironmentsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -420,7 +420,7 @@ public abstract static class EnvironmentsImplBase implements io.grpc.BindableSer * Create a new environment. *
*/ - public void createEnvironment( + default void createEnvironment( com.google.cloud.orchestration.airflow.service.v1.CreateEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -434,7 +434,7 @@ public void createEnvironment( * Get an existing environment. *
*/ - public void getEnvironment( + default void getEnvironment( com.google.cloud.orchestration.airflow.service.v1.GetEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -449,7 +449,7 @@ public void getEnvironment( * List environments. * */ - public void listEnvironments( + default void listEnvironments( com.google.cloud.orchestration.airflow.service.v1.ListEnvironmentsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.orchestration.airflow.service.v1.ListEnvironmentsResponse> @@ -465,7 +465,7 @@ public void listEnvironments( * Update an environment. * */ - public void updateEnvironment( + default void updateEnvironment( com.google.cloud.orchestration.airflow.service.v1.UpdateEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -479,7 +479,7 @@ public void updateEnvironment( * Delete an environment. * */ - public void deleteEnvironment( + default void deleteEnvironment( com.google.cloud.orchestration.airflow.service.v1.DeleteEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -495,7 +495,7 @@ public void deleteEnvironment( * in a location specified in the SaveSnapshotRequest. * */ - public void saveSnapshot( + default void saveSnapshot( com.google.cloud.orchestration.airflow.service.v1.SaveSnapshotRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -511,66 +511,32 @@ public void saveSnapshot( * LoadSnapshotRequest is loaded into the environment. * */ - public void loadSnapshot( + default void loadSnapshot( com.google.cloud.orchestration.airflow.service.v1.LoadSnapshotRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getLoadSnapshotMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Environments. + * + *
+   * Managed Apache Airflow Environments.
+   * 
+ */ + public abstract static class EnvironmentsImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1.CreateEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_ENVIRONMENT))) - .addMethod( - getGetEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1.GetEnvironmentRequest, - com.google.cloud.orchestration.airflow.service.v1.Environment>( - this, METHODID_GET_ENVIRONMENT))) - .addMethod( - getListEnvironmentsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1.ListEnvironmentsRequest, - com.google.cloud.orchestration.airflow.service.v1.ListEnvironmentsResponse>( - this, METHODID_LIST_ENVIRONMENTS))) - .addMethod( - getUpdateEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1.UpdateEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_ENVIRONMENT))) - .addMethod( - getDeleteEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1.DeleteEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_ENVIRONMENT))) - .addMethod( - getSaveSnapshotMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1.SaveSnapshotRequest, - com.google.longrunning.Operation>(this, METHODID_SAVE_SNAPSHOT))) - .addMethod( - getLoadSnapshotMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1.LoadSnapshotRequest, - com.google.longrunning.Operation>(this, METHODID_LOAD_SNAPSHOT))) - .build(); + return EnvironmentsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Environments. * *
    * Managed Apache Airflow Environments.
@@ -708,7 +674,7 @@ public void loadSnapshot(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Environments.
    *
    * 
    * Managed Apache Airflow Environments.
@@ -824,7 +790,7 @@ public com.google.longrunning.Operation loadSnapshot(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Environments.
    *
    * 
    * Managed Apache Airflow Environments.
@@ -960,10 +926,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final EnvironmentsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(EnvironmentsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1027,6 +993,55 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1.CreateEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_ENVIRONMENT)))
+        .addMethod(
+            getGetEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1.GetEnvironmentRequest,
+                    com.google.cloud.orchestration.airflow.service.v1.Environment>(
+                    service, METHODID_GET_ENVIRONMENT)))
+        .addMethod(
+            getListEnvironmentsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1.ListEnvironmentsRequest,
+                    com.google.cloud.orchestration.airflow.service.v1.ListEnvironmentsResponse>(
+                    service, METHODID_LIST_ENVIRONMENTS)))
+        .addMethod(
+            getUpdateEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1.UpdateEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_ENVIRONMENT)))
+        .addMethod(
+            getDeleteEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1.DeleteEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_ENVIRONMENT)))
+        .addMethod(
+            getSaveSnapshotMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1.SaveSnapshotRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SAVE_SNAPSHOT)))
+        .addMethod(
+            getLoadSnapshotMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1.LoadSnapshotRequest,
+                    com.google.longrunning.Operation>(service, METHODID_LOAD_SNAPSHOT)))
+        .build();
+  }
+
   private abstract static class EnvironmentsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1/src/main/java/com/google/cloud/orchestration/airflow/service/v1/ImageVersionsGrpc.java b/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1/src/main/java/com/google/cloud/orchestration/airflow/service/v1/ImageVersionsGrpc.java
index aeb05ccd9882..a1bf094c55b8 100644
--- a/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1/src/main/java/com/google/cloud/orchestration/airflow/service/v1/ImageVersionsGrpc.java
+++ b/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1/src/main/java/com/google/cloud/orchestration/airflow/service/v1/ImageVersionsGrpc.java
@@ -134,7 +134,7 @@ public ImageVersionsFutureStub newStub(
    * Readonly service to query available ImageVersions.
    * 
*/ - public abstract static class ImageVersionsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -143,7 +143,7 @@ public abstract static class ImageVersionsImplBase implements io.grpc.BindableSe * List ImageVersions for provided location. *
*/ - public void listImageVersions( + default void listImageVersions( com.google.cloud.orchestration.airflow.service.v1.ListImageVersionsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.orchestration.airflow.service.v1.ListImageVersionsResponse> @@ -151,23 +151,26 @@ public void listImageVersions( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListImageVersionsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ImageVersions. + * + *
+   * Readonly service to query available ImageVersions.
+   * 
+ */ + public abstract static class ImageVersionsImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListImageVersionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1.ListImageVersionsRequest, - com.google.cloud.orchestration.airflow.service.v1.ListImageVersionsResponse>( - this, METHODID_LIST_IMAGE_VERSIONS))) - .build(); + return ImageVersionsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ImageVersions. * *
    * Readonly service to query available ImageVersions.
@@ -204,7 +207,7 @@ public void listImageVersions(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ImageVersions.
    *
    * 
    * Readonly service to query available ImageVersions.
@@ -238,7 +241,7 @@ protected ImageVersionsBlockingStub build(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ImageVersions.
    *
    * 
    * Readonly service to query available ImageVersions.
@@ -279,10 +282,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ImageVersionsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ImageVersionsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -314,6 +317,18 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListImageVersionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1.ListImageVersionsRequest,
+                    com.google.cloud.orchestration.airflow.service.v1.ListImageVersionsResponse>(
+                    service, METHODID_LIST_IMAGE_VERSIONS)))
+        .build();
+  }
+
   private abstract static class ImageVersionsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1beta1/src/main/java/com/google/cloud/orchestration/airflow/service/v1beta1/EnvironmentsGrpc.java b/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1beta1/src/main/java/com/google/cloud/orchestration/airflow/service/v1beta1/EnvironmentsGrpc.java
index a8c3839c4974..4c6e26595b20 100644
--- a/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1beta1/src/main/java/com/google/cloud/orchestration/airflow/service/v1beta1/EnvironmentsGrpc.java
+++ b/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1beta1/src/main/java/com/google/cloud/orchestration/airflow/service/v1beta1/EnvironmentsGrpc.java
@@ -514,7 +514,7 @@ public EnvironmentsFutureStub newStub(
    * Managed Apache Airflow Environments.
    * 
*/ - public abstract static class EnvironmentsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -523,7 +523,7 @@ public abstract static class EnvironmentsImplBase implements io.grpc.BindableSer * Create a new environment. *
*/ - public void createEnvironment( + default void createEnvironment( com.google.cloud.orchestration.airflow.service.v1beta1.CreateEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -537,7 +537,7 @@ public void createEnvironment( * Get an existing environment. *
*/ - public void getEnvironment( + default void getEnvironment( com.google.cloud.orchestration.airflow.service.v1beta1.GetEnvironmentRequest request, io.grpc.stub.StreamObserver< com.google.cloud.orchestration.airflow.service.v1beta1.Environment> @@ -553,7 +553,7 @@ public void getEnvironment( * List environments. *
*/ - public void listEnvironments( + default void listEnvironments( com.google.cloud.orchestration.airflow.service.v1beta1.ListEnvironmentsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.orchestration.airflow.service.v1beta1.ListEnvironmentsResponse> @@ -569,7 +569,7 @@ public void listEnvironments( * Update an environment. * */ - public void updateEnvironment( + default void updateEnvironment( com.google.cloud.orchestration.airflow.service.v1beta1.UpdateEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -583,7 +583,7 @@ public void updateEnvironment( * Delete an environment. * */ - public void deleteEnvironment( + default void deleteEnvironment( com.google.cloud.orchestration.airflow.service.v1beta1.DeleteEnvironmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -597,7 +597,7 @@ public void deleteEnvironment( * Restart Airflow web server. * */ - public void restartWebServer( + default void restartWebServer( com.google.cloud.orchestration.airflow.service.v1beta1.RestartWebServerRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -612,7 +612,7 @@ public void restartWebServer( * In case of problems detailed info can be found in the returned Operation. * */ - public void checkUpgrade( + default void checkUpgrade( com.google.cloud.orchestration.airflow.service.v1beta1.CheckUpgradeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -628,7 +628,7 @@ public void checkUpgrade( * in a location specified in the SaveSnapshotRequest. * */ - public void saveSnapshot( + default void saveSnapshot( com.google.cloud.orchestration.airflow.service.v1beta1.SaveSnapshotRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -644,83 +644,32 @@ public void saveSnapshot( * LoadSnapshotRequest is loaded into the environment. * */ - public void loadSnapshot( + default void loadSnapshot( com.google.cloud.orchestration.airflow.service.v1beta1.LoadSnapshotRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getLoadSnapshotMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Environments. + * + *
+   * Managed Apache Airflow Environments.
+   * 
+ */ + public abstract static class EnvironmentsImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1 - .CreateEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_ENVIRONMENT))) - .addMethod( - getGetEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1.GetEnvironmentRequest, - com.google.cloud.orchestration.airflow.service.v1beta1.Environment>( - this, METHODID_GET_ENVIRONMENT))) - .addMethod( - getListEnvironmentsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1 - .ListEnvironmentsRequest, - com.google.cloud.orchestration.airflow.service.v1beta1 - .ListEnvironmentsResponse>(this, METHODID_LIST_ENVIRONMENTS))) - .addMethod( - getUpdateEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1 - .UpdateEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_ENVIRONMENT))) - .addMethod( - getDeleteEnvironmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1 - .DeleteEnvironmentRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_ENVIRONMENT))) - .addMethod( - getRestartWebServerMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1 - .RestartWebServerRequest, - com.google.longrunning.Operation>(this, METHODID_RESTART_WEB_SERVER))) - .addMethod( - getCheckUpgradeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1.CheckUpgradeRequest, - com.google.longrunning.Operation>(this, METHODID_CHECK_UPGRADE))) - .addMethod( - getSaveSnapshotMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1.SaveSnapshotRequest, - com.google.longrunning.Operation>(this, METHODID_SAVE_SNAPSHOT))) - .addMethod( - getLoadSnapshotMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1.LoadSnapshotRequest, - com.google.longrunning.Operation>(this, METHODID_LOAD_SNAPSHOT))) - .build(); + return EnvironmentsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Environments. * *
    * Managed Apache Airflow Environments.
@@ -892,7 +841,7 @@ public void loadSnapshot(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Environments.
    *
    * 
    * Managed Apache Airflow Environments.
@@ -1036,7 +985,7 @@ public com.google.longrunning.Operation loadSnapshot(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Environments.
    *
    * 
    * Managed Apache Airflow Environments.
@@ -1208,10 +1157,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final EnvironmentsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(EnvironmentsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1292,6 +1241,67 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.CreateEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_ENVIRONMENT)))
+        .addMethod(
+            getGetEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.GetEnvironmentRequest,
+                    com.google.cloud.orchestration.airflow.service.v1beta1.Environment>(
+                    service, METHODID_GET_ENVIRONMENT)))
+        .addMethod(
+            getListEnvironmentsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.ListEnvironmentsRequest,
+                    com.google.cloud.orchestration.airflow.service.v1beta1
+                        .ListEnvironmentsResponse>(service, METHODID_LIST_ENVIRONMENTS)))
+        .addMethod(
+            getUpdateEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.UpdateEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_ENVIRONMENT)))
+        .addMethod(
+            getDeleteEnvironmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.DeleteEnvironmentRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_ENVIRONMENT)))
+        .addMethod(
+            getRestartWebServerMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.RestartWebServerRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESTART_WEB_SERVER)))
+        .addMethod(
+            getCheckUpgradeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.CheckUpgradeRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CHECK_UPGRADE)))
+        .addMethod(
+            getSaveSnapshotMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.SaveSnapshotRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SAVE_SNAPSHOT)))
+        .addMethod(
+            getLoadSnapshotMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.LoadSnapshotRequest,
+                    com.google.longrunning.Operation>(service, METHODID_LOAD_SNAPSHOT)))
+        .build();
+  }
+
   private abstract static class EnvironmentsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1beta1/src/main/java/com/google/cloud/orchestration/airflow/service/v1beta1/ImageVersionsGrpc.java b/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1beta1/src/main/java/com/google/cloud/orchestration/airflow/service/v1beta1/ImageVersionsGrpc.java
index fa0b88b0ff85..cc5731e03161 100644
--- a/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1beta1/src/main/java/com/google/cloud/orchestration/airflow/service/v1beta1/ImageVersionsGrpc.java
+++ b/java-orchestration-airflow/grpc-google-cloud-orchestration-airflow-v1beta1/src/main/java/com/google/cloud/orchestration/airflow/service/v1beta1/ImageVersionsGrpc.java
@@ -135,7 +135,7 @@ public ImageVersionsFutureStub newStub(
    * Readonly service to query available ImageVersions.
    * 
*/ - public abstract static class ImageVersionsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -144,7 +144,7 @@ public abstract static class ImageVersionsImplBase implements io.grpc.BindableSe * List ImageVersions for provided location. *
*/ - public void listImageVersions( + default void listImageVersions( com.google.cloud.orchestration.airflow.service.v1beta1.ListImageVersionsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.orchestration.airflow.service.v1beta1.ListImageVersionsResponse> @@ -152,24 +152,26 @@ public void listImageVersions( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListImageVersionsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ImageVersions. + * + *
+   * Readonly service to query available ImageVersions.
+   * 
+ */ + public abstract static class ImageVersionsImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListImageVersionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orchestration.airflow.service.v1beta1 - .ListImageVersionsRequest, - com.google.cloud.orchestration.airflow.service.v1beta1 - .ListImageVersionsResponse>(this, METHODID_LIST_IMAGE_VERSIONS))) - .build(); + return ImageVersionsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ImageVersions. * *
    * Readonly service to query available ImageVersions.
@@ -206,7 +208,7 @@ public void listImageVersions(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ImageVersions.
    *
    * 
    * Readonly service to query available ImageVersions.
@@ -241,7 +243,7 @@ protected ImageVersionsBlockingStub build(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ImageVersions.
    *
    * 
    * Readonly service to query available ImageVersions.
@@ -283,10 +285,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ImageVersionsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ImageVersionsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -320,6 +322,18 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListImageVersionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orchestration.airflow.service.v1beta1.ListImageVersionsRequest,
+                    com.google.cloud.orchestration.airflow.service.v1beta1
+                        .ListImageVersionsResponse>(service, METHODID_LIST_IMAGE_VERSIONS)))
+        .build();
+  }
+
   private abstract static class ImageVersionsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-orgpolicy/README.md b/java-orgpolicy/README.md
index 106d3891e8f8..33790e7965c4 100644
--- a/java-orgpolicy/README.md
+++ b/java-orgpolicy/README.md
@@ -13,8 +13,8 @@ Java idiomatic client for [Cloud Organization Policy][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
+
 
-
 
 ```xml
 
@@ -35,7 +35,7 @@ If you are using SBT, add this to your dependencies:
 ```Scala
 libraryDependencies += "com.google.cloud" % "google-cloud-orgpolicy" % "2.13.0"
 ```
-
+
 
 ## Authentication
 
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Organization Policy [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud Organization Policy.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-orgpolicy.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-orgpolicy&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-orgpolicy/2.13.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-orgpolicy/grpc-google-cloud-orgpolicy-v2/src/main/java/com/google/cloud/orgpolicy/v2/OrgPolicyGrpc.java b/java-orgpolicy/grpc-google-cloud-orgpolicy-v2/src/main/java/com/google/cloud/orgpolicy/v2/OrgPolicyGrpc.java
index 00d20a06fe4f..712621a8330d 100644
--- a/java-orgpolicy/grpc-google-cloud-orgpolicy-v2/src/main/java/com/google/cloud/orgpolicy/v2/OrgPolicyGrpc.java
+++ b/java-orgpolicy/grpc-google-cloud-orgpolicy-v2/src/main/java/com/google/cloud/orgpolicy/v2/OrgPolicyGrpc.java
@@ -417,7 +417,7 @@ public OrgPolicyFutureStub newStub(
    * particular resource and its child resources.
    * 
*/ - public abstract static class OrgPolicyImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -426,7 +426,7 @@ public abstract static class OrgPolicyImplBase implements io.grpc.BindableServic * Lists `Constraints` that could be applied on the specified resource. *
*/ - public void listConstraints( + default void listConstraints( com.google.cloud.orgpolicy.v2.ListConstraintsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -441,7 +441,7 @@ public void listConstraints( * Retrieves all of the `Policies` that exist on a particular resource. *
*/ - public void listPolicies( + default void listPolicies( com.google.cloud.orgpolicy.v2.ListPoliciesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -459,7 +459,7 @@ public void listPolicies( * `Policy` during read-modify-write. *
*/ - public void getPolicy( + default void getPolicy( com.google.cloud.orgpolicy.v2.GetPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetPolicyMethod(), responseObserver); @@ -477,7 +477,7 @@ public void getPolicy( * not be expanded. * */ - public void getEffectivePolicy( + default void getEffectivePolicy( com.google.cloud.orgpolicy.v2.GetEffectivePolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -495,7 +495,7 @@ public void getEffectivePolicy( * policy already exists on the given Cloud resource. * */ - public void createPolicy( + default void createPolicy( com.google.cloud.orgpolicy.v2.CreatePolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -515,7 +515,7 @@ public void createPolicy( * fields. * */ - public void updatePolicy( + default void updatePolicy( com.google.cloud.orgpolicy.v2.UpdatePolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -531,66 +531,46 @@ public void updatePolicy( * constraint or Org Policy does not exist. * */ - public void deletePolicy( + default void deletePolicy( com.google.cloud.orgpolicy.v2.DeletePolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeletePolicyMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service OrgPolicy. + * + *
+   * An interface for managing organization policies.
+   * The Cloud Org Policy service provides a simple mechanism for organizations to
+   * restrict the allowed configurations across their entire Cloud Resource
+   * hierarchy.
+   * You can use a `policy` to configure restrictions in Cloud resources. For
+   * example, you can enforce a `policy` that restricts which Google
+   * Cloud Platform APIs can be activated in a certain part of your resource
+   * hierarchy, or prevents serial port access to VM instances in a particular
+   * folder.
+   * `Policies` are inherited down through the resource hierarchy. A `policy`
+   * applied to a parent resource automatically applies to all its child resources
+   * unless overridden with a `policy` lower in the hierarchy.
+   * A `constraint` defines an aspect of a resource's configuration that can be
+   * controlled by an organization's policy administrator. `Policies` are a
+   * collection of `constraints` that defines their allowable configuration on a
+   * particular resource and its child resources.
+   * 
+ */ + public abstract static class OrgPolicyImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListConstraintsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orgpolicy.v2.ListConstraintsRequest, - com.google.cloud.orgpolicy.v2.ListConstraintsResponse>( - this, METHODID_LIST_CONSTRAINTS))) - .addMethod( - getListPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orgpolicy.v2.ListPoliciesRequest, - com.google.cloud.orgpolicy.v2.ListPoliciesResponse>( - this, METHODID_LIST_POLICIES))) - .addMethod( - getGetPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orgpolicy.v2.GetPolicyRequest, - com.google.cloud.orgpolicy.v2.Policy>(this, METHODID_GET_POLICY))) - .addMethod( - getGetEffectivePolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orgpolicy.v2.GetEffectivePolicyRequest, - com.google.cloud.orgpolicy.v2.Policy>(this, METHODID_GET_EFFECTIVE_POLICY))) - .addMethod( - getCreatePolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orgpolicy.v2.CreatePolicyRequest, - com.google.cloud.orgpolicy.v2.Policy>(this, METHODID_CREATE_POLICY))) - .addMethod( - getUpdatePolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orgpolicy.v2.UpdatePolicyRequest, - com.google.cloud.orgpolicy.v2.Policy>(this, METHODID_UPDATE_POLICY))) - .addMethod( - getDeletePolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.orgpolicy.v2.DeletePolicyRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_POLICY))) - .build(); + return OrgPolicyGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service OrgPolicy. * *
    * An interface for managing organization policies.
@@ -755,7 +735,7 @@ public void deletePolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service OrgPolicy.
    *
    * 
    * An interface for managing organization policies.
@@ -901,7 +881,7 @@ public com.google.protobuf.Empty deletePolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service OrgPolicy.
    *
    * 
    * An interface for managing organization policies.
@@ -1060,10 +1040,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final OrgPolicyImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(OrgPolicyImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1125,6 +1105,55 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListConstraintsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orgpolicy.v2.ListConstraintsRequest,
+                    com.google.cloud.orgpolicy.v2.ListConstraintsResponse>(
+                    service, METHODID_LIST_CONSTRAINTS)))
+        .addMethod(
+            getListPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orgpolicy.v2.ListPoliciesRequest,
+                    com.google.cloud.orgpolicy.v2.ListPoliciesResponse>(
+                    service, METHODID_LIST_POLICIES)))
+        .addMethod(
+            getGetPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orgpolicy.v2.GetPolicyRequest,
+                    com.google.cloud.orgpolicy.v2.Policy>(service, METHODID_GET_POLICY)))
+        .addMethod(
+            getGetEffectivePolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orgpolicy.v2.GetEffectivePolicyRequest,
+                    com.google.cloud.orgpolicy.v2.Policy>(service, METHODID_GET_EFFECTIVE_POLICY)))
+        .addMethod(
+            getCreatePolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orgpolicy.v2.CreatePolicyRequest,
+                    com.google.cloud.orgpolicy.v2.Policy>(service, METHODID_CREATE_POLICY)))
+        .addMethod(
+            getUpdatePolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orgpolicy.v2.UpdatePolicyRequest,
+                    com.google.cloud.orgpolicy.v2.Policy>(service, METHODID_UPDATE_POLICY)))
+        .addMethod(
+            getDeletePolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.orgpolicy.v2.DeletePolicyRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_POLICY)))
+        .build();
+  }
+
   private abstract static class OrgPolicyBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-os-config/README.md b/java-os-config/README.md
index 9234db1560c6..a9c38b50f382 100644
--- a/java-os-config/README.md
+++ b/java-os-config/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [OS Config API][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the OS Config API [API enabled][enable-api].
 
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-os-config.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-os-config&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-os-config/2.15.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-os-config/grpc-google-cloud-os-config-v1/src/main/java/com/google/cloud/osconfig/v1/OsConfigServiceGrpc.java b/java-os-config/grpc-google-cloud-os-config-v1/src/main/java/com/google/cloud/osconfig/v1/OsConfigServiceGrpc.java
index 2d4fac6446d9..1c9a6896bba3 100644
--- a/java-os-config/grpc-google-cloud-os-config-v1/src/main/java/com/google/cloud/osconfig/v1/OsConfigServiceGrpc.java
+++ b/java-os-config/grpc-google-cloud-os-config-v1/src/main/java/com/google/cloud/osconfig/v1/OsConfigServiceGrpc.java
@@ -680,7 +680,7 @@ public OsConfigServiceFutureStub newStub(
    * manage package installations and patch jobs for virtual machine instances.
    * 
*/ - public abstract static class OsConfigServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -689,7 +689,7 @@ public abstract static class OsConfigServiceImplBase implements io.grpc.Bindable * Patch VM instances by creating and running a patch job. *
*/ - public void executePatchJob( + default void executePatchJob( com.google.cloud.osconfig.v1.PatchJobs.ExecutePatchJobRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -705,7 +705,7 @@ public void executePatchJob( * ongoing patch job or review the details of completed jobs. *
*/ - public void getPatchJob( + default void getPatchJob( com.google.cloud.osconfig.v1.PatchJobs.GetPatchJobRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -721,7 +721,7 @@ public void getPatchJob( * cannot be restarted. * */ - public void cancelPatchJob( + default void cancelPatchJob( com.google.cloud.osconfig.v1.PatchJobs.CancelPatchJobRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -736,7 +736,7 @@ public void cancelPatchJob( * Get a list of patch jobs. * */ - public void listPatchJobs( + default void listPatchJobs( com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -751,7 +751,7 @@ public void listPatchJobs( * Get a list of instance details for a given patch job. * */ - public void listPatchJobInstanceDetails( + default void listPatchJobInstanceDetails( com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobInstanceDetailsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobInstanceDetailsResponse> @@ -767,7 +767,7 @@ public void listPatchJobInstanceDetails( * Create an OS Config patch deployment. * */ - public void createPatchDeployment( + default void createPatchDeployment( com.google.cloud.osconfig.v1.PatchDeployments.CreatePatchDeploymentRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -782,7 +782,7 @@ public void createPatchDeployment( * Get an OS Config patch deployment. * */ - public void getPatchDeployment( + default void getPatchDeployment( com.google.cloud.osconfig.v1.PatchDeployments.GetPatchDeploymentRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -797,7 +797,7 @@ public void getPatchDeployment( * Get a page of OS Config patch deployments. * */ - public void listPatchDeployments( + default void listPatchDeployments( com.google.cloud.osconfig.v1.PatchDeployments.ListPatchDeploymentsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1.PatchDeployments.ListPatchDeploymentsResponse> @@ -813,7 +813,7 @@ public void listPatchDeployments( * Delete an OS Config patch deployment. * */ - public void deletePatchDeployment( + default void deletePatchDeployment( com.google.cloud.osconfig.v1.PatchDeployments.DeletePatchDeploymentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -827,7 +827,7 @@ public void deletePatchDeployment( * Update an OS Config patch deployment. * */ - public void updatePatchDeployment( + default void updatePatchDeployment( com.google.cloud.osconfig.v1.PatchDeployments.UpdatePatchDeploymentRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -843,7 +843,7 @@ public void updatePatchDeployment( * Patch deployment in paused state doesn't generate patch jobs. * */ - public void pausePatchDeployment( + default void pausePatchDeployment( com.google.cloud.osconfig.v1.PatchDeployments.PausePatchDeploymentRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -859,106 +859,35 @@ public void pausePatchDeployment( * Patch deployment in active state continues to generate patch jobs. * */ - public void resumePatchDeployment( + default void resumePatchDeployment( com.google.cloud.osconfig.v1.PatchDeployments.ResumePatchDeploymentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getResumePatchDeploymentMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service OsConfigService. + * + *
+   * OS Config API
+   * The OS Config service is a server-side component that you can use to
+   * manage package installations and patch jobs for virtual machine instances.
+   * 
+ */ + public abstract static class OsConfigServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getExecutePatchJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchJobs.ExecutePatchJobRequest, - com.google.cloud.osconfig.v1.PatchJobs.PatchJob>( - this, METHODID_EXECUTE_PATCH_JOB))) - .addMethod( - getGetPatchJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchJobs.GetPatchJobRequest, - com.google.cloud.osconfig.v1.PatchJobs.PatchJob>( - this, METHODID_GET_PATCH_JOB))) - .addMethod( - getCancelPatchJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchJobs.CancelPatchJobRequest, - com.google.cloud.osconfig.v1.PatchJobs.PatchJob>( - this, METHODID_CANCEL_PATCH_JOB))) - .addMethod( - getListPatchJobsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobsRequest, - com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobsResponse>( - this, METHODID_LIST_PATCH_JOBS))) - .addMethod( - getListPatchJobInstanceDetailsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobInstanceDetailsRequest, - com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobInstanceDetailsResponse>( - this, METHODID_LIST_PATCH_JOB_INSTANCE_DETAILS))) - .addMethod( - getCreatePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchDeployments.CreatePatchDeploymentRequest, - com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>( - this, METHODID_CREATE_PATCH_DEPLOYMENT))) - .addMethod( - getGetPatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchDeployments.GetPatchDeploymentRequest, - com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>( - this, METHODID_GET_PATCH_DEPLOYMENT))) - .addMethod( - getListPatchDeploymentsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchDeployments.ListPatchDeploymentsRequest, - com.google.cloud.osconfig.v1.PatchDeployments.ListPatchDeploymentsResponse>( - this, METHODID_LIST_PATCH_DEPLOYMENTS))) - .addMethod( - getDeletePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchDeployments.DeletePatchDeploymentRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PATCH_DEPLOYMENT))) - .addMethod( - getUpdatePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchDeployments.UpdatePatchDeploymentRequest, - com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>( - this, METHODID_UPDATE_PATCH_DEPLOYMENT))) - .addMethod( - getPausePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchDeployments.PausePatchDeploymentRequest, - com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>( - this, METHODID_PAUSE_PATCH_DEPLOYMENT))) - .addMethod( - getResumePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.PatchDeployments.ResumePatchDeploymentRequest, - com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>( - this, METHODID_RESUME_PATCH_DEPLOYMENT))) - .build(); + return OsConfigServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service OsConfigService. * *
    * OS Config API
@@ -1188,7 +1117,7 @@ public void resumePatchDeployment(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service OsConfigService.
    *
    * 
    * OS Config API
@@ -1372,7 +1301,7 @@ public com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment resumePatch
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service OsConfigService.
    *
    * 
    * OS Config API
@@ -1590,10 +1519,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final OsConfigServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(OsConfigServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1697,6 +1626,94 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getExecutePatchJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchJobs.ExecutePatchJobRequest,
+                    com.google.cloud.osconfig.v1.PatchJobs.PatchJob>(
+                    service, METHODID_EXECUTE_PATCH_JOB)))
+        .addMethod(
+            getGetPatchJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchJobs.GetPatchJobRequest,
+                    com.google.cloud.osconfig.v1.PatchJobs.PatchJob>(
+                    service, METHODID_GET_PATCH_JOB)))
+        .addMethod(
+            getCancelPatchJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchJobs.CancelPatchJobRequest,
+                    com.google.cloud.osconfig.v1.PatchJobs.PatchJob>(
+                    service, METHODID_CANCEL_PATCH_JOB)))
+        .addMethod(
+            getListPatchJobsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobsRequest,
+                    com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobsResponse>(
+                    service, METHODID_LIST_PATCH_JOBS)))
+        .addMethod(
+            getListPatchJobInstanceDetailsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobInstanceDetailsRequest,
+                    com.google.cloud.osconfig.v1.PatchJobs.ListPatchJobInstanceDetailsResponse>(
+                    service, METHODID_LIST_PATCH_JOB_INSTANCE_DETAILS)))
+        .addMethod(
+            getCreatePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchDeployments.CreatePatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>(
+                    service, METHODID_CREATE_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getGetPatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchDeployments.GetPatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>(
+                    service, METHODID_GET_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getListPatchDeploymentsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchDeployments.ListPatchDeploymentsRequest,
+                    com.google.cloud.osconfig.v1.PatchDeployments.ListPatchDeploymentsResponse>(
+                    service, METHODID_LIST_PATCH_DEPLOYMENTS)))
+        .addMethod(
+            getDeletePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchDeployments.DeletePatchDeploymentRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getUpdatePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchDeployments.UpdatePatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>(
+                    service, METHODID_UPDATE_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getPausePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchDeployments.PausePatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>(
+                    service, METHODID_PAUSE_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getResumePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.PatchDeployments.ResumePatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1.PatchDeployments.PatchDeployment>(
+                    service, METHODID_RESUME_PATCH_DEPLOYMENT)))
+        .build();
+  }
+
   private abstract static class OsConfigServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-os-config/grpc-google-cloud-os-config-v1/src/main/java/com/google/cloud/osconfig/v1/OsConfigZonalServiceGrpc.java b/java-os-config/grpc-google-cloud-os-config-v1/src/main/java/com/google/cloud/osconfig/v1/OsConfigZonalServiceGrpc.java
index 7218bc625116..b9f34e31f7b9 100644
--- a/java-os-config/grpc-google-cloud-os-config-v1/src/main/java/com/google/cloud/osconfig/v1/OsConfigZonalServiceGrpc.java
+++ b/java-os-config/grpc-google-cloud-os-config-v1/src/main/java/com/google/cloud/osconfig/v1/OsConfigZonalServiceGrpc.java
@@ -702,7 +702,7 @@ public OsConfigZonalServiceFutureStub newStub(
    * manage package installations and patch jobs for Compute Engine VM instances.
    * 
*/ - public abstract static class OsConfigZonalServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -716,7 +716,7 @@ public abstract static class OsConfigZonalServiceImplBase implements io.grpc.Bin * projects.locations.osPolicyAssignments.operations.cancel](https://cloud.google.com/compute/docs/osconfig/rest/v1/projects.locations.osPolicyAssignments.operations/cancel). *
*/ - public void createOSPolicyAssignment( + default void createOSPolicyAssignment( com.google.cloud.osconfig.v1.CreateOSPolicyAssignmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -735,7 +735,7 @@ public void createOSPolicyAssignment( * projects.locations.osPolicyAssignments.operations.cancel](https://cloud.google.com/compute/docs/osconfig/rest/v1/projects.locations.osPolicyAssignments.operations/cancel). *
*/ - public void updateOSPolicyAssignment( + default void updateOSPolicyAssignment( com.google.cloud.osconfig.v1.UpdateOSPolicyAssignmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -752,7 +752,7 @@ public void updateOSPolicyAssignment( * `name` parameter. * */ - public void getOSPolicyAssignment( + default void getOSPolicyAssignment( com.google.cloud.osconfig.v1.GetOSPolicyAssignmentRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -768,7 +768,7 @@ public void getOSPolicyAssignment( * For each OS policy assignment, the latest revision is returned. * */ - public void listOSPolicyAssignments( + default void listOSPolicyAssignments( com.google.cloud.osconfig.v1.ListOSPolicyAssignmentsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -783,7 +783,7 @@ public void listOSPolicyAssignments( * List the OS policy assignment revisions for a given OS policy assignment. * */ - public void listOSPolicyAssignmentRevisions( + default void listOSPolicyAssignmentRevisions( com.google.cloud.osconfig.v1.ListOSPolicyAssignmentRevisionsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1.ListOSPolicyAssignmentRevisionsResponse> @@ -806,7 +806,7 @@ public void listOSPolicyAssignmentRevisions( * projects.locations.osPolicyAssignments.operations.cancel](https://cloud.google.com/compute/docs/osconfig/rest/v1/projects.locations.osPolicyAssignments.operations/cancel). * */ - public void deleteOSPolicyAssignment( + default void deleteOSPolicyAssignment( com.google.cloud.osconfig.v1.DeleteOSPolicyAssignmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -821,7 +821,7 @@ public void deleteOSPolicyAssignment( * instance. * */ - public void getOSPolicyAssignmentReport( + default void getOSPolicyAssignmentReport( com.google.cloud.osconfig.v1.GetOSPolicyAssignmentReportRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -837,7 +837,7 @@ public void getOSPolicyAssignmentReport( * the specified zone. * */ - public void listOSPolicyAssignmentReports( + default void listOSPolicyAssignmentReports( com.google.cloud.osconfig.v1.ListOSPolicyAssignmentReportsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1.ListOSPolicyAssignmentReportsResponse> @@ -854,7 +854,7 @@ public void listOSPolicyAssignmentReports( * associated inventory, the message `NOT_FOUND` is returned. * */ - public void getInventory( + default void getInventory( com.google.cloud.osconfig.v1.GetInventoryRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -868,7 +868,7 @@ public void getInventory( * List inventory data for all VM instances in the specified zone. * */ - public void listInventories( + default void listInventories( com.google.cloud.osconfig.v1.ListInventoriesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -884,7 +884,7 @@ public void listInventories( * inventory data have vulnerability reports associated with them. * */ - public void getVulnerabilityReport( + default void getVulnerabilityReport( com.google.cloud.osconfig.v1.GetVulnerabilityReportRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -899,103 +899,35 @@ public void getVulnerabilityReport( * List vulnerability reports for all VM instances in the specified zone. * */ - public void listVulnerabilityReports( + default void listVulnerabilityReports( com.google.cloud.osconfig.v1.ListVulnerabilityReportsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListVulnerabilityReportsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service OsConfigZonalService. + * + *
+   * Zonal OS Config API
+   * The OS Config service is the server-side component that allows users to
+   * manage package installations and patch jobs for Compute Engine VM instances.
+   * 
+ */ + public abstract static class OsConfigZonalServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateOSPolicyAssignmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.CreateOSPolicyAssignmentRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_OSPOLICY_ASSIGNMENT))) - .addMethod( - getUpdateOSPolicyAssignmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.UpdateOSPolicyAssignmentRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_OSPOLICY_ASSIGNMENT))) - .addMethod( - getGetOSPolicyAssignmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.GetOSPolicyAssignmentRequest, - com.google.cloud.osconfig.v1.OSPolicyAssignment>( - this, METHODID_GET_OSPOLICY_ASSIGNMENT))) - .addMethod( - getListOSPolicyAssignmentsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.ListOSPolicyAssignmentsRequest, - com.google.cloud.osconfig.v1.ListOSPolicyAssignmentsResponse>( - this, METHODID_LIST_OSPOLICY_ASSIGNMENTS))) - .addMethod( - getListOSPolicyAssignmentRevisionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.ListOSPolicyAssignmentRevisionsRequest, - com.google.cloud.osconfig.v1.ListOSPolicyAssignmentRevisionsResponse>( - this, METHODID_LIST_OSPOLICY_ASSIGNMENT_REVISIONS))) - .addMethod( - getDeleteOSPolicyAssignmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.DeleteOSPolicyAssignmentRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_OSPOLICY_ASSIGNMENT))) - .addMethod( - getGetOSPolicyAssignmentReportMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.GetOSPolicyAssignmentReportRequest, - com.google.cloud.osconfig.v1.OSPolicyAssignmentReport>( - this, METHODID_GET_OSPOLICY_ASSIGNMENT_REPORT))) - .addMethod( - getListOSPolicyAssignmentReportsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.ListOSPolicyAssignmentReportsRequest, - com.google.cloud.osconfig.v1.ListOSPolicyAssignmentReportsResponse>( - this, METHODID_LIST_OSPOLICY_ASSIGNMENT_REPORTS))) - .addMethod( - getGetInventoryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.GetInventoryRequest, - com.google.cloud.osconfig.v1.Inventory>(this, METHODID_GET_INVENTORY))) - .addMethod( - getListInventoriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.ListInventoriesRequest, - com.google.cloud.osconfig.v1.ListInventoriesResponse>( - this, METHODID_LIST_INVENTORIES))) - .addMethod( - getGetVulnerabilityReportMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.GetVulnerabilityReportRequest, - com.google.cloud.osconfig.v1.VulnerabilityReport>( - this, METHODID_GET_VULNERABILITY_REPORT))) - .addMethod( - getListVulnerabilityReportsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1.ListVulnerabilityReportsRequest, - com.google.cloud.osconfig.v1.ListVulnerabilityReportsResponse>( - this, METHODID_LIST_VULNERABILITY_REPORTS))) - .build(); + return OsConfigZonalServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service OsConfigZonalService. * *
    * Zonal OS Config API
@@ -1244,7 +1176,7 @@ public void listVulnerabilityReports(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service OsConfigZonalService.
    *
    * 
    * Zonal OS Config API
@@ -1450,7 +1382,7 @@ public com.google.cloud.osconfig.v1.ListVulnerabilityReportsResponse listVulnera
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service OsConfigZonalService.
    *
    * 
    * Zonal OS Config API
@@ -1690,10 +1622,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final OsConfigZonalServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(OsConfigZonalServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1791,6 +1723,94 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateOSPolicyAssignmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.CreateOSPolicyAssignmentRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_CREATE_OSPOLICY_ASSIGNMENT)))
+        .addMethod(
+            getUpdateOSPolicyAssignmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.UpdateOSPolicyAssignmentRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_UPDATE_OSPOLICY_ASSIGNMENT)))
+        .addMethod(
+            getGetOSPolicyAssignmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.GetOSPolicyAssignmentRequest,
+                    com.google.cloud.osconfig.v1.OSPolicyAssignment>(
+                    service, METHODID_GET_OSPOLICY_ASSIGNMENT)))
+        .addMethod(
+            getListOSPolicyAssignmentsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.ListOSPolicyAssignmentsRequest,
+                    com.google.cloud.osconfig.v1.ListOSPolicyAssignmentsResponse>(
+                    service, METHODID_LIST_OSPOLICY_ASSIGNMENTS)))
+        .addMethod(
+            getListOSPolicyAssignmentRevisionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.ListOSPolicyAssignmentRevisionsRequest,
+                    com.google.cloud.osconfig.v1.ListOSPolicyAssignmentRevisionsResponse>(
+                    service, METHODID_LIST_OSPOLICY_ASSIGNMENT_REVISIONS)))
+        .addMethod(
+            getDeleteOSPolicyAssignmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.DeleteOSPolicyAssignmentRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_DELETE_OSPOLICY_ASSIGNMENT)))
+        .addMethod(
+            getGetOSPolicyAssignmentReportMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.GetOSPolicyAssignmentReportRequest,
+                    com.google.cloud.osconfig.v1.OSPolicyAssignmentReport>(
+                    service, METHODID_GET_OSPOLICY_ASSIGNMENT_REPORT)))
+        .addMethod(
+            getListOSPolicyAssignmentReportsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.ListOSPolicyAssignmentReportsRequest,
+                    com.google.cloud.osconfig.v1.ListOSPolicyAssignmentReportsResponse>(
+                    service, METHODID_LIST_OSPOLICY_ASSIGNMENT_REPORTS)))
+        .addMethod(
+            getGetInventoryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.GetInventoryRequest,
+                    com.google.cloud.osconfig.v1.Inventory>(service, METHODID_GET_INVENTORY)))
+        .addMethod(
+            getListInventoriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.ListInventoriesRequest,
+                    com.google.cloud.osconfig.v1.ListInventoriesResponse>(
+                    service, METHODID_LIST_INVENTORIES)))
+        .addMethod(
+            getGetVulnerabilityReportMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.GetVulnerabilityReportRequest,
+                    com.google.cloud.osconfig.v1.VulnerabilityReport>(
+                    service, METHODID_GET_VULNERABILITY_REPORT)))
+        .addMethod(
+            getListVulnerabilityReportsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1.ListVulnerabilityReportsRequest,
+                    com.google.cloud.osconfig.v1.ListVulnerabilityReportsResponse>(
+                    service, METHODID_LIST_VULNERABILITY_REPORTS)))
+        .build();
+  }
+
   private abstract static class OsConfigZonalServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-os-config/grpc-google-cloud-os-config-v1alpha/src/main/java/com/google/cloud/osconfig/v1alpha/OsConfigZonalServiceGrpc.java b/java-os-config/grpc-google-cloud-os-config-v1alpha/src/main/java/com/google/cloud/osconfig/v1alpha/OsConfigZonalServiceGrpc.java
index f0364e529715..6f7921fb2cd7 100644
--- a/java-os-config/grpc-google-cloud-os-config-v1alpha/src/main/java/com/google/cloud/osconfig/v1alpha/OsConfigZonalServiceGrpc.java
+++ b/java-os-config/grpc-google-cloud-os-config-v1alpha/src/main/java/com/google/cloud/osconfig/v1alpha/OsConfigZonalServiceGrpc.java
@@ -815,7 +815,7 @@ public OsConfigZonalServiceFutureStub newStub(
    * manage package installations and patch jobs for Compute Engine VM instances.
    * 
*/ - public abstract static class OsConfigZonalServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -829,7 +829,7 @@ public abstract static class OsConfigZonalServiceImplBase implements io.grpc.Bin * projects.locations.osPolicyAssignments.operations.cancel](https://cloud.google.com/compute/docs/osconfig/rest/v1alpha/projects.locations.osPolicyAssignments.operations/cancel). *
*/ - public void createOSPolicyAssignment( + default void createOSPolicyAssignment( com.google.cloud.osconfig.v1alpha.CreateOSPolicyAssignmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -848,7 +848,7 @@ public void createOSPolicyAssignment( * projects.locations.osPolicyAssignments.operations.cancel](https://cloud.google.com/compute/docs/osconfig/rest/v1alpha/projects.locations.osPolicyAssignments.operations/cancel). *
*/ - public void updateOSPolicyAssignment( + default void updateOSPolicyAssignment( com.google.cloud.osconfig.v1alpha.UpdateOSPolicyAssignmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -865,7 +865,7 @@ public void updateOSPolicyAssignment( * `name` parameter. * */ - public void getOSPolicyAssignment( + default void getOSPolicyAssignment( com.google.cloud.osconfig.v1alpha.GetOSPolicyAssignmentRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -881,7 +881,7 @@ public void getOSPolicyAssignment( * For each OS policy assignment, the latest revision is returned. * */ - public void listOSPolicyAssignments( + default void listOSPolicyAssignments( com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentsResponse> @@ -897,7 +897,7 @@ public void listOSPolicyAssignments( * List the OS policy assignment revisions for a given OS policy assignment. * */ - public void listOSPolicyAssignmentRevisions( + default void listOSPolicyAssignmentRevisions( com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentRevisionsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentRevisionsResponse> @@ -920,7 +920,7 @@ public void listOSPolicyAssignmentRevisions( * projects.locations.osPolicyAssignments.operations.cancel](https://cloud.google.com/compute/docs/osconfig/rest/v1alpha/projects.locations.osPolicyAssignments.operations/cancel). * */ - public void deleteOSPolicyAssignment( + default void deleteOSPolicyAssignment( com.google.cloud.osconfig.v1alpha.DeleteOSPolicyAssignmentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -936,7 +936,7 @@ public void deleteOSPolicyAssignment( * */ @java.lang.Deprecated - public void getInstanceOSPoliciesCompliance( + default void getInstanceOSPoliciesCompliance( com.google.cloud.osconfig.v1alpha.GetInstanceOSPoliciesComplianceRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -953,7 +953,7 @@ public void getInstanceOSPoliciesCompliance( * */ @java.lang.Deprecated - public void listInstanceOSPoliciesCompliances( + default void listInstanceOSPoliciesCompliances( com.google.cloud.osconfig.v1alpha.ListInstanceOSPoliciesCompliancesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1alpha.ListInstanceOSPoliciesCompliancesResponse> @@ -970,7 +970,7 @@ public void listInstanceOSPoliciesCompliances( * instance. * */ - public void getOSPolicyAssignmentReport( + default void getOSPolicyAssignmentReport( com.google.cloud.osconfig.v1alpha.GetOSPolicyAssignmentReportRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -986,7 +986,7 @@ public void getOSPolicyAssignmentReport( * the specified zone. * */ - public void listOSPolicyAssignmentReports( + default void listOSPolicyAssignmentReports( com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentReportsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentReportsResponse> @@ -1003,7 +1003,7 @@ public void listOSPolicyAssignmentReports( * associated inventory, the message `NOT_FOUND` is returned. * */ - public void getInventory( + default void getInventory( com.google.cloud.osconfig.v1alpha.GetInventoryRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1017,7 +1017,7 @@ public void getInventory( * List inventory data for all VM instances in the specified zone. * */ - public void listInventories( + default void listInventories( com.google.cloud.osconfig.v1alpha.ListInventoriesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1033,7 +1033,7 @@ public void listInventories( * inventory data have vulnerability reports associated with them. * */ - public void getVulnerabilityReport( + default void getVulnerabilityReport( com.google.cloud.osconfig.v1alpha.GetVulnerabilityReportRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1048,7 +1048,7 @@ public void getVulnerabilityReport( * List vulnerability reports for all VM instances in the specified zone. * */ - public void listVulnerabilityReports( + default void listVulnerabilityReports( com.google.cloud.osconfig.v1alpha.ListVulnerabilityReportsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1alpha.ListVulnerabilityReportsResponse> @@ -1056,110 +1056,28 @@ public void listVulnerabilityReports( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListVulnerabilityReportsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service OsConfigZonalService. + * + *
+   * Zonal OS Config API
+   * The OS Config service is the server-side component that allows users to
+   * manage package installations and patch jobs for Compute Engine VM instances.
+   * 
+ */ + public abstract static class OsConfigZonalServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateOSPolicyAssignmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.CreateOSPolicyAssignmentRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_OSPOLICY_ASSIGNMENT))) - .addMethod( - getUpdateOSPolicyAssignmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.UpdateOSPolicyAssignmentRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_OSPOLICY_ASSIGNMENT))) - .addMethod( - getGetOSPolicyAssignmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.GetOSPolicyAssignmentRequest, - com.google.cloud.osconfig.v1alpha.OSPolicyAssignment>( - this, METHODID_GET_OSPOLICY_ASSIGNMENT))) - .addMethod( - getListOSPolicyAssignmentsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentsRequest, - com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentsResponse>( - this, METHODID_LIST_OSPOLICY_ASSIGNMENTS))) - .addMethod( - getListOSPolicyAssignmentRevisionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentRevisionsRequest, - com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentRevisionsResponse>( - this, METHODID_LIST_OSPOLICY_ASSIGNMENT_REVISIONS))) - .addMethod( - getDeleteOSPolicyAssignmentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.DeleteOSPolicyAssignmentRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_OSPOLICY_ASSIGNMENT))) - .addMethod( - getGetInstanceOSPoliciesComplianceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.GetInstanceOSPoliciesComplianceRequest, - com.google.cloud.osconfig.v1alpha.InstanceOSPoliciesCompliance>( - this, METHODID_GET_INSTANCE_OSPOLICIES_COMPLIANCE))) - .addMethod( - getListInstanceOSPoliciesCompliancesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.ListInstanceOSPoliciesCompliancesRequest, - com.google.cloud.osconfig.v1alpha.ListInstanceOSPoliciesCompliancesResponse>( - this, METHODID_LIST_INSTANCE_OSPOLICIES_COMPLIANCES))) - .addMethod( - getGetOSPolicyAssignmentReportMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.GetOSPolicyAssignmentReportRequest, - com.google.cloud.osconfig.v1alpha.OSPolicyAssignmentReport>( - this, METHODID_GET_OSPOLICY_ASSIGNMENT_REPORT))) - .addMethod( - getListOSPolicyAssignmentReportsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentReportsRequest, - com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentReportsResponse>( - this, METHODID_LIST_OSPOLICY_ASSIGNMENT_REPORTS))) - .addMethod( - getGetInventoryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.GetInventoryRequest, - com.google.cloud.osconfig.v1alpha.Inventory>(this, METHODID_GET_INVENTORY))) - .addMethod( - getListInventoriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.ListInventoriesRequest, - com.google.cloud.osconfig.v1alpha.ListInventoriesResponse>( - this, METHODID_LIST_INVENTORIES))) - .addMethod( - getGetVulnerabilityReportMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.GetVulnerabilityReportRequest, - com.google.cloud.osconfig.v1alpha.VulnerabilityReport>( - this, METHODID_GET_VULNERABILITY_REPORT))) - .addMethod( - getListVulnerabilityReportsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1alpha.ListVulnerabilityReportsRequest, - com.google.cloud.osconfig.v1alpha.ListVulnerabilityReportsResponse>( - this, METHODID_LIST_VULNERABILITY_REPORTS))) - .build(); + return OsConfigZonalServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service OsConfigZonalService. * *
    * Zonal OS Config API
@@ -1449,7 +1367,7 @@ public void listVulnerabilityReports(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service OsConfigZonalService.
    *
    * 
    * Zonal OS Config API
@@ -1689,7 +1607,7 @@ public com.google.cloud.osconfig.v1alpha.VulnerabilityReport getVulnerabilityRep
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service OsConfigZonalService.
    *
    * 
    * Zonal OS Config API
@@ -1969,10 +1887,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final OsConfigZonalServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(OsConfigZonalServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2086,6 +2004,108 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateOSPolicyAssignmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.CreateOSPolicyAssignmentRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_CREATE_OSPOLICY_ASSIGNMENT)))
+        .addMethod(
+            getUpdateOSPolicyAssignmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.UpdateOSPolicyAssignmentRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_UPDATE_OSPOLICY_ASSIGNMENT)))
+        .addMethod(
+            getGetOSPolicyAssignmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.GetOSPolicyAssignmentRequest,
+                    com.google.cloud.osconfig.v1alpha.OSPolicyAssignment>(
+                    service, METHODID_GET_OSPOLICY_ASSIGNMENT)))
+        .addMethod(
+            getListOSPolicyAssignmentsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentsRequest,
+                    com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentsResponse>(
+                    service, METHODID_LIST_OSPOLICY_ASSIGNMENTS)))
+        .addMethod(
+            getListOSPolicyAssignmentRevisionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentRevisionsRequest,
+                    com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentRevisionsResponse>(
+                    service, METHODID_LIST_OSPOLICY_ASSIGNMENT_REVISIONS)))
+        .addMethod(
+            getDeleteOSPolicyAssignmentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.DeleteOSPolicyAssignmentRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_DELETE_OSPOLICY_ASSIGNMENT)))
+        .addMethod(
+            getGetInstanceOSPoliciesComplianceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.GetInstanceOSPoliciesComplianceRequest,
+                    com.google.cloud.osconfig.v1alpha.InstanceOSPoliciesCompliance>(
+                    service, METHODID_GET_INSTANCE_OSPOLICIES_COMPLIANCE)))
+        .addMethod(
+            getListInstanceOSPoliciesCompliancesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.ListInstanceOSPoliciesCompliancesRequest,
+                    com.google.cloud.osconfig.v1alpha.ListInstanceOSPoliciesCompliancesResponse>(
+                    service, METHODID_LIST_INSTANCE_OSPOLICIES_COMPLIANCES)))
+        .addMethod(
+            getGetOSPolicyAssignmentReportMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.GetOSPolicyAssignmentReportRequest,
+                    com.google.cloud.osconfig.v1alpha.OSPolicyAssignmentReport>(
+                    service, METHODID_GET_OSPOLICY_ASSIGNMENT_REPORT)))
+        .addMethod(
+            getListOSPolicyAssignmentReportsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentReportsRequest,
+                    com.google.cloud.osconfig.v1alpha.ListOSPolicyAssignmentReportsResponse>(
+                    service, METHODID_LIST_OSPOLICY_ASSIGNMENT_REPORTS)))
+        .addMethod(
+            getGetInventoryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.GetInventoryRequest,
+                    com.google.cloud.osconfig.v1alpha.Inventory>(service, METHODID_GET_INVENTORY)))
+        .addMethod(
+            getListInventoriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.ListInventoriesRequest,
+                    com.google.cloud.osconfig.v1alpha.ListInventoriesResponse>(
+                    service, METHODID_LIST_INVENTORIES)))
+        .addMethod(
+            getGetVulnerabilityReportMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.GetVulnerabilityReportRequest,
+                    com.google.cloud.osconfig.v1alpha.VulnerabilityReport>(
+                    service, METHODID_GET_VULNERABILITY_REPORT)))
+        .addMethod(
+            getListVulnerabilityReportsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1alpha.ListVulnerabilityReportsRequest,
+                    com.google.cloud.osconfig.v1alpha.ListVulnerabilityReportsResponse>(
+                    service, METHODID_LIST_VULNERABILITY_REPORTS)))
+        .build();
+  }
+
   private abstract static class OsConfigZonalServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-os-config/grpc-google-cloud-os-config-v1beta/src/main/java/com/google/cloud/osconfig/v1beta/OsConfigServiceGrpc.java b/java-os-config/grpc-google-cloud-os-config-v1beta/src/main/java/com/google/cloud/osconfig/v1beta/OsConfigServiceGrpc.java
index 130ffc7618b3..125f4b3b8bc3 100644
--- a/java-os-config/grpc-google-cloud-os-config-v1beta/src/main/java/com/google/cloud/osconfig/v1beta/OsConfigServiceGrpc.java
+++ b/java-os-config/grpc-google-cloud-os-config-v1beta/src/main/java/com/google/cloud/osconfig/v1beta/OsConfigServiceGrpc.java
@@ -982,7 +982,7 @@ public OsConfigServiceFutureStub newStub(
    * manage package installations and patch jobs for virtual machine instances.
    * 
*/ - public abstract static class OsConfigServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -991,7 +991,7 @@ public abstract static class OsConfigServiceImplBase implements io.grpc.Bindable * Patch VM instances by creating and running a patch job. *
*/ - public void executePatchJob( + default void executePatchJob( com.google.cloud.osconfig.v1beta.PatchJobs.ExecutePatchJobRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1007,7 +1007,7 @@ public void executePatchJob( * ongoing patch job or review the details of completed jobs. *
*/ - public void getPatchJob( + default void getPatchJob( com.google.cloud.osconfig.v1beta.PatchJobs.GetPatchJobRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1023,7 +1023,7 @@ public void getPatchJob( * cannot be restarted. * */ - public void cancelPatchJob( + default void cancelPatchJob( com.google.cloud.osconfig.v1beta.PatchJobs.CancelPatchJobRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1038,7 +1038,7 @@ public void cancelPatchJob( * Get a list of patch jobs. * */ - public void listPatchJobs( + default void listPatchJobs( com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobsResponse> @@ -1054,7 +1054,7 @@ public void listPatchJobs( * Get a list of instance details for a given patch job. * */ - public void listPatchJobInstanceDetails( + default void listPatchJobInstanceDetails( com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobInstanceDetailsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobInstanceDetailsResponse> @@ -1070,7 +1070,7 @@ public void listPatchJobInstanceDetails( * Create an OS Config patch deployment. * */ - public void createPatchDeployment( + default void createPatchDeployment( com.google.cloud.osconfig.v1beta.PatchDeployments.CreatePatchDeploymentRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment> @@ -1086,7 +1086,7 @@ public void createPatchDeployment( * Get an OS Config patch deployment. * */ - public void getPatchDeployment( + default void getPatchDeployment( com.google.cloud.osconfig.v1beta.PatchDeployments.GetPatchDeploymentRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment> @@ -1102,7 +1102,7 @@ public void getPatchDeployment( * Get a page of OS Config patch deployments. * */ - public void listPatchDeployments( + default void listPatchDeployments( com.google.cloud.osconfig.v1beta.PatchDeployments.ListPatchDeploymentsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.PatchDeployments.ListPatchDeploymentsResponse> @@ -1118,7 +1118,7 @@ public void listPatchDeployments( * Delete an OS Config patch deployment. * */ - public void deletePatchDeployment( + default void deletePatchDeployment( com.google.cloud.osconfig.v1beta.PatchDeployments.DeletePatchDeploymentRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1132,7 +1132,7 @@ public void deletePatchDeployment( * Update an OS Config patch deployment. * */ - public void updatePatchDeployment( + default void updatePatchDeployment( com.google.cloud.osconfig.v1beta.PatchDeployments.UpdatePatchDeploymentRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment> @@ -1149,7 +1149,7 @@ public void updatePatchDeployment( * Patch deployment in paused state doesn't generate patch jobs. * */ - public void pausePatchDeployment( + default void pausePatchDeployment( com.google.cloud.osconfig.v1beta.PatchDeployments.PausePatchDeploymentRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment> @@ -1166,7 +1166,7 @@ public void pausePatchDeployment( * Patch deployment in active state continues to generate patch jobs. * */ - public void resumePatchDeployment( + default void resumePatchDeployment( com.google.cloud.osconfig.v1beta.PatchDeployments.ResumePatchDeploymentRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment> @@ -1182,7 +1182,7 @@ public void resumePatchDeployment( * Create an OS Config guest policy. * */ - public void createGuestPolicy( + default void createGuestPolicy( com.google.cloud.osconfig.v1beta.GuestPolicies.CreateGuestPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1197,7 +1197,7 @@ public void createGuestPolicy( * Get an OS Config guest policy. * */ - public void getGuestPolicy( + default void getGuestPolicy( com.google.cloud.osconfig.v1beta.GuestPolicies.GetGuestPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1212,7 +1212,7 @@ public void getGuestPolicy( * Get a page of OS Config guest policies. * */ - public void listGuestPolicies( + default void listGuestPolicies( com.google.cloud.osconfig.v1beta.GuestPolicies.ListGuestPoliciesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.GuestPolicies.ListGuestPoliciesResponse> @@ -1228,7 +1228,7 @@ public void listGuestPolicies( * Update an OS Config guest policy. * */ - public void updateGuestPolicy( + default void updateGuestPolicy( com.google.cloud.osconfig.v1beta.GuestPolicies.UpdateGuestPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1243,7 +1243,7 @@ public void updateGuestPolicy( * Delete an OS Config guest policy. * */ - public void deleteGuestPolicy( + default void deleteGuestPolicy( com.google.cloud.osconfig.v1beta.GuestPolicies.DeleteGuestPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1258,7 +1258,7 @@ public void deleteGuestPolicy( * lookup merges all policies that are assigned to the instance ancestry. * */ - public void lookupEffectiveGuestPolicy( + default void lookupEffectiveGuestPolicy( com.google.cloud.osconfig.v1beta.GuestPolicies.LookupEffectiveGuestPolicyRequest request, io.grpc.stub.StreamObserver< com.google.cloud.osconfig.v1beta.GuestPolicies.EffectiveGuestPolicy> @@ -1266,146 +1266,28 @@ public void lookupEffectiveGuestPolicy( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getLookupEffectiveGuestPolicyMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service OsConfigService. + * + *
+   * OS Config API
+   * The OS Config service is a server-side component that you can use to
+   * manage package installations and patch jobs for virtual machine instances.
+   * 
+ */ + public abstract static class OsConfigServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getExecutePatchJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchJobs.ExecutePatchJobRequest, - com.google.cloud.osconfig.v1beta.PatchJobs.PatchJob>( - this, METHODID_EXECUTE_PATCH_JOB))) - .addMethod( - getGetPatchJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchJobs.GetPatchJobRequest, - com.google.cloud.osconfig.v1beta.PatchJobs.PatchJob>( - this, METHODID_GET_PATCH_JOB))) - .addMethod( - getCancelPatchJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchJobs.CancelPatchJobRequest, - com.google.cloud.osconfig.v1beta.PatchJobs.PatchJob>( - this, METHODID_CANCEL_PATCH_JOB))) - .addMethod( - getListPatchJobsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobsRequest, - com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobsResponse>( - this, METHODID_LIST_PATCH_JOBS))) - .addMethod( - getListPatchJobInstanceDetailsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobInstanceDetailsRequest, - com.google.cloud.osconfig.v1beta.PatchJobs - .ListPatchJobInstanceDetailsResponse>( - this, METHODID_LIST_PATCH_JOB_INSTANCE_DETAILS))) - .addMethod( - getCreatePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchDeployments - .CreatePatchDeploymentRequest, - com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>( - this, METHODID_CREATE_PATCH_DEPLOYMENT))) - .addMethod( - getGetPatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchDeployments.GetPatchDeploymentRequest, - com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>( - this, METHODID_GET_PATCH_DEPLOYMENT))) - .addMethod( - getListPatchDeploymentsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchDeployments.ListPatchDeploymentsRequest, - com.google.cloud.osconfig.v1beta.PatchDeployments - .ListPatchDeploymentsResponse>(this, METHODID_LIST_PATCH_DEPLOYMENTS))) - .addMethod( - getDeletePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchDeployments - .DeletePatchDeploymentRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PATCH_DEPLOYMENT))) - .addMethod( - getUpdatePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchDeployments - .UpdatePatchDeploymentRequest, - com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>( - this, METHODID_UPDATE_PATCH_DEPLOYMENT))) - .addMethod( - getPausePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchDeployments.PausePatchDeploymentRequest, - com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>( - this, METHODID_PAUSE_PATCH_DEPLOYMENT))) - .addMethod( - getResumePatchDeploymentMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.PatchDeployments - .ResumePatchDeploymentRequest, - com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>( - this, METHODID_RESUME_PATCH_DEPLOYMENT))) - .addMethod( - getCreateGuestPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.GuestPolicies.CreateGuestPolicyRequest, - com.google.cloud.osconfig.v1beta.GuestPolicies.GuestPolicy>( - this, METHODID_CREATE_GUEST_POLICY))) - .addMethod( - getGetGuestPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.GuestPolicies.GetGuestPolicyRequest, - com.google.cloud.osconfig.v1beta.GuestPolicies.GuestPolicy>( - this, METHODID_GET_GUEST_POLICY))) - .addMethod( - getListGuestPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.GuestPolicies.ListGuestPoliciesRequest, - com.google.cloud.osconfig.v1beta.GuestPolicies.ListGuestPoliciesResponse>( - this, METHODID_LIST_GUEST_POLICIES))) - .addMethod( - getUpdateGuestPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.GuestPolicies.UpdateGuestPolicyRequest, - com.google.cloud.osconfig.v1beta.GuestPolicies.GuestPolicy>( - this, METHODID_UPDATE_GUEST_POLICY))) - .addMethod( - getDeleteGuestPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.GuestPolicies.DeleteGuestPolicyRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_GUEST_POLICY))) - .addMethod( - getLookupEffectiveGuestPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.osconfig.v1beta.GuestPolicies - .LookupEffectiveGuestPolicyRequest, - com.google.cloud.osconfig.v1beta.GuestPolicies.EffectiveGuestPolicy>( - this, METHODID_LOOKUP_EFFECTIVE_GUEST_POLICY))) - .build(); + return OsConfigServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service OsConfigService. * *
    * OS Config API
@@ -1745,7 +1627,7 @@ public void lookupEffectiveGuestPolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service OsConfigService.
    *
    * 
    * OS Config API
@@ -2011,7 +1893,7 @@ public com.google.protobuf.Empty deleteGuestPolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service OsConfigService.
    *
    * 
    * OS Config API
@@ -2330,10 +2212,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final OsConfigServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(OsConfigServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2487,6 +2369,136 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getExecutePatchJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchJobs.ExecutePatchJobRequest,
+                    com.google.cloud.osconfig.v1beta.PatchJobs.PatchJob>(
+                    service, METHODID_EXECUTE_PATCH_JOB)))
+        .addMethod(
+            getGetPatchJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchJobs.GetPatchJobRequest,
+                    com.google.cloud.osconfig.v1beta.PatchJobs.PatchJob>(
+                    service, METHODID_GET_PATCH_JOB)))
+        .addMethod(
+            getCancelPatchJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchJobs.CancelPatchJobRequest,
+                    com.google.cloud.osconfig.v1beta.PatchJobs.PatchJob>(
+                    service, METHODID_CANCEL_PATCH_JOB)))
+        .addMethod(
+            getListPatchJobsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobsRequest,
+                    com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobsResponse>(
+                    service, METHODID_LIST_PATCH_JOBS)))
+        .addMethod(
+            getListPatchJobInstanceDetailsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobInstanceDetailsRequest,
+                    com.google.cloud.osconfig.v1beta.PatchJobs.ListPatchJobInstanceDetailsResponse>(
+                    service, METHODID_LIST_PATCH_JOB_INSTANCE_DETAILS)))
+        .addMethod(
+            getCreatePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.CreatePatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>(
+                    service, METHODID_CREATE_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getGetPatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.GetPatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>(
+                    service, METHODID_GET_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getListPatchDeploymentsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.ListPatchDeploymentsRequest,
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.ListPatchDeploymentsResponse>(
+                    service, METHODID_LIST_PATCH_DEPLOYMENTS)))
+        .addMethod(
+            getDeletePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.DeletePatchDeploymentRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getUpdatePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.UpdatePatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>(
+                    service, METHODID_UPDATE_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getPausePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.PausePatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>(
+                    service, METHODID_PAUSE_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getResumePatchDeploymentMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.ResumePatchDeploymentRequest,
+                    com.google.cloud.osconfig.v1beta.PatchDeployments.PatchDeployment>(
+                    service, METHODID_RESUME_PATCH_DEPLOYMENT)))
+        .addMethod(
+            getCreateGuestPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.CreateGuestPolicyRequest,
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.GuestPolicy>(
+                    service, METHODID_CREATE_GUEST_POLICY)))
+        .addMethod(
+            getGetGuestPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.GetGuestPolicyRequest,
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.GuestPolicy>(
+                    service, METHODID_GET_GUEST_POLICY)))
+        .addMethod(
+            getListGuestPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.ListGuestPoliciesRequest,
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.ListGuestPoliciesResponse>(
+                    service, METHODID_LIST_GUEST_POLICIES)))
+        .addMethod(
+            getUpdateGuestPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.UpdateGuestPolicyRequest,
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.GuestPolicy>(
+                    service, METHODID_UPDATE_GUEST_POLICY)))
+        .addMethod(
+            getDeleteGuestPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.DeleteGuestPolicyRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_GUEST_POLICY)))
+        .addMethod(
+            getLookupEffectiveGuestPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.osconfig.v1beta.GuestPolicies
+                        .LookupEffectiveGuestPolicyRequest,
+                    com.google.cloud.osconfig.v1beta.GuestPolicies.EffectiveGuestPolicy>(
+                    service, METHODID_LOOKUP_EFFECTIVE_GUEST_POLICY)))
+        .build();
+  }
+
   private abstract static class OsConfigServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-os-login/README.md b/java-os-login/README.md
index ec532d3f4993..1ce20774de6f 100644
--- a/java-os-login/README.md
+++ b/java-os-login/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud OS Login][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Cloud OS Login [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud OS Login.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-os-login.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-os-login&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-os-login/2.12.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-os-login/grpc-google-cloud-os-login-v1/src/main/java/com/google/cloud/oslogin/v1/OsLoginServiceGrpc.java b/java-os-login/grpc-google-cloud-os-login-v1/src/main/java/com/google/cloud/oslogin/v1/OsLoginServiceGrpc.java
index 75622e1a2134..f92aa71393aa 100644
--- a/java-os-login/grpc-google-cloud-os-login-v1/src/main/java/com/google/cloud/oslogin/v1/OsLoginServiceGrpc.java
+++ b/java-os-login/grpc-google-cloud-os-login-v1/src/main/java/com/google/cloud/oslogin/v1/OsLoginServiceGrpc.java
@@ -412,7 +412,7 @@ public OsLoginServiceFutureStub newStub(
    * public keys for logging into virtual machines on Google Cloud Platform.
    * 
*/ - public abstract static class OsLoginServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -421,7 +421,7 @@ public abstract static class OsLoginServiceImplBase implements io.grpc.BindableS * Create an SSH public key *
*/ - public void createSshPublicKey( + default void createSshPublicKey( com.google.cloud.oslogin.v1.CreateSshPublicKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -436,7 +436,7 @@ public void createSshPublicKey( * Deletes a POSIX account. *
*/ - public void deletePosixAccount( + default void deletePosixAccount( com.google.cloud.oslogin.v1.DeletePosixAccountRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -450,7 +450,7 @@ public void deletePosixAccount( * Deletes an SSH public key. * */ - public void deleteSshPublicKey( + default void deleteSshPublicKey( com.google.cloud.oslogin.v1.DeleteSshPublicKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -465,7 +465,7 @@ public void deleteSshPublicKey( * on Google Compute Engine. * */ - public void getLoginProfile( + default void getLoginProfile( com.google.cloud.oslogin.v1.GetLoginProfileRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -479,7 +479,7 @@ public void getLoginProfile( * Retrieves an SSH public key. * */ - public void getSshPublicKey( + default void getSshPublicKey( com.google.cloud.oslogin.v1.GetSshPublicKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -496,7 +496,7 @@ public void getSshPublicKey( * login profile. * */ - public void importSshPublicKey( + default void importSshPublicKey( com.google.cloud.oslogin.v1.ImportSshPublicKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -512,69 +512,35 @@ public void importSshPublicKey( * supports patch semantics. * */ - public void updateSshPublicKey( + default void updateSshPublicKey( com.google.cloud.oslogin.v1.UpdateSshPublicKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getUpdateSshPublicKeyMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service OsLoginService. + * + *
+   * Cloud OS Login API
+   * The Cloud OS Login API allows you to manage users and their associated SSH
+   * public keys for logging into virtual machines on Google Cloud Platform.
+   * 
+ */ + public abstract static class OsLoginServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateSshPublicKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.oslogin.v1.CreateSshPublicKeyRequest, - com.google.cloud.oslogin.common.OsLoginProto.SshPublicKey>( - this, METHODID_CREATE_SSH_PUBLIC_KEY))) - .addMethod( - getDeletePosixAccountMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.oslogin.v1.DeletePosixAccountRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_POSIX_ACCOUNT))) - .addMethod( - getDeleteSshPublicKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.oslogin.v1.DeleteSshPublicKeyRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_SSH_PUBLIC_KEY))) - .addMethod( - getGetLoginProfileMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.oslogin.v1.GetLoginProfileRequest, - com.google.cloud.oslogin.v1.LoginProfile>(this, METHODID_GET_LOGIN_PROFILE))) - .addMethod( - getGetSshPublicKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.oslogin.v1.GetSshPublicKeyRequest, - com.google.cloud.oslogin.common.OsLoginProto.SshPublicKey>( - this, METHODID_GET_SSH_PUBLIC_KEY))) - .addMethod( - getImportSshPublicKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.oslogin.v1.ImportSshPublicKeyRequest, - com.google.cloud.oslogin.v1.ImportSshPublicKeyResponse>( - this, METHODID_IMPORT_SSH_PUBLIC_KEY))) - .addMethod( - getUpdateSshPublicKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.oslogin.v1.UpdateSshPublicKeyRequest, - com.google.cloud.oslogin.common.OsLoginProto.SshPublicKey>( - this, METHODID_UPDATE_SSH_PUBLIC_KEY))) - .build(); + return OsLoginServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service OsLoginService. * *
    * Cloud OS Login API
@@ -715,7 +681,7 @@ public void updateSshPublicKey(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service OsLoginService.
    *
    * 
    * Cloud OS Login API
@@ -832,7 +798,7 @@ public com.google.cloud.oslogin.common.OsLoginProto.SshPublicKey updateSshPublic
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service OsLoginService.
    *
    * 
    * Cloud OS Login API
@@ -966,10 +932,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final OsLoginServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(OsLoginServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1037,6 +1003,57 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateSshPublicKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.oslogin.v1.CreateSshPublicKeyRequest,
+                    com.google.cloud.oslogin.common.OsLoginProto.SshPublicKey>(
+                    service, METHODID_CREATE_SSH_PUBLIC_KEY)))
+        .addMethod(
+            getDeletePosixAccountMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.oslogin.v1.DeletePosixAccountRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_POSIX_ACCOUNT)))
+        .addMethod(
+            getDeleteSshPublicKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.oslogin.v1.DeleteSshPublicKeyRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_SSH_PUBLIC_KEY)))
+        .addMethod(
+            getGetLoginProfileMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.oslogin.v1.GetLoginProfileRequest,
+                    com.google.cloud.oslogin.v1.LoginProfile>(service, METHODID_GET_LOGIN_PROFILE)))
+        .addMethod(
+            getGetSshPublicKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.oslogin.v1.GetSshPublicKeyRequest,
+                    com.google.cloud.oslogin.common.OsLoginProto.SshPublicKey>(
+                    service, METHODID_GET_SSH_PUBLIC_KEY)))
+        .addMethod(
+            getImportSshPublicKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.oslogin.v1.ImportSshPublicKeyRequest,
+                    com.google.cloud.oslogin.v1.ImportSshPublicKeyResponse>(
+                    service, METHODID_IMPORT_SSH_PUBLIC_KEY)))
+        .addMethod(
+            getUpdateSshPublicKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.oslogin.v1.UpdateSshPublicKeyRequest,
+                    com.google.cloud.oslogin.common.OsLoginProto.SshPublicKey>(
+                    service, METHODID_UPDATE_SSH_PUBLIC_KEY)))
+        .build();
+  }
+
   private abstract static class OsLoginServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-phishingprotection/README.md b/java-phishingprotection/README.md
index c008d7ec6e3e..7e52c8769124 100644
--- a/java-phishingprotection/README.md
+++ b/java-phishingprotection/README.md
@@ -16,9 +16,9 @@ Java idiomatic client for [Phishing Protection][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -55,7 +55,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Phishing Protection [API enabled][enable-api].
 
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -179,14 +179,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-preview-yellow
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-phishingprotection.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-phishingprotection&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-phishingprotection/0.44.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-phishingprotection/grpc-google-cloud-phishingprotection-v1beta1/src/main/java/com/google/phishingprotection/v1beta1/PhishingProtectionServiceV1Beta1Grpc.java b/java-phishingprotection/grpc-google-cloud-phishingprotection-v1beta1/src/main/java/com/google/phishingprotection/v1beta1/PhishingProtectionServiceV1Beta1Grpc.java
index 7b57612ebb3f..04eb829d6470 100644
--- a/java-phishingprotection/grpc-google-cloud-phishingprotection-v1beta1/src/main/java/com/google/phishingprotection/v1beta1/PhishingProtectionServiceV1Beta1Grpc.java
+++ b/java-phishingprotection/grpc-google-cloud-phishingprotection-v1beta1/src/main/java/com/google/phishingprotection/v1beta1/PhishingProtectionServiceV1Beta1Grpc.java
@@ -135,8 +135,7 @@ public PhishingProtectionServiceV1Beta1FutureStub newStub(
    * Service to report phishing URIs.
    * 
*/ - public abstract static class PhishingProtectionServiceV1Beta1ImplBase - implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -151,30 +150,34 @@ public abstract static class PhishingProtectionServiceV1Beta1ImplBase * protect users that could get exposed to this threat in the future. *
*/ - public void reportPhishing( + default void reportPhishing( com.google.phishingprotection.v1beta1.ReportPhishingRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getReportPhishingMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service PhishingProtectionServiceV1Beta1. + * + *
+   * Service to report phishing URIs.
+   * 
+ */ + public abstract static class PhishingProtectionServiceV1Beta1ImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getReportPhishingMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.phishingprotection.v1beta1.ReportPhishingRequest, - com.google.phishingprotection.v1beta1.ReportPhishingResponse>( - this, METHODID_REPORT_PHISHING))) - .build(); + return PhishingProtectionServiceV1Beta1Grpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service + * PhishingProtectionServiceV1Beta1. * *
    * Service to report phishing URIs.
@@ -218,7 +221,8 @@ public void reportPhishing(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service
+   * PhishingProtectionServiceV1Beta1.
    *
    * 
    * Service to report phishing URIs.
@@ -258,7 +262,8 @@ public com.google.phishingprotection.v1beta1.ReportPhishingResponse reportPhishi
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service
+   * PhishingProtectionServiceV1Beta1.
    *
    * 
    * Service to report phishing URIs.
@@ -305,10 +310,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final PhishingProtectionServiceV1Beta1ImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(PhishingProtectionServiceV1Beta1ImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -340,6 +345,18 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getReportPhishingMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.phishingprotection.v1beta1.ReportPhishingRequest,
+                    com.google.phishingprotection.v1beta1.ReportPhishingResponse>(
+                    service, METHODID_REPORT_PHISHING)))
+        .build();
+  }
+
   private abstract static class PhishingProtectionServiceV1Beta1BaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-policy-troubleshooter/README.md b/java-policy-troubleshooter/README.md
index d8d7fc5d0095..8b3e90def406 100644
--- a/java-policy-troubleshooter/README.md
+++ b/java-policy-troubleshooter/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [IAM Policy Troubleshooter API][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the IAM Policy Troubleshooter API [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google IAM Policy Troubleshooter API.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-policy-troubleshooter.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-policy-troubleshooter&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-policy-troubleshooter/1.12.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-policy-troubleshooter/grpc-google-cloud-policy-troubleshooter-v1/src/main/java/com/google/cloud/policytroubleshooter/v1/IamCheckerGrpc.java b/java-policy-troubleshooter/grpc-google-cloud-policy-troubleshooter-v1/src/main/java/com/google/cloud/policytroubleshooter/v1/IamCheckerGrpc.java
index bbbbc389ba2c..bba3f2a2d8cc 100644
--- a/java-policy-troubleshooter/grpc-google-cloud-policy-troubleshooter-v1/src/main/java/com/google/cloud/policytroubleshooter/v1/IamCheckerGrpc.java
+++ b/java-policy-troubleshooter/grpc-google-cloud-policy-troubleshooter-v1/src/main/java/com/google/cloud/policytroubleshooter/v1/IamCheckerGrpc.java
@@ -133,7 +133,7 @@ public IamCheckerFutureStub newStub(
    * This service helps you troubleshoot access issues for Google Cloud resources.
    * 
*/ - public abstract static class IamCheckerImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -143,7 +143,7 @@ public abstract static class IamCheckerImplBase implements io.grpc.BindableServi * and explains why the member does or does not have that permission. *
*/ - public void troubleshootIamPolicy( + default void troubleshootIamPolicy( com.google.cloud.policytroubleshooter.v1.TroubleshootIamPolicyRequest request, io.grpc.stub.StreamObserver< com.google.cloud.policytroubleshooter.v1.TroubleshootIamPolicyResponse> @@ -151,23 +151,26 @@ public void troubleshootIamPolicy( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getTroubleshootIamPolicyMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service IamChecker. + * + *
+   * IAM Policy Troubleshooter service.
+   * This service helps you troubleshoot access issues for Google Cloud resources.
+   * 
+ */ + public abstract static class IamCheckerImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getTroubleshootIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.policytroubleshooter.v1.TroubleshootIamPolicyRequest, - com.google.cloud.policytroubleshooter.v1.TroubleshootIamPolicyResponse>( - this, METHODID_TROUBLESHOOT_IAM_POLICY))) - .build(); + return IamCheckerGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service IamChecker. * *
    * IAM Policy Troubleshooter service.
@@ -205,7 +208,7 @@ public void troubleshootIamPolicy(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service IamChecker.
    *
    * 
    * IAM Policy Troubleshooter service.
@@ -241,7 +244,7 @@ protected IamCheckerBlockingStub build(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service IamChecker.
    *
    * 
    * IAM Policy Troubleshooter service.
@@ -283,10 +286,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final IamCheckerImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(IamCheckerImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -318,6 +321,18 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getTroubleshootIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.policytroubleshooter.v1.TroubleshootIamPolicyRequest,
+                    com.google.cloud.policytroubleshooter.v1.TroubleshootIamPolicyResponse>(
+                    service, METHODID_TROUBLESHOOT_IAM_POLICY)))
+        .build();
+  }
+
   private abstract static class IamCheckerBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-private-catalog/README.md b/java-private-catalog/README.md
index 5d1298860f25..4341c8bae050 100644
--- a/java-private-catalog/README.md
+++ b/java-private-catalog/README.md
@@ -16,9 +16,9 @@ Java idiomatic client for [Private Catalog][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -55,7 +55,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Private Catalog [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Private Catalog.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -179,14 +179,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-preview-yellow
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-private-catalog.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-private-catalog&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-private-catalog/0.15.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-private-catalog/grpc-google-cloud-private-catalog-v1beta1/src/main/java/com/google/cloud/privatecatalog/v1beta1/PrivateCatalogGrpc.java b/java-private-catalog/grpc-google-cloud-private-catalog-v1beta1/src/main/java/com/google/cloud/privatecatalog/v1beta1/PrivateCatalogGrpc.java
index 76e493092517..239eec0964b5 100644
--- a/java-private-catalog/grpc-google-cloud-private-catalog-v1beta1/src/main/java/com/google/cloud/privatecatalog/v1beta1/PrivateCatalogGrpc.java
+++ b/java-private-catalog/grpc-google-cloud-private-catalog-v1beta1/src/main/java/com/google/cloud/privatecatalog/v1beta1/PrivateCatalogGrpc.java
@@ -258,7 +258,7 @@ public PrivateCatalogFutureStub newStub(
    * [google.cloud.privatecatalogproducer.v1beta.Version][].
    * 
*/ - public abstract static class PrivateCatalogImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -268,7 +268,7 @@ public abstract static class PrivateCatalogImplBase implements io.grpc.BindableS * scope of the consumer cloud resource hierarchy context. *
*/ - public void searchCatalogs( + default void searchCatalogs( com.google.cloud.privatecatalog.v1beta1.SearchCatalogsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -284,7 +284,7 @@ public void searchCatalogs( * scope of the consumer cloud resource hierarchy context. *
*/ - public void searchProducts( + default void searchProducts( com.google.cloud.privatecatalog.v1beta1.SearchProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -300,44 +300,50 @@ public void searchProducts( * scope of the consumer cloud resource hierarchy context. *
*/ - public void searchVersions( + default void searchVersions( com.google.cloud.privatecatalog.v1beta1.SearchVersionsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getSearchVersionsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service PrivateCatalog. + * + *
+   * `PrivateCatalog` allows catalog consumers to retrieve `Catalog`, `Product`
+   * and `Version` resources under a target resource context.
+   * `Catalog` is computed based on the [Association][]s linked to the target
+   * resource and its ancestors. Each association's
+   * [google.cloud.privatecatalogproducer.v1beta.Catalog][] is transformed into a
+   * `Catalog`. If multiple associations have the same parent
+   * [google.cloud.privatecatalogproducer.v1beta.Catalog][], they are
+   * de-duplicated into one `Catalog`. Users must have
+   * `cloudprivatecatalog.catalogTargets.get` IAM permission on the resource
+   * context in order to access catalogs. `Catalog` contains the resource name and
+   * a subset of data of the original
+   * [google.cloud.privatecatalogproducer.v1beta.Catalog][].
+   * `Product` is child resource of the catalog. A `Product` contains the resource
+   * name and a subset of the data of the original
+   * [google.cloud.privatecatalogproducer.v1beta.Product][].
+   * `Version` is child resource of the product. A `Version` contains the resource
+   * name and a subset of the data of the original
+   * [google.cloud.privatecatalogproducer.v1beta.Version][].
+   * 
+ */ + public abstract static class PrivateCatalogImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getSearchCatalogsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.privatecatalog.v1beta1.SearchCatalogsRequest, - com.google.cloud.privatecatalog.v1beta1.SearchCatalogsResponse>( - this, METHODID_SEARCH_CATALOGS))) - .addMethod( - getSearchProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.privatecatalog.v1beta1.SearchProductsRequest, - com.google.cloud.privatecatalog.v1beta1.SearchProductsResponse>( - this, METHODID_SEARCH_PRODUCTS))) - .addMethod( - getSearchVersionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.privatecatalog.v1beta1.SearchVersionsRequest, - com.google.cloud.privatecatalog.v1beta1.SearchVersionsResponse>( - this, METHODID_SEARCH_VERSIONS))) - .build(); + return PrivateCatalogGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service PrivateCatalog. * *
    * `PrivateCatalog` allows catalog consumers to retrieve `Catalog`, `Product`
@@ -427,7 +433,7 @@ public void searchVersions(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service PrivateCatalog.
    *
    * 
    * `PrivateCatalog` allows catalog consumers to retrieve `Catalog`, `Product`
@@ -506,7 +512,7 @@ public com.google.cloud.privatecatalog.v1beta1.SearchVersionsResponse searchVers
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service PrivateCatalog.
    *
    * 
    * `PrivateCatalog` allows catalog consumers to retrieve `Catalog`, `Product`
@@ -596,10 +602,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final PrivateCatalogImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(PrivateCatalogImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -645,6 +651,32 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getSearchCatalogsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.privatecatalog.v1beta1.SearchCatalogsRequest,
+                    com.google.cloud.privatecatalog.v1beta1.SearchCatalogsResponse>(
+                    service, METHODID_SEARCH_CATALOGS)))
+        .addMethod(
+            getSearchProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.privatecatalog.v1beta1.SearchProductsRequest,
+                    com.google.cloud.privatecatalog.v1beta1.SearchProductsResponse>(
+                    service, METHODID_SEARCH_PRODUCTS)))
+        .addMethod(
+            getSearchVersionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.privatecatalog.v1beta1.SearchVersionsRequest,
+                    com.google.cloud.privatecatalog.v1beta1.SearchVersionsResponse>(
+                    service, METHODID_SEARCH_VERSIONS)))
+        .build();
+  }
+
   private abstract static class PrivateCatalogBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-profiler/README.md b/java-profiler/README.md
index 6b9bf0913536..a1e7c725530a 100644
--- a/java-profiler/README.md
+++ b/java-profiler/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud Profiler][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Profiler [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud Profiler.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-profiler.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-profiler&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-profiler/2.13.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-profiler/grpc-google-cloud-profiler-v2/src/main/java/com/google/devtools/cloudprofiler/v2/ProfilerServiceGrpc.java b/java-profiler/grpc-google-cloud-profiler-v2/src/main/java/com/google/devtools/cloudprofiler/v2/ProfilerServiceGrpc.java
index 22d5b47276f8..054e22dffa65 100644
--- a/java-profiler/grpc-google-cloud-profiler-v2/src/main/java/com/google/devtools/cloudprofiler/v2/ProfilerServiceGrpc.java
+++ b/java-profiler/grpc-google-cloud-profiler-v2/src/main/java/com/google/devtools/cloudprofiler/v2/ProfilerServiceGrpc.java
@@ -232,7 +232,7 @@ public ProfilerServiceFutureStub newStub(
    * * Profiles can be created in either online or offline mode, see below.
    * 
*/ - public abstract static class ProfilerServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -251,7 +251,7 @@ public abstract static class ProfilerServiceImplBase implements io.grpc.Bindable * "google.rpc.retryinfo-bin". *
*/ - public void createProfile( + default void createProfile( com.google.devtools.cloudprofiler.v2.CreateProfileRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -268,7 +268,7 @@ public void createProfile( * server records it. *
*/ - public void createOfflineProfile( + default void createOfflineProfile( com.google.devtools.cloudprofiler.v2.CreateOfflineProfileRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -286,42 +286,37 @@ public void createOfflineProfile( * provided at the time of the profile creation. *
*/ - public void updateProfile( + default void updateProfile( com.google.devtools.cloudprofiler.v2.UpdateProfileRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getUpdateProfileMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ProfilerService. + * + *
+   * Manage the collection of continuous profiling data provided by profiling
+   * agents running in the cloud or by an offline provider of profiling data.
+   * General guidelines:
+   * * Profiles for a single deployment must be created in ascending time order.
+   * * Profiles can be created in either online or offline mode, see below.
+   * 
+ */ + public abstract static class ProfilerServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateProfileMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.devtools.cloudprofiler.v2.CreateProfileRequest, - com.google.devtools.cloudprofiler.v2.Profile>(this, METHODID_CREATE_PROFILE))) - .addMethod( - getCreateOfflineProfileMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.devtools.cloudprofiler.v2.CreateOfflineProfileRequest, - com.google.devtools.cloudprofiler.v2.Profile>( - this, METHODID_CREATE_OFFLINE_PROFILE))) - .addMethod( - getUpdateProfileMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.devtools.cloudprofiler.v2.UpdateProfileRequest, - com.google.devtools.cloudprofiler.v2.Profile>(this, METHODID_UPDATE_PROFILE))) - .build(); + return ProfilerServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ProfilerService. * *
    * Manage the collection of continuous profiling data provided by profiling
@@ -410,7 +405,7 @@ public void updateProfile(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ProfilerService.
    *
    * 
    * Manage the collection of continuous profiling data provided by profiling
@@ -488,7 +483,7 @@ public com.google.devtools.cloudprofiler.v2.Profile updateProfile(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ProfilerService.
    *
    * 
    * Manage the collection of continuous profiling data provided by profiling
@@ -578,10 +573,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ProfilerServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ProfilerServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -624,6 +619,32 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateProfileMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.devtools.cloudprofiler.v2.CreateProfileRequest,
+                    com.google.devtools.cloudprofiler.v2.Profile>(
+                    service, METHODID_CREATE_PROFILE)))
+        .addMethod(
+            getCreateOfflineProfileMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.devtools.cloudprofiler.v2.CreateOfflineProfileRequest,
+                    com.google.devtools.cloudprofiler.v2.Profile>(
+                    service, METHODID_CREATE_OFFLINE_PROFILE)))
+        .addMethod(
+            getUpdateProfileMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.devtools.cloudprofiler.v2.UpdateProfileRequest,
+                    com.google.devtools.cloudprofiler.v2.Profile>(
+                    service, METHODID_UPDATE_PROFILE)))
+        .build();
+  }
+
   private abstract static class ProfilerServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-publicca/README.md b/java-publicca/README.md
index 98cac492d15f..7fb7548cf4ae 100644
--- a/java-publicca/README.md
+++ b/java-publicca/README.md
@@ -16,9 +16,9 @@ Java idiomatic client for [Public Certificate Authority][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -55,7 +55,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Public Certificate Authority [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Public Certificate Authority.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -179,14 +179,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-preview-yellow
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-publicca.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-publicca&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-publicca/0.10.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-publicca/grpc-google-cloud-publicca-v1beta1/src/main/java/com/google/cloud/security/publicca/v1beta1/PublicCertificateAuthorityServiceGrpc.java b/java-publicca/grpc-google-cloud-publicca-v1beta1/src/main/java/com/google/cloud/security/publicca/v1beta1/PublicCertificateAuthorityServiceGrpc.java
index 66b7115cbd08..4e624382a6d1 100644
--- a/java-publicca/grpc-google-cloud-publicca-v1beta1/src/main/java/com/google/cloud/security/publicca/v1beta1/PublicCertificateAuthorityServiceGrpc.java
+++ b/java-publicca/grpc-google-cloud-publicca-v1beta1/src/main/java/com/google/cloud/security/publicca/v1beta1/PublicCertificateAuthorityServiceGrpc.java
@@ -143,8 +143,7 @@ public PublicCertificateAuthorityServiceFutureStub newStub(
    * the public certificate authority service.
    * 
*/ - public abstract static class PublicCertificateAuthorityServiceImplBase - implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -153,30 +152,36 @@ public abstract static class PublicCertificateAuthorityServiceImplBase * Creates a new [ExternalAccountKey][google.cloud.security.publicca.v1beta1.ExternalAccountKey] bound to the project. *
*/ - public void createExternalAccountKey( + default void createExternalAccountKey( com.google.cloud.security.publicca.v1beta1.CreateExternalAccountKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getCreateExternalAccountKeyMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service PublicCertificateAuthorityService. + * + *
+   * Manages the resources required for ACME [external account
+   * binding](https://tools.ietf.org/html/rfc8555#section-7.3.4) for
+   * the public certificate authority service.
+   * 
+ */ + public abstract static class PublicCertificateAuthorityServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateExternalAccountKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.security.publicca.v1beta1.CreateExternalAccountKeyRequest, - com.google.cloud.security.publicca.v1beta1.ExternalAccountKey>( - this, METHODID_CREATE_EXTERNAL_ACCOUNT_KEY))) - .build(); + return PublicCertificateAuthorityServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service + * PublicCertificateAuthorityService. * *
    * Manages the resources required for ACME [external account
@@ -216,7 +221,8 @@ public void createExternalAccountKey(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service
+   * PublicCertificateAuthorityService.
    *
    * 
    * Manages the resources required for ACME [external account
@@ -252,7 +258,8 @@ public com.google.cloud.security.publicca.v1beta1.ExternalAccountKey createExter
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service
+   * PublicCertificateAuthorityService.
    *
    * 
    * Manages the resources required for ACME [external account
@@ -296,10 +303,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final PublicCertificateAuthorityServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(PublicCertificateAuthorityServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -331,6 +338,18 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateExternalAccountKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.security.publicca.v1beta1.CreateExternalAccountKeyRequest,
+                    com.google.cloud.security.publicca.v1beta1.ExternalAccountKey>(
+                    service, METHODID_CREATE_EXTERNAL_ACCOUNT_KEY)))
+        .build();
+  }
+
   private abstract static class PublicCertificateAuthorityServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-recommendations-ai/README.md b/java-recommendations-ai/README.md
index 4c1e06bdccfd..878bd2786700 100644
--- a/java-recommendations-ai/README.md
+++ b/java-recommendations-ai/README.md
@@ -17,9 +17,9 @@ Java idiomatic client for [Recommendations AI][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -56,7 +56,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Recommendations AI [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Recommendations AI.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -180,14 +180,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-preview-yellow
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-recommendations-ai.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-recommendations-ai&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-recommendations-ai/0.20.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceGrpc.java b/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceGrpc.java
index 2080d5b11d0b..4dcf8f05229b 100644
--- a/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceGrpc.java
+++ b/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceGrpc.java
@@ -365,7 +365,7 @@ public CatalogServiceFutureStub newStub(
    * Service for ingesting catalog information of the customer's website.
    * 
*/ - public abstract static class CatalogServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -374,7 +374,7 @@ public abstract static class CatalogServiceImplBase implements io.grpc.BindableS * Creates a catalog item. *
*/ - public void createCatalogItem( + default void createCatalogItem( com.google.cloud.recommendationengine.v1beta1.CreateCatalogItemRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -389,7 +389,7 @@ public void createCatalogItem( * Gets a specific catalog item. *
*/ - public void getCatalogItem( + default void getCatalogItem( com.google.cloud.recommendationengine.v1beta1.GetCatalogItemRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -404,7 +404,7 @@ public void getCatalogItem( * Gets a list of catalog items. *
*/ - public void listCatalogItems( + default void listCatalogItems( com.google.cloud.recommendationengine.v1beta1.ListCatalogItemsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.recommendationengine.v1beta1.ListCatalogItemsResponse> @@ -421,7 +421,7 @@ public void listCatalogItems( * items will be created. * */ - public void updateCatalogItem( + default void updateCatalogItem( com.google.cloud.recommendationengine.v1beta1.UpdateCatalogItemRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -436,7 +436,7 @@ public void updateCatalogItem( * Deletes a catalog item. * */ - public void deleteCatalogItem( + default void deleteCatalogItem( com.google.cloud.recommendationengine.v1beta1.DeleteCatalogItemRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -454,62 +454,32 @@ public void deleteCatalogItem( * possible for a subset of the items to be successfully updated. * */ - public void importCatalogItems( + default void importCatalogItems( com.google.cloud.recommendationengine.v1beta1.ImportCatalogItemsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getImportCatalogItemsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CatalogService. + * + *
+   * Service for ingesting catalog information of the customer's website.
+   * 
+ */ + public abstract static class CatalogServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateCatalogItemMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.CreateCatalogItemRequest, - com.google.cloud.recommendationengine.v1beta1.CatalogItem>( - this, METHODID_CREATE_CATALOG_ITEM))) - .addMethod( - getGetCatalogItemMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.GetCatalogItemRequest, - com.google.cloud.recommendationengine.v1beta1.CatalogItem>( - this, METHODID_GET_CATALOG_ITEM))) - .addMethod( - getListCatalogItemsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.ListCatalogItemsRequest, - com.google.cloud.recommendationengine.v1beta1.ListCatalogItemsResponse>( - this, METHODID_LIST_CATALOG_ITEMS))) - .addMethod( - getUpdateCatalogItemMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.UpdateCatalogItemRequest, - com.google.cloud.recommendationengine.v1beta1.CatalogItem>( - this, METHODID_UPDATE_CATALOG_ITEM))) - .addMethod( - getDeleteCatalogItemMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.DeleteCatalogItemRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_CATALOG_ITEM))) - .addMethod( - getImportCatalogItemsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.ImportCatalogItemsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_CATALOG_ITEMS))) - .build(); + return CatalogServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CatalogService. * *
    * Service for ingesting catalog information of the customer's website.
@@ -634,7 +604,7 @@ public void importCatalogItems(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CatalogService.
    *
    * 
    * Service for ingesting catalog information of the customer's website.
@@ -737,7 +707,7 @@ public com.google.longrunning.Operation importCatalogItems(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CatalogService.
    *
    * 
    * Service for ingesting catalog information of the customer's website.
@@ -861,10 +831,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CatalogServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CatalogServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -927,6 +897,51 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateCatalogItemMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.CreateCatalogItemRequest,
+                    com.google.cloud.recommendationengine.v1beta1.CatalogItem>(
+                    service, METHODID_CREATE_CATALOG_ITEM)))
+        .addMethod(
+            getGetCatalogItemMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.GetCatalogItemRequest,
+                    com.google.cloud.recommendationengine.v1beta1.CatalogItem>(
+                    service, METHODID_GET_CATALOG_ITEM)))
+        .addMethod(
+            getListCatalogItemsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.ListCatalogItemsRequest,
+                    com.google.cloud.recommendationengine.v1beta1.ListCatalogItemsResponse>(
+                    service, METHODID_LIST_CATALOG_ITEMS)))
+        .addMethod(
+            getUpdateCatalogItemMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.UpdateCatalogItemRequest,
+                    com.google.cloud.recommendationengine.v1beta1.CatalogItem>(
+                    service, METHODID_UPDATE_CATALOG_ITEM)))
+        .addMethod(
+            getDeleteCatalogItemMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.DeleteCatalogItemRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_CATALOG_ITEM)))
+        .addMethod(
+            getImportCatalogItemsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.ImportCatalogItemsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_CATALOG_ITEMS)))
+        .build();
+  }
+
   private abstract static class CatalogServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryGrpc.java b/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryGrpc.java
index 6e0954af9cf4..04b3ff40ec14 100644
--- a/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryGrpc.java
+++ b/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryGrpc.java
@@ -267,7 +267,7 @@ public PredictionApiKeyRegistryFutureStub newStub(
    * key. You can register up to 20 API keys per project.
    * 
*/ - public abstract static class PredictionApiKeyRegistryImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -276,7 +276,7 @@ public abstract static class PredictionApiKeyRegistryImplBase implements io.grpc * Register an API key for use with predict method. *
*/ - public void createPredictionApiKeyRegistration( + default void createPredictionApiKeyRegistration( com.google.cloud.recommendationengine.v1beta1.CreatePredictionApiKeyRegistrationRequest request, io.grpc.stub.StreamObserver< @@ -293,7 +293,7 @@ public void createPredictionApiKeyRegistration( * List the registered apiKeys for use with predict method. *
*/ - public void listPredictionApiKeyRegistrations( + default void listPredictionApiKeyRegistrations( com.google.cloud.recommendationengine.v1beta1.ListPredictionApiKeyRegistrationsRequest request, io.grpc.stub.StreamObserver< @@ -311,48 +311,37 @@ public void listPredictionApiKeyRegistrations( * Unregister an apiKey from using for predict method. * */ - public void deletePredictionApiKeyRegistration( + default void deletePredictionApiKeyRegistration( com.google.cloud.recommendationengine.v1beta1.DeletePredictionApiKeyRegistrationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeletePredictionApiKeyRegistrationMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service PredictionApiKeyRegistry. + * + *
+   * Service for registering API keys for use with the `predict` method. If you
+   * use an API key to request predictions, you must first register the API key.
+   * Otherwise, your prediction request is rejected. If you use OAuth to
+   * authenticate your `predict` method call, you do not need to register an API
+   * key. You can register up to 20 API keys per project.
+   * 
+ */ + public abstract static class PredictionApiKeyRegistryImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreatePredictionApiKeyRegistrationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1 - .CreatePredictionApiKeyRegistrationRequest, - com.google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration>( - this, METHODID_CREATE_PREDICTION_API_KEY_REGISTRATION))) - .addMethod( - getListPredictionApiKeyRegistrationsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1 - .ListPredictionApiKeyRegistrationsRequest, - com.google.cloud.recommendationengine.v1beta1 - .ListPredictionApiKeyRegistrationsResponse>( - this, METHODID_LIST_PREDICTION_API_KEY_REGISTRATIONS))) - .addMethod( - getDeletePredictionApiKeyRegistrationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1 - .DeletePredictionApiKeyRegistrationRequest, - com.google.protobuf.Empty>( - this, METHODID_DELETE_PREDICTION_API_KEY_REGISTRATION))) - .build(); + return PredictionApiKeyRegistryGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service PredictionApiKeyRegistry. * *
    * Service for registering API keys for use with the `predict` method. If you
@@ -432,7 +421,7 @@ public void deletePredictionApiKeyRegistration(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service PredictionApiKeyRegistry.
    *
    * 
    * Service for registering API keys for use with the `predict` method. If you
@@ -501,7 +490,8 @@ public com.google.protobuf.Empty deletePredictionApiKeyRegistration(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service
+   * PredictionApiKeyRegistry.
    *
    * 
    * Service for registering API keys for use with the `predict` method. If you
@@ -584,10 +574,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final PredictionApiKeyRegistryImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(PredictionApiKeyRegistryImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -638,6 +628,36 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreatePredictionApiKeyRegistrationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1
+                        .CreatePredictionApiKeyRegistrationRequest,
+                    com.google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration>(
+                    service, METHODID_CREATE_PREDICTION_API_KEY_REGISTRATION)))
+        .addMethod(
+            getListPredictionApiKeyRegistrationsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1
+                        .ListPredictionApiKeyRegistrationsRequest,
+                    com.google.cloud.recommendationengine.v1beta1
+                        .ListPredictionApiKeyRegistrationsResponse>(
+                    service, METHODID_LIST_PREDICTION_API_KEY_REGISTRATIONS)))
+        .addMethod(
+            getDeletePredictionApiKeyRegistrationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1
+                        .DeletePredictionApiKeyRegistrationRequest,
+                    com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_PREDICTION_API_KEY_REGISTRATION)))
+        .build();
+  }
+
   private abstract static class PredictionApiKeyRegistryBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceGrpc.java b/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceGrpc.java
index 2127279f3225..cd169dcb1faa 100644
--- a/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceGrpc.java
+++ b/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceGrpc.java
@@ -130,7 +130,7 @@ public PredictionServiceFutureStub newStub(
    * Service for making recommendation prediction.
    * 
*/ - public abstract static class PredictionServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -142,29 +142,32 @@ public abstract static class PredictionServiceImplBase implements io.grpc.Bindab * service. [Learn more](/recommendations-ai/docs/setting-up#register-key). *
*/ - public void predict( + default void predict( com.google.cloud.recommendationengine.v1beta1.PredictRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPredictMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service PredictionService. + * + *
+   * Service for making recommendation prediction.
+   * 
+ */ + public abstract static class PredictionServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getPredictMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.PredictRequest, - com.google.cloud.recommendationengine.v1beta1.PredictResponse>( - this, METHODID_PREDICT))) - .build(); + return PredictionServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service PredictionService. * *
    * Service for making recommendation prediction.
@@ -202,7 +205,7 @@ public void predict(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service PredictionService.
    *
    * 
    * Service for making recommendation prediction.
@@ -239,7 +242,7 @@ public com.google.cloud.recommendationengine.v1beta1.PredictResponse predict(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service PredictionService.
    *
    * 
    * Service for making recommendation prediction.
@@ -282,10 +285,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final PredictionServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(PredictionServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -317,6 +320,18 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getPredictMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.PredictRequest,
+                    com.google.cloud.recommendationengine.v1beta1.PredictResponse>(
+                    service, METHODID_PREDICT)))
+        .build();
+  }
+
   private abstract static class PredictionServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceGrpc.java b/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceGrpc.java
index 2594be65447d..7fedc66f3976 100644
--- a/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceGrpc.java
+++ b/java-recommendations-ai/grpc-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceGrpc.java
@@ -316,7 +316,7 @@ public UserEventServiceFutureStub newStub(
    * Service for ingesting end user actions on the customer website.
    * 
*/ - public abstract static class UserEventServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -325,7 +325,7 @@ public abstract static class UserEventServiceImplBase implements io.grpc.Bindabl * Writes a single user event. *
*/ - public void writeUserEvent( + default void writeUserEvent( com.google.cloud.recommendationengine.v1beta1.WriteUserEventRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -343,7 +343,7 @@ public void writeUserEvent( * Users should not call this method directly. *
*/ - public void collectUserEvent( + default void collectUserEvent( com.google.cloud.recommendationengine.v1beta1.CollectUserEventRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -357,7 +357,7 @@ public void collectUserEvent( * Gets a list of user events within a time range, with potential filtering. *
*/ - public void listUserEvents( + default void listUserEvents( com.google.cloud.recommendationengine.v1beta1.ListUserEventsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.recommendationengine.v1beta1.ListUserEventsResponse> @@ -376,7 +376,7 @@ public void listUserEvents( * command first. * */ - public void purgeUserEvents( + default void purgeUserEvents( com.google.cloud.recommendationengine.v1beta1.PurgeUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -395,54 +395,32 @@ public void purgeUserEvents( * Operation.metadata is of type ImportMetadata. * */ - public void importUserEvents( + default void importUserEvents( com.google.cloud.recommendationengine.v1beta1.ImportUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getImportUserEventsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service UserEventService. + * + *
+   * Service for ingesting end user actions on the customer website.
+   * 
+ */ + public abstract static class UserEventServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getWriteUserEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.WriteUserEventRequest, - com.google.cloud.recommendationengine.v1beta1.UserEvent>( - this, METHODID_WRITE_USER_EVENT))) - .addMethod( - getCollectUserEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.CollectUserEventRequest, - com.google.api.HttpBody>(this, METHODID_COLLECT_USER_EVENT))) - .addMethod( - getListUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.ListUserEventsRequest, - com.google.cloud.recommendationengine.v1beta1.ListUserEventsResponse>( - this, METHODID_LIST_USER_EVENTS))) - .addMethod( - getPurgeUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.PurgeUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_PURGE_USER_EVENTS))) - .addMethod( - getImportUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommendationengine.v1beta1.ImportUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_USER_EVENTS))) - .build(); + return UserEventServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service UserEventService. * *
    * Service for ingesting end user actions on the customer website.
@@ -555,7 +533,7 @@ public void importUserEvents(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service UserEventService.
    *
    * 
    * Service for ingesting end user actions on the customer website.
@@ -651,7 +629,7 @@ public com.google.longrunning.Operation importUserEvents(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service UserEventService.
    *
    * 
    * Service for ingesting end user actions on the customer website.
@@ -764,10 +742,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final UserEventServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(UserEventServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -820,6 +798,43 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getWriteUserEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.WriteUserEventRequest,
+                    com.google.cloud.recommendationengine.v1beta1.UserEvent>(
+                    service, METHODID_WRITE_USER_EVENT)))
+        .addMethod(
+            getCollectUserEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.CollectUserEventRequest,
+                    com.google.api.HttpBody>(service, METHODID_COLLECT_USER_EVENT)))
+        .addMethod(
+            getListUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.ListUserEventsRequest,
+                    com.google.cloud.recommendationengine.v1beta1.ListUserEventsResponse>(
+                    service, METHODID_LIST_USER_EVENTS)))
+        .addMethod(
+            getPurgeUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.PurgeUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_PURGE_USER_EVENTS)))
+        .addMethod(
+            getImportUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommendationengine.v1beta1.ImportUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_USER_EVENTS)))
+        .build();
+  }
+
   private abstract static class UserEventServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-recommender/README.md b/java-recommender/README.md
index d8d4eb0e78d7..cee76dc2f9de 100644
--- a/java-recommender/README.md
+++ b/java-recommender/README.md
@@ -13,8 +13,8 @@ Java idiomatic client for [Recommender][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
+
 
-
 
 ```xml
 
@@ -35,7 +35,7 @@ If you are using SBT, add this to your dependencies:
 ```Scala
 libraryDependencies += "com.google.cloud" % "google-cloud-recommender" % "2.15.0"
 ```
-
+
 
 ## Authentication
 
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Recommender [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Recommender.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-recommender.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-recommender&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-recommender/2.15.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-recommender/grpc-google-cloud-recommender-v1/src/main/java/com/google/cloud/recommender/v1/RecommenderGrpc.java b/java-recommender/grpc-google-cloud-recommender-v1/src/main/java/com/google/cloud/recommender/v1/RecommenderGrpc.java
index b64bf6143eda..7394c0a69097 100644
--- a/java-recommender/grpc-google-cloud-recommender-v1/src/main/java/com/google/cloud/recommender/v1/RecommenderGrpc.java
+++ b/java-recommender/grpc-google-cloud-recommender-v1/src/main/java/com/google/cloud/recommender/v1/RecommenderGrpc.java
@@ -668,7 +668,7 @@ public RecommenderFutureStub newStub(
    * based on analysis of user resources, configuration and monitoring metrics.
    * 
*/ - public abstract static class RecommenderImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -678,7 +678,7 @@ public abstract static class RecommenderImplBase implements io.grpc.BindableServ * recommender.*.list IAM permission for the specified insight type. *
*/ - public void listInsights( + default void listInsights( com.google.cloud.recommender.v1.ListInsightsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -694,7 +694,7 @@ public void listInsights( * for the specified insight type. *
*/ - public void getInsight( + default void getInsight( com.google.cloud.recommender.v1.GetInsightRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetInsightMethod(), responseObserver); @@ -711,7 +711,7 @@ public void getInsight( * the recommender.*.update IAM permission for the specified insight. * */ - public void markInsightAccepted( + default void markInsightAccepted( com.google.cloud.recommender.v1.MarkInsightAcceptedRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -726,7 +726,7 @@ public void markInsightAccepted( * recommender.*.list IAM permission for the specified recommender. * */ - public void listRecommendations( + default void listRecommendations( com.google.cloud.recommender.v1.ListRecommendationsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -742,7 +742,7 @@ public void listRecommendations( * IAM permission for the specified recommender. * */ - public void getRecommendation( + default void getRecommendation( com.google.cloud.recommender.v1.GetRecommendationRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -764,7 +764,7 @@ public void getRecommendation( * recommender. * */ - public void markRecommendationClaimed( + default void markRecommendationClaimed( com.google.cloud.recommender.v1.MarkRecommendationClaimedRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -787,7 +787,7 @@ public void markRecommendationClaimed( * recommender. * */ - public void markRecommendationSucceeded( + default void markRecommendationSucceeded( com.google.cloud.recommender.v1.MarkRecommendationSucceededRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -810,7 +810,7 @@ public void markRecommendationSucceeded( * recommender. * */ - public void markRecommendationFailed( + default void markRecommendationFailed( com.google.cloud.recommender.v1.MarkRecommendationFailedRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -826,7 +826,7 @@ public void markRecommendationFailed( * config for each Recommender. * */ - public void getRecommenderConfig( + default void getRecommenderConfig( com.google.cloud.recommender.v1.GetRecommenderConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -842,7 +842,7 @@ public void getRecommenderConfig( * config. * */ - public void updateRecommenderConfig( + default void updateRecommenderConfig( com.google.cloud.recommender.v1.UpdateRecommenderConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -858,7 +858,7 @@ public void updateRecommenderConfig( * config for each InsightType. * */ - public void getInsightTypeConfig( + default void getInsightTypeConfig( com.google.cloud.recommender.v1.GetInsightTypeConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -874,106 +874,36 @@ public void getInsightTypeConfig( * config. * */ - public void updateInsightTypeConfig( + default void updateInsightTypeConfig( com.google.cloud.recommender.v1.UpdateInsightTypeConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getUpdateInsightTypeConfigMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Recommender. + * + *
+   * Provides insights and recommendations for cloud customers for various
+   * categories like performance optimization, cost savings, reliability, feature
+   * discovery, etc. Insights and recommendations are generated automatically
+   * based on analysis of user resources, configuration and monitoring metrics.
+   * 
+ */ + public abstract static class RecommenderImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListInsightsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.ListInsightsRequest, - com.google.cloud.recommender.v1.ListInsightsResponse>( - this, METHODID_LIST_INSIGHTS))) - .addMethod( - getGetInsightMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.GetInsightRequest, - com.google.cloud.recommender.v1.Insight>(this, METHODID_GET_INSIGHT))) - .addMethod( - getMarkInsightAcceptedMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.MarkInsightAcceptedRequest, - com.google.cloud.recommender.v1.Insight>( - this, METHODID_MARK_INSIGHT_ACCEPTED))) - .addMethod( - getListRecommendationsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.ListRecommendationsRequest, - com.google.cloud.recommender.v1.ListRecommendationsResponse>( - this, METHODID_LIST_RECOMMENDATIONS))) - .addMethod( - getGetRecommendationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.GetRecommendationRequest, - com.google.cloud.recommender.v1.Recommendation>( - this, METHODID_GET_RECOMMENDATION))) - .addMethod( - getMarkRecommendationClaimedMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.MarkRecommendationClaimedRequest, - com.google.cloud.recommender.v1.Recommendation>( - this, METHODID_MARK_RECOMMENDATION_CLAIMED))) - .addMethod( - getMarkRecommendationSucceededMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.MarkRecommendationSucceededRequest, - com.google.cloud.recommender.v1.Recommendation>( - this, METHODID_MARK_RECOMMENDATION_SUCCEEDED))) - .addMethod( - getMarkRecommendationFailedMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.MarkRecommendationFailedRequest, - com.google.cloud.recommender.v1.Recommendation>( - this, METHODID_MARK_RECOMMENDATION_FAILED))) - .addMethod( - getGetRecommenderConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.GetRecommenderConfigRequest, - com.google.cloud.recommender.v1.RecommenderConfig>( - this, METHODID_GET_RECOMMENDER_CONFIG))) - .addMethod( - getUpdateRecommenderConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.UpdateRecommenderConfigRequest, - com.google.cloud.recommender.v1.RecommenderConfig>( - this, METHODID_UPDATE_RECOMMENDER_CONFIG))) - .addMethod( - getGetInsightTypeConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.GetInsightTypeConfigRequest, - com.google.cloud.recommender.v1.InsightTypeConfig>( - this, METHODID_GET_INSIGHT_TYPE_CONFIG))) - .addMethod( - getUpdateInsightTypeConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1.UpdateInsightTypeConfigRequest, - com.google.cloud.recommender.v1.InsightTypeConfig>( - this, METHODID_UPDATE_INSIGHT_TYPE_CONFIG))) - .build(); + return RecommenderGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Recommender. * *
    * Provides insights and recommendations for cloud customers for various
@@ -1230,7 +1160,7 @@ public void updateInsightTypeConfig(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Recommender.
    *
    * 
    * Provides insights and recommendations for cloud customers for various
@@ -1444,7 +1374,7 @@ public com.google.cloud.recommender.v1.InsightTypeConfig updateInsightTypeConfig
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Recommender.
    *
    * 
    * Provides insights and recommendations for cloud customers for various
@@ -1692,10 +1622,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final RecommenderImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(RecommenderImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1793,6 +1723,94 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListInsightsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.ListInsightsRequest,
+                    com.google.cloud.recommender.v1.ListInsightsResponse>(
+                    service, METHODID_LIST_INSIGHTS)))
+        .addMethod(
+            getGetInsightMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.GetInsightRequest,
+                    com.google.cloud.recommender.v1.Insight>(service, METHODID_GET_INSIGHT)))
+        .addMethod(
+            getMarkInsightAcceptedMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.MarkInsightAcceptedRequest,
+                    com.google.cloud.recommender.v1.Insight>(
+                    service, METHODID_MARK_INSIGHT_ACCEPTED)))
+        .addMethod(
+            getListRecommendationsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.ListRecommendationsRequest,
+                    com.google.cloud.recommender.v1.ListRecommendationsResponse>(
+                    service, METHODID_LIST_RECOMMENDATIONS)))
+        .addMethod(
+            getGetRecommendationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.GetRecommendationRequest,
+                    com.google.cloud.recommender.v1.Recommendation>(
+                    service, METHODID_GET_RECOMMENDATION)))
+        .addMethod(
+            getMarkRecommendationClaimedMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.MarkRecommendationClaimedRequest,
+                    com.google.cloud.recommender.v1.Recommendation>(
+                    service, METHODID_MARK_RECOMMENDATION_CLAIMED)))
+        .addMethod(
+            getMarkRecommendationSucceededMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.MarkRecommendationSucceededRequest,
+                    com.google.cloud.recommender.v1.Recommendation>(
+                    service, METHODID_MARK_RECOMMENDATION_SUCCEEDED)))
+        .addMethod(
+            getMarkRecommendationFailedMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.MarkRecommendationFailedRequest,
+                    com.google.cloud.recommender.v1.Recommendation>(
+                    service, METHODID_MARK_RECOMMENDATION_FAILED)))
+        .addMethod(
+            getGetRecommenderConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.GetRecommenderConfigRequest,
+                    com.google.cloud.recommender.v1.RecommenderConfig>(
+                    service, METHODID_GET_RECOMMENDER_CONFIG)))
+        .addMethod(
+            getUpdateRecommenderConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.UpdateRecommenderConfigRequest,
+                    com.google.cloud.recommender.v1.RecommenderConfig>(
+                    service, METHODID_UPDATE_RECOMMENDER_CONFIG)))
+        .addMethod(
+            getGetInsightTypeConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.GetInsightTypeConfigRequest,
+                    com.google.cloud.recommender.v1.InsightTypeConfig>(
+                    service, METHODID_GET_INSIGHT_TYPE_CONFIG)))
+        .addMethod(
+            getUpdateInsightTypeConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1.UpdateInsightTypeConfigRequest,
+                    com.google.cloud.recommender.v1.InsightTypeConfig>(
+                    service, METHODID_UPDATE_INSIGHT_TYPE_CONFIG)))
+        .build();
+  }
+
   private abstract static class RecommenderBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-recommender/grpc-google-cloud-recommender-v1beta1/src/main/java/com/google/cloud/recommender/v1beta1/RecommenderGrpc.java b/java-recommender/grpc-google-cloud-recommender-v1beta1/src/main/java/com/google/cloud/recommender/v1beta1/RecommenderGrpc.java
index 3fc4838ca9ca..ec4782887896 100644
--- a/java-recommender/grpc-google-cloud-recommender-v1beta1/src/main/java/com/google/cloud/recommender/v1beta1/RecommenderGrpc.java
+++ b/java-recommender/grpc-google-cloud-recommender-v1beta1/src/main/java/com/google/cloud/recommender/v1beta1/RecommenderGrpc.java
@@ -672,7 +672,7 @@ public RecommenderFutureStub newStub(
    * based on analysis of user resources, configuration and monitoring metrics.
    * 
*/ - public abstract static class RecommenderImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -682,7 +682,7 @@ public abstract static class RecommenderImplBase implements io.grpc.BindableServ * recommender.*.list IAM permission for the specified insight type. *
*/ - public void listInsights( + default void listInsights( com.google.cloud.recommender.v1beta1.ListInsightsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -698,7 +698,7 @@ public void listInsights( * for the specified insight type. *
*/ - public void getInsight( + default void getInsight( com.google.cloud.recommender.v1beta1.GetInsightRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -716,7 +716,7 @@ public void getInsight( * the recommender.*.update IAM permission for the specified insight. * */ - public void markInsightAccepted( + default void markInsightAccepted( com.google.cloud.recommender.v1beta1.MarkInsightAcceptedRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -732,7 +732,7 @@ public void markInsightAccepted( * recommender.*.list IAM permission for the specified recommender. * */ - public void listRecommendations( + default void listRecommendations( com.google.cloud.recommender.v1beta1.ListRecommendationsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.recommender.v1beta1.ListRecommendationsResponse> @@ -749,7 +749,7 @@ public void listRecommendations( * IAM permission for the specified recommender. * */ - public void getRecommendation( + default void getRecommendation( com.google.cloud.recommender.v1beta1.GetRecommendationRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -771,7 +771,7 @@ public void getRecommendation( * recommender. * */ - public void markRecommendationClaimed( + default void markRecommendationClaimed( com.google.cloud.recommender.v1beta1.MarkRecommendationClaimedRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -794,7 +794,7 @@ public void markRecommendationClaimed( * recommender. * */ - public void markRecommendationSucceeded( + default void markRecommendationSucceeded( com.google.cloud.recommender.v1beta1.MarkRecommendationSucceededRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -817,7 +817,7 @@ public void markRecommendationSucceeded( * recommender. * */ - public void markRecommendationFailed( + default void markRecommendationFailed( com.google.cloud.recommender.v1beta1.MarkRecommendationFailedRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -833,7 +833,7 @@ public void markRecommendationFailed( * config for each Recommender. * */ - public void getRecommenderConfig( + default void getRecommenderConfig( com.google.cloud.recommender.v1beta1.GetRecommenderConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -849,7 +849,7 @@ public void getRecommenderConfig( * config. * */ - public void updateRecommenderConfig( + default void updateRecommenderConfig( com.google.cloud.recommender.v1beta1.UpdateRecommenderConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -865,7 +865,7 @@ public void updateRecommenderConfig( * config for each InsightType. * */ - public void getInsightTypeConfig( + default void getInsightTypeConfig( com.google.cloud.recommender.v1beta1.GetInsightTypeConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -881,106 +881,36 @@ public void getInsightTypeConfig( * config. * */ - public void updateInsightTypeConfig( + default void updateInsightTypeConfig( com.google.cloud.recommender.v1beta1.UpdateInsightTypeConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getUpdateInsightTypeConfigMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Recommender. + * + *
+   * Provides insights and recommendations for cloud customers for various
+   * categories like performance optimization, cost savings, reliability, feature
+   * discovery, etc. Insights and recommendations are generated automatically
+   * based on analysis of user resources, configuration and monitoring metrics.
+   * 
+ */ + public abstract static class RecommenderImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListInsightsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.ListInsightsRequest, - com.google.cloud.recommender.v1beta1.ListInsightsResponse>( - this, METHODID_LIST_INSIGHTS))) - .addMethod( - getGetInsightMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.GetInsightRequest, - com.google.cloud.recommender.v1beta1.Insight>(this, METHODID_GET_INSIGHT))) - .addMethod( - getMarkInsightAcceptedMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.MarkInsightAcceptedRequest, - com.google.cloud.recommender.v1beta1.Insight>( - this, METHODID_MARK_INSIGHT_ACCEPTED))) - .addMethod( - getListRecommendationsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.ListRecommendationsRequest, - com.google.cloud.recommender.v1beta1.ListRecommendationsResponse>( - this, METHODID_LIST_RECOMMENDATIONS))) - .addMethod( - getGetRecommendationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.GetRecommendationRequest, - com.google.cloud.recommender.v1beta1.Recommendation>( - this, METHODID_GET_RECOMMENDATION))) - .addMethod( - getMarkRecommendationClaimedMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.MarkRecommendationClaimedRequest, - com.google.cloud.recommender.v1beta1.Recommendation>( - this, METHODID_MARK_RECOMMENDATION_CLAIMED))) - .addMethod( - getMarkRecommendationSucceededMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.MarkRecommendationSucceededRequest, - com.google.cloud.recommender.v1beta1.Recommendation>( - this, METHODID_MARK_RECOMMENDATION_SUCCEEDED))) - .addMethod( - getMarkRecommendationFailedMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.MarkRecommendationFailedRequest, - com.google.cloud.recommender.v1beta1.Recommendation>( - this, METHODID_MARK_RECOMMENDATION_FAILED))) - .addMethod( - getGetRecommenderConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.GetRecommenderConfigRequest, - com.google.cloud.recommender.v1beta1.RecommenderConfig>( - this, METHODID_GET_RECOMMENDER_CONFIG))) - .addMethod( - getUpdateRecommenderConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.UpdateRecommenderConfigRequest, - com.google.cloud.recommender.v1beta1.RecommenderConfig>( - this, METHODID_UPDATE_RECOMMENDER_CONFIG))) - .addMethod( - getGetInsightTypeConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.GetInsightTypeConfigRequest, - com.google.cloud.recommender.v1beta1.InsightTypeConfig>( - this, METHODID_GET_INSIGHT_TYPE_CONFIG))) - .addMethod( - getUpdateInsightTypeConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.recommender.v1beta1.UpdateInsightTypeConfigRequest, - com.google.cloud.recommender.v1beta1.InsightTypeConfig>( - this, METHODID_UPDATE_INSIGHT_TYPE_CONFIG))) - .build(); + return RecommenderGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Recommender. * *
    * Provides insights and recommendations for cloud customers for various
@@ -1240,7 +1170,7 @@ public void updateInsightTypeConfig(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Recommender.
    *
    * 
    * Provides insights and recommendations for cloud customers for various
@@ -1454,7 +1384,7 @@ public com.google.cloud.recommender.v1beta1.InsightTypeConfig updateInsightTypeC
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Recommender.
    *
    * 
    * Provides insights and recommendations for cloud customers for various
@@ -1706,10 +1636,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final RecommenderImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(RecommenderImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1808,6 +1738,94 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListInsightsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.ListInsightsRequest,
+                    com.google.cloud.recommender.v1beta1.ListInsightsResponse>(
+                    service, METHODID_LIST_INSIGHTS)))
+        .addMethod(
+            getGetInsightMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.GetInsightRequest,
+                    com.google.cloud.recommender.v1beta1.Insight>(service, METHODID_GET_INSIGHT)))
+        .addMethod(
+            getMarkInsightAcceptedMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.MarkInsightAcceptedRequest,
+                    com.google.cloud.recommender.v1beta1.Insight>(
+                    service, METHODID_MARK_INSIGHT_ACCEPTED)))
+        .addMethod(
+            getListRecommendationsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.ListRecommendationsRequest,
+                    com.google.cloud.recommender.v1beta1.ListRecommendationsResponse>(
+                    service, METHODID_LIST_RECOMMENDATIONS)))
+        .addMethod(
+            getGetRecommendationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.GetRecommendationRequest,
+                    com.google.cloud.recommender.v1beta1.Recommendation>(
+                    service, METHODID_GET_RECOMMENDATION)))
+        .addMethod(
+            getMarkRecommendationClaimedMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.MarkRecommendationClaimedRequest,
+                    com.google.cloud.recommender.v1beta1.Recommendation>(
+                    service, METHODID_MARK_RECOMMENDATION_CLAIMED)))
+        .addMethod(
+            getMarkRecommendationSucceededMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.MarkRecommendationSucceededRequest,
+                    com.google.cloud.recommender.v1beta1.Recommendation>(
+                    service, METHODID_MARK_RECOMMENDATION_SUCCEEDED)))
+        .addMethod(
+            getMarkRecommendationFailedMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.MarkRecommendationFailedRequest,
+                    com.google.cloud.recommender.v1beta1.Recommendation>(
+                    service, METHODID_MARK_RECOMMENDATION_FAILED)))
+        .addMethod(
+            getGetRecommenderConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.GetRecommenderConfigRequest,
+                    com.google.cloud.recommender.v1beta1.RecommenderConfig>(
+                    service, METHODID_GET_RECOMMENDER_CONFIG)))
+        .addMethod(
+            getUpdateRecommenderConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.UpdateRecommenderConfigRequest,
+                    com.google.cloud.recommender.v1beta1.RecommenderConfig>(
+                    service, METHODID_UPDATE_RECOMMENDER_CONFIG)))
+        .addMethod(
+            getGetInsightTypeConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.GetInsightTypeConfigRequest,
+                    com.google.cloud.recommender.v1beta1.InsightTypeConfig>(
+                    service, METHODID_GET_INSIGHT_TYPE_CONFIG)))
+        .addMethod(
+            getUpdateInsightTypeConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.recommender.v1beta1.UpdateInsightTypeConfigRequest,
+                    com.google.cloud.recommender.v1beta1.InsightTypeConfig>(
+                    service, METHODID_UPDATE_INSIGHT_TYPE_CONFIG)))
+        .build();
+  }
+
   private abstract static class RecommenderBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-redis/README.md b/java-redis/README.md
index 5f04062a70b7..f52bebd81a8b 100644
--- a/java-redis/README.md
+++ b/java-redis/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud Redis][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Redis [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud Redis.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-redis.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-redis&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-redis/2.16.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-redis/grpc-google-cloud-redis-v1/src/main/java/com/google/cloud/redis/v1/CloudRedisGrpc.java b/java-redis/grpc-google-cloud-redis-v1/src/main/java/com/google/cloud/redis/v1/CloudRedisGrpc.java
index 52740946bb26..da5f3a035bbe 100644
--- a/java-redis/grpc-google-cloud-redis-v1/src/main/java/com/google/cloud/redis/v1/CloudRedisGrpc.java
+++ b/java-redis/grpc-google-cloud-redis-v1/src/main/java/com/google/cloud/redis/v1/CloudRedisGrpc.java
@@ -574,7 +574,7 @@ public CloudRedisFutureStub newStub(
    * * `projects/redpepper-1290/locations/us-central1/instances/my-redis`
    * 
*/ - public abstract static class CloudRedisImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -588,7 +588,7 @@ public abstract static class CloudRedisImplBase implements io.grpc.BindableServi * available to the project are queried, and the results are aggregated. *
*/ - public void listInstances( + default void listInstances( com.google.cloud.redis.v1.ListInstancesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -603,7 +603,7 @@ public void listInstances( * Gets the details of a specific Redis instance. *
*/ - public void getInstance( + default void getInstance( com.google.cloud.redis.v1.GetInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -619,7 +619,7 @@ public void getInstance( * the details returned to GetInstance. * */ - public void getInstanceAuthString( + default void getInstanceAuthString( com.google.cloud.redis.v1.GetInstanceAuthStringRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -642,7 +642,7 @@ public void getInstanceAuthString( * is no need to call DeleteOperation. * */ - public void createInstance( + default void createInstance( com.google.cloud.redis.v1.CreateInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -659,7 +659,7 @@ public void createInstance( * after a few hours, so there is no need to call DeleteOperation. * */ - public void updateInstance( + default void updateInstance( com.google.cloud.redis.v1.UpdateInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -674,7 +674,7 @@ public void updateInstance( * request. * */ - public void upgradeInstance( + default void upgradeInstance( com.google.cloud.redis.v1.UpgradeInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -693,7 +693,7 @@ public void upgradeInstance( * there is no need to call DeleteOperation. * */ - public void importInstance( + default void importInstance( com.google.cloud.redis.v1.ImportInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -710,7 +710,7 @@ public void importInstance( * there is no need to call DeleteOperation. * */ - public void exportInstance( + default void exportInstance( com.google.cloud.redis.v1.ExportInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -725,7 +725,7 @@ public void exportInstance( * specific STANDARD tier Cloud Memorystore for Redis instance. * */ - public void failoverInstance( + default void failoverInstance( com.google.cloud.redis.v1.FailoverInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -740,7 +740,7 @@ public void failoverInstance( * deleted. * */ - public void deleteInstance( + default void deleteInstance( com.google.cloud.redis.v1.DeleteInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -755,90 +755,42 @@ public void deleteInstance( * location. * */ - public void rescheduleMaintenance( + default void rescheduleMaintenance( com.google.cloud.redis.v1.RescheduleMaintenanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRescheduleMaintenanceMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CloudRedis. + * + *
+   * Configures and manages Cloud Memorystore for Redis instances
+   * Google Cloud Memorystore for Redis v1
+   * The `redis.googleapis.com` service implements the Google Cloud Memorystore
+   * for Redis API and defines the following resource model for managing Redis
+   * instances:
+   * * The service works with a collection of cloud projects, named: `/projects/*`
+   * * Each project has a collection of available locations, named: `/locations/*`
+   * * Each location has a collection of Redis instances, named: `/instances/*`
+   * * As such, Redis instances are resources of the form:
+   *   `/projects/{project_id}/locations/{location_id}/instances/{instance_id}`
+   * Note that location_id must be referring to a GCP `region`; for example:
+   * * `projects/redpepper-1290/locations/us-central1/instances/my-redis`
+   * 
+ */ + public abstract static class CloudRedisImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListInstancesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.ListInstancesRequest, - com.google.cloud.redis.v1.ListInstancesResponse>( - this, METHODID_LIST_INSTANCES))) - .addMethod( - getGetInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.GetInstanceRequest, - com.google.cloud.redis.v1.Instance>(this, METHODID_GET_INSTANCE))) - .addMethod( - getGetInstanceAuthStringMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.GetInstanceAuthStringRequest, - com.google.cloud.redis.v1.InstanceAuthString>( - this, METHODID_GET_INSTANCE_AUTH_STRING))) - .addMethod( - getCreateInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.CreateInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_INSTANCE))) - .addMethod( - getUpdateInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.UpdateInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_INSTANCE))) - .addMethod( - getUpgradeInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.UpgradeInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_UPGRADE_INSTANCE))) - .addMethod( - getImportInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.ImportInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_INSTANCE))) - .addMethod( - getExportInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.ExportInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_EXPORT_INSTANCE))) - .addMethod( - getFailoverInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.FailoverInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_FAILOVER_INSTANCE))) - .addMethod( - getDeleteInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.DeleteInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_INSTANCE))) - .addMethod( - getRescheduleMaintenanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1.RescheduleMaintenanceRequest, - com.google.longrunning.Operation>(this, METHODID_RESCHEDULE_MAINTENANCE))) - .build(); + return CloudRedisGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CloudRedis. * *
    * Configures and manages Cloud Memorystore for Redis instances
@@ -1075,7 +1027,7 @@ public void rescheduleMaintenance(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CloudRedis.
    *
    * 
    * Configures and manages Cloud Memorystore for Redis instances
@@ -1279,7 +1231,7 @@ public com.google.longrunning.Operation rescheduleMaintenance(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CloudRedis.
    *
    * 
    * Configures and manages Cloud Memorystore for Redis instances
@@ -1500,10 +1452,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CloudRedisImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CloudRedisImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1585,6 +1537,79 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListInstancesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.ListInstancesRequest,
+                    com.google.cloud.redis.v1.ListInstancesResponse>(
+                    service, METHODID_LIST_INSTANCES)))
+        .addMethod(
+            getGetInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.GetInstanceRequest,
+                    com.google.cloud.redis.v1.Instance>(service, METHODID_GET_INSTANCE)))
+        .addMethod(
+            getGetInstanceAuthStringMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.GetInstanceAuthStringRequest,
+                    com.google.cloud.redis.v1.InstanceAuthString>(
+                    service, METHODID_GET_INSTANCE_AUTH_STRING)))
+        .addMethod(
+            getCreateInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.CreateInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_INSTANCE)))
+        .addMethod(
+            getUpdateInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.UpdateInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_INSTANCE)))
+        .addMethod(
+            getUpgradeInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.UpgradeInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPGRADE_INSTANCE)))
+        .addMethod(
+            getImportInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.ImportInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_INSTANCE)))
+        .addMethod(
+            getExportInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.ExportInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_EXPORT_INSTANCE)))
+        .addMethod(
+            getFailoverInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.FailoverInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_FAILOVER_INSTANCE)))
+        .addMethod(
+            getDeleteInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.DeleteInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_INSTANCE)))
+        .addMethod(
+            getRescheduleMaintenanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1.RescheduleMaintenanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESCHEDULE_MAINTENANCE)))
+        .build();
+  }
+
   private abstract static class CloudRedisBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-redis/grpc-google-cloud-redis-v1beta1/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisGrpc.java b/java-redis/grpc-google-cloud-redis-v1beta1/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisGrpc.java
index 7094b4b62bfd..5d41bba8d915 100644
--- a/java-redis/grpc-google-cloud-redis-v1beta1/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisGrpc.java
+++ b/java-redis/grpc-google-cloud-redis-v1beta1/src/main/java/com/google/cloud/redis/v1beta1/CloudRedisGrpc.java
@@ -589,7 +589,7 @@ public CloudRedisFutureStub newStub(
    * * `projects/redpepper-1290/locations/us-central1/instances/my-redis`
    * 
*/ - public abstract static class CloudRedisImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -603,7 +603,7 @@ public abstract static class CloudRedisImplBase implements io.grpc.BindableServi * available to the project are queried, and the results are aggregated. *
*/ - public void listInstances( + default void listInstances( com.google.cloud.redis.v1beta1.ListInstancesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -618,7 +618,7 @@ public void listInstances( * Gets the details of a specific Redis instance. *
*/ - public void getInstance( + default void getInstance( com.google.cloud.redis.v1beta1.GetInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -634,7 +634,7 @@ public void getInstance( * the details returned to GetInstance. * */ - public void getInstanceAuthString( + default void getInstanceAuthString( com.google.cloud.redis.v1beta1.GetInstanceAuthStringRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -657,7 +657,7 @@ public void getInstanceAuthString( * is no need to call DeleteOperation. * */ - public void createInstance( + default void createInstance( com.google.cloud.redis.v1beta1.CreateInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -674,7 +674,7 @@ public void createInstance( * after a few hours, so there is no need to call DeleteOperation. * */ - public void updateInstance( + default void updateInstance( com.google.cloud.redis.v1beta1.UpdateInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -689,7 +689,7 @@ public void updateInstance( * request. * */ - public void upgradeInstance( + default void upgradeInstance( com.google.cloud.redis.v1beta1.UpgradeInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -708,7 +708,7 @@ public void upgradeInstance( * there is no need to call DeleteOperation. * */ - public void importInstance( + default void importInstance( com.google.cloud.redis.v1beta1.ImportInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -725,7 +725,7 @@ public void importInstance( * there is no need to call DeleteOperation. * */ - public void exportInstance( + default void exportInstance( com.google.cloud.redis.v1beta1.ExportInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -740,7 +740,7 @@ public void exportInstance( * specific STANDARD tier Cloud Memorystore for Redis instance. * */ - public void failoverInstance( + default void failoverInstance( com.google.cloud.redis.v1beta1.FailoverInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -755,7 +755,7 @@ public void failoverInstance( * deleted. * */ - public void deleteInstance( + default void deleteInstance( com.google.cloud.redis.v1beta1.DeleteInstanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -770,90 +770,42 @@ public void deleteInstance( * location. * */ - public void rescheduleMaintenance( + default void rescheduleMaintenance( com.google.cloud.redis.v1beta1.RescheduleMaintenanceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRescheduleMaintenanceMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CloudRedis. + * + *
+   * Configures and manages Cloud Memorystore for Redis instances
+   * Google Cloud Memorystore for Redis v1beta1
+   * The `redis.googleapis.com` service implements the Google Cloud Memorystore
+   * for Redis API and defines the following resource model for managing Redis
+   * instances:
+   * * The service works with a collection of cloud projects, named: `/projects/*`
+   * * Each project has a collection of available locations, named: `/locations/*`
+   * * Each location has a collection of Redis instances, named: `/instances/*`
+   * * As such, Redis instances are resources of the form:
+   *   `/projects/{project_id}/locations/{location_id}/instances/{instance_id}`
+   * Note that location_id must be referring to a GCP `region`; for example:
+   * * `projects/redpepper-1290/locations/us-central1/instances/my-redis`
+   * 
+ */ + public abstract static class CloudRedisImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListInstancesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.ListInstancesRequest, - com.google.cloud.redis.v1beta1.ListInstancesResponse>( - this, METHODID_LIST_INSTANCES))) - .addMethod( - getGetInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.GetInstanceRequest, - com.google.cloud.redis.v1beta1.Instance>(this, METHODID_GET_INSTANCE))) - .addMethod( - getGetInstanceAuthStringMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.GetInstanceAuthStringRequest, - com.google.cloud.redis.v1beta1.InstanceAuthString>( - this, METHODID_GET_INSTANCE_AUTH_STRING))) - .addMethod( - getCreateInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.CreateInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_INSTANCE))) - .addMethod( - getUpdateInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.UpdateInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_INSTANCE))) - .addMethod( - getUpgradeInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.UpgradeInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_UPGRADE_INSTANCE))) - .addMethod( - getImportInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.ImportInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_INSTANCE))) - .addMethod( - getExportInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.ExportInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_EXPORT_INSTANCE))) - .addMethod( - getFailoverInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.FailoverInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_FAILOVER_INSTANCE))) - .addMethod( - getDeleteInstanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.DeleteInstanceRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_INSTANCE))) - .addMethod( - getRescheduleMaintenanceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.redis.v1beta1.RescheduleMaintenanceRequest, - com.google.longrunning.Operation>(this, METHODID_RESCHEDULE_MAINTENANCE))) - .build(); + return CloudRedisGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CloudRedis. * *
    * Configures and manages Cloud Memorystore for Redis instances
@@ -1090,7 +1042,7 @@ public void rescheduleMaintenance(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CloudRedis.
    *
    * 
    * Configures and manages Cloud Memorystore for Redis instances
@@ -1294,7 +1246,7 @@ public com.google.longrunning.Operation rescheduleMaintenance(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CloudRedis.
    *
    * 
    * Configures and manages Cloud Memorystore for Redis instances
@@ -1516,10 +1468,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CloudRedisImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CloudRedisImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1602,6 +1554,79 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListInstancesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.ListInstancesRequest,
+                    com.google.cloud.redis.v1beta1.ListInstancesResponse>(
+                    service, METHODID_LIST_INSTANCES)))
+        .addMethod(
+            getGetInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.GetInstanceRequest,
+                    com.google.cloud.redis.v1beta1.Instance>(service, METHODID_GET_INSTANCE)))
+        .addMethod(
+            getGetInstanceAuthStringMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.GetInstanceAuthStringRequest,
+                    com.google.cloud.redis.v1beta1.InstanceAuthString>(
+                    service, METHODID_GET_INSTANCE_AUTH_STRING)))
+        .addMethod(
+            getCreateInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.CreateInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_INSTANCE)))
+        .addMethod(
+            getUpdateInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.UpdateInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_INSTANCE)))
+        .addMethod(
+            getUpgradeInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.UpgradeInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPGRADE_INSTANCE)))
+        .addMethod(
+            getImportInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.ImportInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_INSTANCE)))
+        .addMethod(
+            getExportInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.ExportInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_EXPORT_INSTANCE)))
+        .addMethod(
+            getFailoverInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.FailoverInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_FAILOVER_INSTANCE)))
+        .addMethod(
+            getDeleteInstanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.DeleteInstanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_INSTANCE)))
+        .addMethod(
+            getRescheduleMaintenanceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.redis.v1beta1.RescheduleMaintenanceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESCHEDULE_MAINTENANCE)))
+        .build();
+  }
+
   private abstract static class CloudRedisBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-resource-settings/README.md b/java-resource-settings/README.md
index 72eaa2831beb..9a83287d0bfe 100644
--- a/java-resource-settings/README.md
+++ b/java-resource-settings/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Resource Settings API][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Resource Settings API [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Resource Settings API.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-resource-settings.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-resource-settings&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-resource-settings/1.13.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-resource-settings/grpc-google-cloud-resource-settings-v1/src/main/java/com/google/cloud/resourcesettings/v1/ResourceSettingsServiceGrpc.java b/java-resource-settings/grpc-google-cloud-resource-settings-v1/src/main/java/com/google/cloud/resourcesettings/v1/ResourceSettingsServiceGrpc.java
index 4656aac588c7..18d0e8266586 100644
--- a/java-resource-settings/grpc-google-cloud-resource-settings-v1/src/main/java/com/google/cloud/resourcesettings/v1/ResourceSettingsServiceGrpc.java
+++ b/java-resource-settings/grpc-google-cloud-resource-settings-v1/src/main/java/com/google/cloud/resourcesettings/v1/ResourceSettingsServiceGrpc.java
@@ -241,7 +241,7 @@ public ResourceSettingsServiceFutureStub newStub(
    * `google.rpc.Code.INVALID_ARGUMENT` if the request is malformed.
    * 
*/ - public abstract static class ResourceSettingsServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -250,7 +250,7 @@ public abstract static class ResourceSettingsServiceImplBase implements io.grpc. * Lists all the settings that are available on the Cloud resource `parent`. *
*/ - public void listSettings( + default void listSettings( com.google.cloud.resourcesettings.v1.ListSettingsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -267,7 +267,7 @@ public void listSettings( * setting does not exist. *
*/ - public void getSetting( + default void getSetting( com.google.cloud.resourcesettings.v1.GetSettingRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -293,42 +293,42 @@ public void getSetting( * `local_value` field. * */ - public void updateSetting( + default void updateSetting( com.google.cloud.resourcesettings.v1.UpdateSettingRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getUpdateSettingMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ResourceSettingsService. + * + *
+   * An interface to interact with resource settings and setting values throughout
+   * the resource hierarchy.
+   * Services may surface a number of settings for users to control how their
+   * resources behave. Values of settings applied on a given Cloud resource are
+   * evaluated hierarchically and inherited by all descendants of that resource.
+   * For all requests, returns a `google.rpc.Status` with
+   * `google.rpc.Code.PERMISSION_DENIED` if the IAM check fails or the `parent`
+   * resource is not in a Cloud Organization.
+   * For all requests, returns a `google.rpc.Status` with
+   * `google.rpc.Code.INVALID_ARGUMENT` if the request is malformed.
+   * 
+ */ + public abstract static class ResourceSettingsServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListSettingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcesettings.v1.ListSettingsRequest, - com.google.cloud.resourcesettings.v1.ListSettingsResponse>( - this, METHODID_LIST_SETTINGS))) - .addMethod( - getGetSettingMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcesettings.v1.GetSettingRequest, - com.google.cloud.resourcesettings.v1.Setting>(this, METHODID_GET_SETTING))) - .addMethod( - getUpdateSettingMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcesettings.v1.UpdateSettingRequest, - com.google.cloud.resourcesettings.v1.Setting>(this, METHODID_UPDATE_SETTING))) - .build(); + return ResourceSettingsServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ResourceSettingsService. * *
    * An interface to interact with resource settings and setting values throughout
@@ -420,7 +420,7 @@ public void updateSetting(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ResourceSettingsService.
    *
    * 
    * An interface to interact with resource settings and setting values throughout
@@ -503,7 +503,8 @@ public com.google.cloud.resourcesettings.v1.Setting updateSetting(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service
+   * ResourceSettingsService.
    *
    * 
    * An interface to interact with resource settings and setting values throughout
@@ -597,10 +598,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ResourceSettingsServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ResourceSettingsServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -644,6 +645,31 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListSettingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcesettings.v1.ListSettingsRequest,
+                    com.google.cloud.resourcesettings.v1.ListSettingsResponse>(
+                    service, METHODID_LIST_SETTINGS)))
+        .addMethod(
+            getGetSettingMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcesettings.v1.GetSettingRequest,
+                    com.google.cloud.resourcesettings.v1.Setting>(service, METHODID_GET_SETTING)))
+        .addMethod(
+            getUpdateSettingMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcesettings.v1.UpdateSettingRequest,
+                    com.google.cloud.resourcesettings.v1.Setting>(
+                    service, METHODID_UPDATE_SETTING)))
+        .build();
+  }
+
   private abstract static class ResourceSettingsServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-resourcemanager/README.md b/java-resourcemanager/README.md
index 36dfa40225c9..5b1d6eb6ad09 100644
--- a/java-resourcemanager/README.md
+++ b/java-resourcemanager/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Resource Manager API][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Resource Manager API [API enabled][enable-api].
 
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -314,14 +314,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-resourcemanager.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-resourcemanager&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-resourcemanager/1.15.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/FoldersGrpc.java b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/FoldersGrpc.java
index 128e4166d3e0..2890e95f802f 100644
--- a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/FoldersGrpc.java
+++ b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/FoldersGrpc.java
@@ -558,7 +558,7 @@ public FoldersFutureStub newStub(
    * organization and to control the policies applied to groups of resources.
    * 
*/ - public abstract static class FoldersImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -571,7 +571,7 @@ public abstract static class FoldersImplBase implements io.grpc.BindableService * identified folder. *
*/ - public void getFolder( + default void getFolder( com.google.cloud.resourcemanager.v3.GetFolderRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetFolderMethod(), responseObserver); @@ -590,7 +590,7 @@ public void getFolder( * identified parent. *
*/ - public void listFolders( + default void listFolders( com.google.cloud.resourcemanager.v3.ListFoldersRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -609,7 +609,7 @@ public void listFolders( * permission `resourcemanager.folders.get`. * */ - public void searchFolders( + default void searchFolders( com.google.cloud.resourcemanager.v3.SearchFoldersRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -646,7 +646,7 @@ public void searchFolders( * identified parent. * */ - public void createFolder( + default void createFolder( com.google.cloud.resourcemanager.v3.CreateFolderRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -672,7 +672,7 @@ public void createFolder( * in the Status.details field. * */ - public void updateFolder( + default void updateFolder( com.google.cloud.resourcemanager.v3.UpdateFolderRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -702,7 +702,7 @@ public void updateFolder( * folder's current and proposed new parent. * */ - public void moveFolder( + default void moveFolder( com.google.cloud.resourcemanager.v3.MoveFolderRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getMoveFolderMethod(), responseObserver); @@ -723,7 +723,7 @@ public void moveFolder( * identified folder. * */ - public void deleteFolder( + default void deleteFolder( com.google.cloud.resourcemanager.v3.DeleteFolderRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -745,7 +745,7 @@ public void deleteFolder( * identified folder. * */ - public void undeleteFolder( + default void undeleteFolder( com.google.cloud.resourcemanager.v3.UndeleteFolderRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -763,7 +763,7 @@ public void undeleteFolder( * on the identified folder. * */ - public void getIamPolicy( + default void getIamPolicy( com.google.iam.v1.GetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -781,7 +781,7 @@ public void getIamPolicy( * on the identified folder. * */ - public void setIamPolicy( + default void setIamPolicy( com.google.iam.v1.SetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -798,92 +798,34 @@ public void setIamPolicy( * There are no permissions required for making this API call. * */ - public void testIamPermissions( + default void testIamPermissions( com.google.iam.v1.TestIamPermissionsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getTestIamPermissionsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Folders. + * + *
+   * Manages Cloud Platform folder resources.
+   * Folders can be used to organize the resources under an
+   * organization and to control the policies applied to groups of resources.
+   * 
+ */ + public abstract static class FoldersImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getGetFolderMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.GetFolderRequest, - com.google.cloud.resourcemanager.v3.Folder>(this, METHODID_GET_FOLDER))) - .addMethod( - getListFoldersMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.ListFoldersRequest, - com.google.cloud.resourcemanager.v3.ListFoldersResponse>( - this, METHODID_LIST_FOLDERS))) - .addMethod( - getSearchFoldersMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.SearchFoldersRequest, - com.google.cloud.resourcemanager.v3.SearchFoldersResponse>( - this, METHODID_SEARCH_FOLDERS))) - .addMethod( - getCreateFolderMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.CreateFolderRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_FOLDER))) - .addMethod( - getUpdateFolderMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.UpdateFolderRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_FOLDER))) - .addMethod( - getMoveFolderMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.MoveFolderRequest, - com.google.longrunning.Operation>(this, METHODID_MOVE_FOLDER))) - .addMethod( - getDeleteFolderMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.DeleteFolderRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_FOLDER))) - .addMethod( - getUndeleteFolderMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.UndeleteFolderRequest, - com.google.longrunning.Operation>(this, METHODID_UNDELETE_FOLDER))) - .addMethod( - getGetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.GetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_GET_IAM_POLICY))) - .addMethod( - getSetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.SetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_SET_IAM_POLICY))) - .addMethod( - getTestIamPermissionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.TestIamPermissionsRequest, - com.google.iam.v1.TestIamPermissionsResponse>( - this, METHODID_TEST_IAM_PERMISSIONS))) - .build(); + return FoldersGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Folders. * *
    * Manages Cloud Platform folder resources.
@@ -1169,7 +1111,7 @@ public void testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Folders.
    *
    * 
    * Manages Cloud Platform folder resources.
@@ -1422,7 +1364,7 @@ public com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Folders.
    *
    * 
    * Manages Cloud Platform folder resources.
@@ -1697,10 +1639,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final FoldersImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(FoldersImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1785,6 +1727,78 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getGetFolderMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.GetFolderRequest,
+                    com.google.cloud.resourcemanager.v3.Folder>(service, METHODID_GET_FOLDER)))
+        .addMethod(
+            getListFoldersMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.ListFoldersRequest,
+                    com.google.cloud.resourcemanager.v3.ListFoldersResponse>(
+                    service, METHODID_LIST_FOLDERS)))
+        .addMethod(
+            getSearchFoldersMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.SearchFoldersRequest,
+                    com.google.cloud.resourcemanager.v3.SearchFoldersResponse>(
+                    service, METHODID_SEARCH_FOLDERS)))
+        .addMethod(
+            getCreateFolderMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.CreateFolderRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_FOLDER)))
+        .addMethod(
+            getUpdateFolderMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.UpdateFolderRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_FOLDER)))
+        .addMethod(
+            getMoveFolderMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.MoveFolderRequest,
+                    com.google.longrunning.Operation>(service, METHODID_MOVE_FOLDER)))
+        .addMethod(
+            getDeleteFolderMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.DeleteFolderRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_FOLDER)))
+        .addMethod(
+            getUndeleteFolderMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.UndeleteFolderRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UNDELETE_FOLDER)))
+        .addMethod(
+            getGetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_GET_IAM_POLICY)))
+        .addMethod(
+            getSetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_SET_IAM_POLICY)))
+        .addMethod(
+            getTestIamPermissionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.iam.v1.TestIamPermissionsRequest,
+                    com.google.iam.v1.TestIamPermissionsResponse>(
+                    service, METHODID_TEST_IAM_PERMISSIONS)))
+        .build();
+  }
+
   private abstract static class FoldersBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/OrganizationsGrpc.java b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/OrganizationsGrpc.java
index 0f28f7aff4c6..928ee0009889 100644
--- a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/OrganizationsGrpc.java
+++ b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/OrganizationsGrpc.java
@@ -300,7 +300,7 @@ public OrganizationsFutureStub newStub(
    * Allows users to manage their organization resources.
    * 
*/ - public abstract static class OrganizationsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -309,7 +309,7 @@ public abstract static class OrganizationsImplBase implements io.grpc.BindableSe * Fetches an organization resource identified by the specified resource name. *
*/ - public void getOrganization( + default void getOrganization( com.google.cloud.resourcemanager.v3.GetOrganizationRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -329,7 +329,7 @@ public void getOrganization( * `resourcemanager.organizations.get` *
*/ - public void searchOrganizations( + default void searchOrganizations( com.google.cloud.resourcemanager.v3.SearchOrganizationsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -348,7 +348,7 @@ public void searchOrganizations( * `resourcemanager.organizations.getIamPolicy` on the specified organization. * */ - public void getIamPolicy( + default void getIamPolicy( com.google.iam.v1.GetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -366,7 +366,7 @@ public void getIamPolicy( * `resourcemanager.organizations.setIamPolicy` on the specified organization. * */ - public void setIamPolicy( + default void setIamPolicy( com.google.iam.v1.SetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -383,56 +383,33 @@ public void setIamPolicy( * There are no permissions required for making this API call. * */ - public void testIamPermissions( + default void testIamPermissions( com.google.iam.v1.TestIamPermissionsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getTestIamPermissionsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Organizations. + * + *
+   * Allows users to manage their organization resources.
+   * 
+ */ + public abstract static class OrganizationsImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getGetOrganizationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.GetOrganizationRequest, - com.google.cloud.resourcemanager.v3.Organization>( - this, METHODID_GET_ORGANIZATION))) - .addMethod( - getSearchOrganizationsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.SearchOrganizationsRequest, - com.google.cloud.resourcemanager.v3.SearchOrganizationsResponse>( - this, METHODID_SEARCH_ORGANIZATIONS))) - .addMethod( - getGetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.GetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_GET_IAM_POLICY))) - .addMethod( - getSetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.SetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_SET_IAM_POLICY))) - .addMethod( - getTestIamPermissionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.TestIamPermissionsRequest, - com.google.iam.v1.TestIamPermissionsResponse>( - this, METHODID_TEST_IAM_PERMISSIONS))) - .build(); + return OrganizationsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Organizations. * *
    * Allows users to manage their organization resources.
@@ -550,7 +527,7 @@ public void testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Organizations.
    *
    * 
    * Allows users to manage their organization resources.
@@ -649,7 +626,7 @@ public com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Organizations.
    *
    * 
    * Allows users to manage their organization resources.
@@ -764,10 +741,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final OrganizationsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(OrganizationsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -821,6 +798,42 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getGetOrganizationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.GetOrganizationRequest,
+                    com.google.cloud.resourcemanager.v3.Organization>(
+                    service, METHODID_GET_ORGANIZATION)))
+        .addMethod(
+            getSearchOrganizationsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.SearchOrganizationsRequest,
+                    com.google.cloud.resourcemanager.v3.SearchOrganizationsResponse>(
+                    service, METHODID_SEARCH_ORGANIZATIONS)))
+        .addMethod(
+            getGetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_GET_IAM_POLICY)))
+        .addMethod(
+            getSetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_SET_IAM_POLICY)))
+        .addMethod(
+            getTestIamPermissionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.iam.v1.TestIamPermissionsRequest,
+                    com.google.iam.v1.TestIamPermissionsResponse>(
+                    service, METHODID_TEST_IAM_PERMISSIONS)))
+        .build();
+  }
+
   private abstract static class OrganizationsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/ProjectsGrpc.java b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/ProjectsGrpc.java
index 0d10e3281a99..b931538eba7f 100644
--- a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/ProjectsGrpc.java
+++ b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/ProjectsGrpc.java
@@ -561,7 +561,7 @@ public ProjectsFutureStub newStub(
    * Manages Google Cloud Projects.
    * 
*/ - public abstract static class ProjectsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -573,7 +573,7 @@ public abstract static class ProjectsImplBase implements io.grpc.BindableService * for this project. *
*/ - public void getProject( + default void getProject( com.google.cloud.resourcemanager.v3.GetProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetProjectMethod(), responseObserver); @@ -591,7 +591,7 @@ public void getProject( * permission on the identified parent. *
*/ - public void listProjects( + default void listProjects( com.google.cloud.resourcemanager.v3.ListProjectsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -613,7 +613,7 @@ public void listProjects( * [GetProject][google.cloud.resourcemanager.v3.Projects.GetProject] method. * */ - public void searchProjects( + default void searchProjects( com.google.cloud.resourcemanager.v3.SearchProjectsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -632,7 +632,7 @@ public void searchProjects( * `DeleteOperation`. * */ - public void createProject( + default void createProject( com.google.cloud.resourcemanager.v3.CreateProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -650,7 +650,7 @@ public void createProject( * project. * */ - public void updateProject( + default void updateProject( com.google.cloud.resourcemanager.v3.UpdateProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -672,7 +672,7 @@ public void updateProject( * project's current and proposed new parent. * */ - public void moveProject( + default void moveProject( com.google.cloud.resourcemanager.v3.MoveProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -711,7 +711,7 @@ public void moveProject( * project. * */ - public void deleteProject( + default void deleteProject( com.google.cloud.resourcemanager.v3.DeleteProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -732,7 +732,7 @@ public void deleteProject( * this project. * */ - public void undeleteProject( + default void undeleteProject( com.google.cloud.resourcemanager.v3.UndeleteProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -747,7 +747,7 @@ public void undeleteProject( * Permission is denied if the policy or the resource do not exist. * */ - public void getIamPolicy( + default void getIamPolicy( com.google.iam.v1.GetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -793,7 +793,7 @@ public void getIamPolicy( * + Calling this method requires enabling the App Engine Admin API. * */ - public void setIamPolicy( + default void setIamPolicy( com.google.iam.v1.SetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -807,92 +807,32 @@ public void setIamPolicy( * Returns permissions that a caller has on the specified project. * */ - public void testIamPermissions( + default void testIamPermissions( com.google.iam.v1.TestIamPermissionsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getTestIamPermissionsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Projects. + * + *
+   * Manages Google Cloud Projects.
+   * 
+ */ + public abstract static class ProjectsImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getGetProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.GetProjectRequest, - com.google.cloud.resourcemanager.v3.Project>(this, METHODID_GET_PROJECT))) - .addMethod( - getListProjectsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.ListProjectsRequest, - com.google.cloud.resourcemanager.v3.ListProjectsResponse>( - this, METHODID_LIST_PROJECTS))) - .addMethod( - getSearchProjectsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.SearchProjectsRequest, - com.google.cloud.resourcemanager.v3.SearchProjectsResponse>( - this, METHODID_SEARCH_PROJECTS))) - .addMethod( - getCreateProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.CreateProjectRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_PROJECT))) - .addMethod( - getUpdateProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.UpdateProjectRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_PROJECT))) - .addMethod( - getMoveProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.MoveProjectRequest, - com.google.longrunning.Operation>(this, METHODID_MOVE_PROJECT))) - .addMethod( - getDeleteProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.DeleteProjectRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_PROJECT))) - .addMethod( - getUndeleteProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.UndeleteProjectRequest, - com.google.longrunning.Operation>(this, METHODID_UNDELETE_PROJECT))) - .addMethod( - getGetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.GetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_GET_IAM_POLICY))) - .addMethod( - getSetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.SetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_SET_IAM_POLICY))) - .addMethod( - getTestIamPermissionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.TestIamPermissionsRequest, - com.google.iam.v1.TestIamPermissionsResponse>( - this, METHODID_TEST_IAM_PERMISSIONS))) - .build(); + return ProjectsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Projects. * *
    * Manages Google Cloud Projects.
@@ -1183,7 +1123,7 @@ public void testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Projects.
    *
    * 
    * Manages Google Cloud Projects.
@@ -1439,7 +1379,7 @@ public com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Projects.
    *
    * 
    * Manages Google Cloud Projects.
@@ -1717,10 +1657,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ProjectsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ProjectsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1806,6 +1746,78 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getGetProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.GetProjectRequest,
+                    com.google.cloud.resourcemanager.v3.Project>(service, METHODID_GET_PROJECT)))
+        .addMethod(
+            getListProjectsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.ListProjectsRequest,
+                    com.google.cloud.resourcemanager.v3.ListProjectsResponse>(
+                    service, METHODID_LIST_PROJECTS)))
+        .addMethod(
+            getSearchProjectsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.SearchProjectsRequest,
+                    com.google.cloud.resourcemanager.v3.SearchProjectsResponse>(
+                    service, METHODID_SEARCH_PROJECTS)))
+        .addMethod(
+            getCreateProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.CreateProjectRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_PROJECT)))
+        .addMethod(
+            getUpdateProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.UpdateProjectRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_PROJECT)))
+        .addMethod(
+            getMoveProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.MoveProjectRequest,
+                    com.google.longrunning.Operation>(service, METHODID_MOVE_PROJECT)))
+        .addMethod(
+            getDeleteProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.DeleteProjectRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_PROJECT)))
+        .addMethod(
+            getUndeleteProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.UndeleteProjectRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UNDELETE_PROJECT)))
+        .addMethod(
+            getGetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_GET_IAM_POLICY)))
+        .addMethod(
+            getSetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_SET_IAM_POLICY)))
+        .addMethod(
+            getTestIamPermissionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.iam.v1.TestIamPermissionsRequest,
+                    com.google.iam.v1.TestIamPermissionsResponse>(
+                    service, METHODID_TEST_IAM_PERMISSIONS)))
+        .build();
+  }
+
   private abstract static class ProjectsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagBindingsGrpc.java b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagBindingsGrpc.java
index b81a843bbbe2..11eea9524182 100644
--- a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagBindingsGrpc.java
+++ b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagBindingsGrpc.java
@@ -223,7 +223,7 @@ public TagBindingsFutureStub newStub(
    * different cloud resources throughout the GCP resource hierarchy.
    * 
*/ - public abstract static class TagBindingsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -235,7 +235,7 @@ public abstract static class TagBindingsImplBase implements io.grpc.BindableServ * https://cloud.google.com/apis/design/resource_names#full_resource_name *
*/ - public void listTagBindings( + default void listTagBindings( com.google.cloud.resourcemanager.v3.ListTagBindingsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -251,7 +251,7 @@ public void listTagBindings( * (currently project, folder, or organization). *
*/ - public void createTagBinding( + default void createTagBinding( com.google.cloud.resourcemanager.v3.CreateTagBindingRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -265,41 +265,33 @@ public void createTagBinding( * Deletes a TagBinding. * */ - public void deleteTagBinding( + default void deleteTagBinding( com.google.cloud.resourcemanager.v3.DeleteTagBindingRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteTagBindingMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service TagBindings. + * + *
+   * Allow users to create and manage TagBindings between TagValues and
+   * different cloud resources throughout the GCP resource hierarchy.
+   * 
+ */ + public abstract static class TagBindingsImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListTagBindingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.ListTagBindingsRequest, - com.google.cloud.resourcemanager.v3.ListTagBindingsResponse>( - this, METHODID_LIST_TAG_BINDINGS))) - .addMethod( - getCreateTagBindingMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.CreateTagBindingRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_TAG_BINDING))) - .addMethod( - getDeleteTagBindingMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.DeleteTagBindingRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_TAG_BINDING))) - .build(); + return TagBindingsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service TagBindings. * *
    * Allow users to create and manage TagBindings between TagValues and
@@ -372,7 +364,7 @@ public void deleteTagBinding(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service TagBindings.
    *
    * 
    * Allow users to create and manage TagBindings between TagValues and
@@ -436,7 +428,7 @@ public com.google.longrunning.Operation deleteTagBinding(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service TagBindings.
    *
    * 
    * Allow users to create and manage TagBindings between TagValues and
@@ -509,10 +501,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final TagBindingsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(TagBindingsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -554,6 +546,30 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListTagBindingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.ListTagBindingsRequest,
+                    com.google.cloud.resourcemanager.v3.ListTagBindingsResponse>(
+                    service, METHODID_LIST_TAG_BINDINGS)))
+        .addMethod(
+            getCreateTagBindingMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.CreateTagBindingRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_TAG_BINDING)))
+        .addMethod(
+            getDeleteTagBindingMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.DeleteTagBindingRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_TAG_BINDING)))
+        .build();
+  }
+
   private abstract static class TagBindingsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagKeysGrpc.java b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagKeysGrpc.java
index f65d5431f839..571702cc203d 100644
--- a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagKeysGrpc.java
+++ b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagKeysGrpc.java
@@ -421,7 +421,7 @@ public TagKeysFutureStub newStub(
    * Allow users to create and manage tag keys.
    * 
*/ - public abstract static class TagKeysImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -430,7 +430,7 @@ public abstract static class TagKeysImplBase implements io.grpc.BindableService * Lists all TagKeys for a parent resource. *
*/ - public void listTagKeys( + default void listTagKeys( com.google.cloud.resourcemanager.v3.ListTagKeysRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -446,7 +446,7 @@ public void listTagKeys( * key does not exist or the user does not have permission to view it. *
*/ - public void getTagKey( + default void getTagKey( com.google.cloud.resourcemanager.v3.GetTagKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetTagKeyMethod(), responseObserver); @@ -462,7 +462,7 @@ public void getTagKey( * any given time. * */ - public void createTagKey( + default void createTagKey( com.google.cloud.resourcemanager.v3.CreateTagKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -476,7 +476,7 @@ public void createTagKey( * Updates the attributes of the TagKey resource. * */ - public void updateTagKey( + default void updateTagKey( com.google.cloud.resourcemanager.v3.UpdateTagKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -491,7 +491,7 @@ public void updateTagKey( * TagValues. * */ - public void deleteTagKey( + default void deleteTagKey( com.google.cloud.resourcemanager.v3.DeleteTagKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -510,7 +510,7 @@ public void deleteTagKey( * the specified TagKey. * */ - public void getIamPolicy( + default void getIamPolicy( com.google.iam.v1.GetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -528,7 +528,7 @@ public void getIamPolicy( * on the identified tagValue. * */ - public void setIamPolicy( + default void setIamPolicy( com.google.iam.v1.SetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -545,73 +545,32 @@ public void setIamPolicy( * There are no permissions required for making this API call. * */ - public void testIamPermissions( + default void testIamPermissions( com.google.iam.v1.TestIamPermissionsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getTestIamPermissionsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service TagKeys. + * + *
+   * Allow users to create and manage tag keys.
+   * 
+ */ + public abstract static class TagKeysImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListTagKeysMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.ListTagKeysRequest, - com.google.cloud.resourcemanager.v3.ListTagKeysResponse>( - this, METHODID_LIST_TAG_KEYS))) - .addMethod( - getGetTagKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.GetTagKeyRequest, - com.google.cloud.resourcemanager.v3.TagKey>(this, METHODID_GET_TAG_KEY))) - .addMethod( - getCreateTagKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.CreateTagKeyRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_TAG_KEY))) - .addMethod( - getUpdateTagKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.UpdateTagKeyRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_TAG_KEY))) - .addMethod( - getDeleteTagKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.DeleteTagKeyRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_TAG_KEY))) - .addMethod( - getGetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.GetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_GET_IAM_POLICY))) - .addMethod( - getSetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.SetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_SET_IAM_POLICY))) - .addMethod( - getTestIamPermissionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.TestIamPermissionsRequest, - com.google.iam.v1.TestIamPermissionsResponse>( - this, METHODID_TEST_IAM_PERMISSIONS))) - .build(); + return TagKeysGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service TagKeys. * *
    * Allow users to create and manage tag keys.
@@ -774,7 +733,7 @@ public void testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service TagKeys.
    *
    * 
    * Allow users to create and manage tag keys.
@@ -912,7 +871,7 @@ public com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service TagKeys.
    *
    * 
    * Allow users to create and manage tag keys.
@@ -1068,10 +1027,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final TagKeysImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(TagKeysImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1139,6 +1098,59 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListTagKeysMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.ListTagKeysRequest,
+                    com.google.cloud.resourcemanager.v3.ListTagKeysResponse>(
+                    service, METHODID_LIST_TAG_KEYS)))
+        .addMethod(
+            getGetTagKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.GetTagKeyRequest,
+                    com.google.cloud.resourcemanager.v3.TagKey>(service, METHODID_GET_TAG_KEY)))
+        .addMethod(
+            getCreateTagKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.CreateTagKeyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_TAG_KEY)))
+        .addMethod(
+            getUpdateTagKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.UpdateTagKeyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_TAG_KEY)))
+        .addMethod(
+            getDeleteTagKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.DeleteTagKeyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_TAG_KEY)))
+        .addMethod(
+            getGetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_GET_IAM_POLICY)))
+        .addMethod(
+            getSetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_SET_IAM_POLICY)))
+        .addMethod(
+            getTestIamPermissionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.iam.v1.TestIamPermissionsRequest,
+                    com.google.iam.v1.TestIamPermissionsResponse>(
+                    service, METHODID_TEST_IAM_PERMISSIONS)))
+        .build();
+  }
+
   private abstract static class TagKeysBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagValuesGrpc.java b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagValuesGrpc.java
index d30acda1afee..128343ac398a 100644
--- a/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagValuesGrpc.java
+++ b/java-resourcemanager/grpc-google-cloud-resourcemanager-v3/src/main/java/com/google/cloud/resourcemanager/v3/TagValuesGrpc.java
@@ -427,7 +427,7 @@ public TagValuesFutureStub newStub(
    * Allow users to create and manage tag values.
    * 
*/ - public abstract static class TagValuesImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -436,7 +436,7 @@ public abstract static class TagValuesImplBase implements io.grpc.BindableServic * Lists all TagValues for a specific TagKey. *
*/ - public void listTagValues( + default void listTagValues( com.google.cloud.resourcemanager.v3.ListTagValuesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -453,7 +453,7 @@ public void listTagValues( * `PERMISSION_DENIED`. *
*/ - public void getTagValue( + default void getTagValue( com.google.cloud.resourcemanager.v3.GetTagValueRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -471,7 +471,7 @@ public void getTagValue( * TagValues can exist under a TagKey at any given time. * */ - public void createTagValue( + default void createTagValue( com.google.cloud.resourcemanager.v3.CreateTagValueRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -485,7 +485,7 @@ public void createTagValue( * Updates the attributes of the TagValue resource. * */ - public void updateTagValue( + default void updateTagValue( com.google.cloud.resourcemanager.v3.UpdateTagValueRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -500,7 +500,7 @@ public void updateTagValue( * deleted. * */ - public void deleteTagValue( + default void deleteTagValue( com.google.cloud.resourcemanager.v3.DeleteTagValueRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -519,7 +519,7 @@ public void deleteTagValue( * the identified TagValue to get the access control policy. * */ - public void getIamPolicy( + default void getIamPolicy( com.google.iam.v1.GetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -537,7 +537,7 @@ public void getIamPolicy( * on the identified tagValue. * */ - public void setIamPolicy( + default void setIamPolicy( com.google.iam.v1.SetIamPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -554,73 +554,32 @@ public void setIamPolicy( * There are no permissions required for making this API call. * */ - public void testIamPermissions( + default void testIamPermissions( com.google.iam.v1.TestIamPermissionsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getTestIamPermissionsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service TagValues. + * + *
+   * Allow users to create and manage tag values.
+   * 
+ */ + public abstract static class TagValuesImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListTagValuesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.ListTagValuesRequest, - com.google.cloud.resourcemanager.v3.ListTagValuesResponse>( - this, METHODID_LIST_TAG_VALUES))) - .addMethod( - getGetTagValueMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.GetTagValueRequest, - com.google.cloud.resourcemanager.v3.TagValue>(this, METHODID_GET_TAG_VALUE))) - .addMethod( - getCreateTagValueMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.CreateTagValueRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_TAG_VALUE))) - .addMethod( - getUpdateTagValueMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.UpdateTagValueRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_TAG_VALUE))) - .addMethod( - getDeleteTagValueMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.resourcemanager.v3.DeleteTagValueRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_TAG_VALUE))) - .addMethod( - getGetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.GetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_GET_IAM_POLICY))) - .addMethod( - getSetIamPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.SetIamPolicyRequest, com.google.iam.v1.Policy>( - this, METHODID_SET_IAM_POLICY))) - .addMethod( - getTestIamPermissionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.iam.v1.TestIamPermissionsRequest, - com.google.iam.v1.TestIamPermissionsResponse>( - this, METHODID_TEST_IAM_PERMISSIONS))) - .build(); + return TagValuesGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service TagValues. * *
    * Allow users to create and manage tag values.
@@ -787,7 +746,7 @@ public void testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service TagValues.
    *
    * 
    * Allow users to create and manage tag values.
@@ -927,7 +886,7 @@ public com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service TagValues.
    *
    * 
    * Allow users to create and manage tag values.
@@ -1084,10 +1043,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final TagValuesImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(TagValuesImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1156,6 +1115,59 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListTagValuesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.ListTagValuesRequest,
+                    com.google.cloud.resourcemanager.v3.ListTagValuesResponse>(
+                    service, METHODID_LIST_TAG_VALUES)))
+        .addMethod(
+            getGetTagValueMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.GetTagValueRequest,
+                    com.google.cloud.resourcemanager.v3.TagValue>(service, METHODID_GET_TAG_VALUE)))
+        .addMethod(
+            getCreateTagValueMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.CreateTagValueRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_TAG_VALUE)))
+        .addMethod(
+            getUpdateTagValueMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.UpdateTagValueRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_TAG_VALUE)))
+        .addMethod(
+            getDeleteTagValueMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.resourcemanager.v3.DeleteTagValueRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_TAG_VALUE)))
+        .addMethod(
+            getGetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_GET_IAM_POLICY)))
+        .addMethod(
+            getSetIamPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers(
+                    service, METHODID_SET_IAM_POLICY)))
+        .addMethod(
+            getTestIamPermissionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.iam.v1.TestIamPermissionsRequest,
+                    com.google.iam.v1.TestIamPermissionsResponse>(
+                    service, METHODID_TEST_IAM_PERMISSIONS)))
+        .build();
+  }
+
   private abstract static class TagValuesBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/README.md b/java-retail/README.md
index c82556b5f731..e9985bc81209 100644
--- a/java-retail/README.md
+++ b/java-retail/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud Retail][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
-
 
 
+
 ```xml
 
   com.google.cloud
@@ -52,7 +52,7 @@ The client application making API calls must be granted [authorization scopes][a
 You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Retail [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud Retail.
 [Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
-[installing the Google Cloud SDK][cloud-sdk] and running the following commands in command line:
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
 `gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
 
 ### Installation and setup
@@ -173,14 +173,14 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/google-cloud-java/java11.html
 [stability-image]: https://img.shields.io/badge/stability-stable-green
 [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-retail.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-retail&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-retail/2.15.0
 [authentication]: https://github.com/googleapis/google-cloud-java#authentication
 [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
 [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
 [iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
 [developer-console]: https://console.developers.google.com/
 [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
-[cloud-sdk]: https://cloud.google.com/sdk/
+[cloud-cli]: https://cloud.google.com/cli
 [troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting
 [contributing]: https://github.com/googleapis/google-cloud-java/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/google-cloud-java/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CatalogServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CatalogServiceGrpc.java
index 83ed2efd57a6..4492994366b3 100644
--- a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CatalogServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CatalogServiceGrpc.java
@@ -600,7 +600,7 @@ public CatalogServiceFutureStub newStub(
    * Service for managing catalog configuration.
    * 
*/ - public abstract static class CatalogServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -610,7 +610,7 @@ public abstract static class CatalogServiceImplBase implements io.grpc.BindableS * the project. *
*/ - public void listCatalogs( + default void listCatalogs( com.google.cloud.retail.v2.ListCatalogsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -625,7 +625,7 @@ public void listCatalogs( * Updates the [Catalog][google.cloud.retail.v2.Catalog]s. *
*/ - public void updateCatalog( + default void updateCatalog( com.google.cloud.retail.v2.UpdateCatalogRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -666,7 +666,7 @@ public void updateCatalog( * {newBranch}. * */ - public void setDefaultBranch( + default void setDefaultBranch( com.google.cloud.retail.v2.SetDefaultBranchRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -682,7 +682,7 @@ public void setDefaultBranch( * method under a specified parent catalog. * */ - public void getDefaultBranch( + default void getDefaultBranch( com.google.cloud.retail.v2.GetDefaultBranchRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -697,7 +697,7 @@ public void getDefaultBranch( * Gets a [CompletionConfig][google.cloud.retail.v2.CompletionConfig]. * */ - public void getCompletionConfig( + default void getCompletionConfig( com.google.cloud.retail.v2.GetCompletionConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -711,7 +711,7 @@ public void getCompletionConfig( * Updates the [CompletionConfig][google.cloud.retail.v2.CompletionConfig]s. * */ - public void updateCompletionConfig( + default void updateCompletionConfig( com.google.cloud.retail.v2.UpdateCompletionConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -725,7 +725,7 @@ public void updateCompletionConfig( * Gets an [AttributesConfig][google.cloud.retail.v2.AttributesConfig]. * */ - public void getAttributesConfig( + default void getAttributesConfig( com.google.cloud.retail.v2.GetAttributesConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -745,7 +745,7 @@ public void getAttributesConfig( * catalog attribute fields, e.g., searchable and dynamic facetable options. * */ - public void updateAttributesConfig( + default void updateAttributesConfig( com.google.cloud.retail.v2.UpdateAttributesConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -763,7 +763,7 @@ public void updateAttributesConfig( * already exists, an ALREADY_EXISTS error is returned. * */ - public void addCatalogAttribute( + default void addCatalogAttribute( com.google.cloud.retail.v2.AddCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -781,7 +781,7 @@ public void addCatalogAttribute( * remove does not exist, a NOT_FOUND error is returned. * */ - public void removeCatalogAttribute( + default void removeCatalogAttribute( com.google.cloud.retail.v2.RemoveCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -801,97 +801,32 @@ public void removeCatalogAttribute( * replace does not exist, a NOT_FOUND error is returned. * */ - public void replaceCatalogAttribute( + default void replaceCatalogAttribute( com.google.cloud.retail.v2.ReplaceCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getReplaceCatalogAttributeMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CatalogService. + * + *
+   * Service for managing catalog configuration.
+   * 
+ */ + public abstract static class CatalogServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListCatalogsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.ListCatalogsRequest, - com.google.cloud.retail.v2.ListCatalogsResponse>( - this, METHODID_LIST_CATALOGS))) - .addMethod( - getUpdateCatalogMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.UpdateCatalogRequest, - com.google.cloud.retail.v2.Catalog>(this, METHODID_UPDATE_CATALOG))) - .addMethod( - getSetDefaultBranchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.SetDefaultBranchRequest, - com.google.protobuf.Empty>(this, METHODID_SET_DEFAULT_BRANCH))) - .addMethod( - getGetDefaultBranchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.GetDefaultBranchRequest, - com.google.cloud.retail.v2.GetDefaultBranchResponse>( - this, METHODID_GET_DEFAULT_BRANCH))) - .addMethod( - getGetCompletionConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.GetCompletionConfigRequest, - com.google.cloud.retail.v2.CompletionConfig>( - this, METHODID_GET_COMPLETION_CONFIG))) - .addMethod( - getUpdateCompletionConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.UpdateCompletionConfigRequest, - com.google.cloud.retail.v2.CompletionConfig>( - this, METHODID_UPDATE_COMPLETION_CONFIG))) - .addMethod( - getGetAttributesConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.GetAttributesConfigRequest, - com.google.cloud.retail.v2.AttributesConfig>( - this, METHODID_GET_ATTRIBUTES_CONFIG))) - .addMethod( - getUpdateAttributesConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.UpdateAttributesConfigRequest, - com.google.cloud.retail.v2.AttributesConfig>( - this, METHODID_UPDATE_ATTRIBUTES_CONFIG))) - .addMethod( - getAddCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.AddCatalogAttributeRequest, - com.google.cloud.retail.v2.AttributesConfig>( - this, METHODID_ADD_CATALOG_ATTRIBUTE))) - .addMethod( - getRemoveCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.RemoveCatalogAttributeRequest, - com.google.cloud.retail.v2.AttributesConfig>( - this, METHODID_REMOVE_CATALOG_ATTRIBUTE))) - .addMethod( - getReplaceCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.ReplaceCatalogAttributeRequest, - com.google.cloud.retail.v2.AttributesConfig>( - this, METHODID_REPLACE_CATALOG_ATTRIBUTE))) - .build(); + return CatalogServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CatalogService. * *
    * Service for managing catalog configuration.
@@ -1138,7 +1073,7 @@ public void replaceCatalogAttribute(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CatalogService.
    *
    * 
    * Service for managing catalog configuration.
@@ -1351,7 +1286,7 @@ public com.google.cloud.retail.v2.AttributesConfig replaceCatalogAttribute(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CatalogService.
    *
    * 
    * Service for managing catalog configuration.
@@ -1589,10 +1524,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CatalogServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CatalogServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1681,6 +1616,86 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListCatalogsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.ListCatalogsRequest,
+                    com.google.cloud.retail.v2.ListCatalogsResponse>(
+                    service, METHODID_LIST_CATALOGS)))
+        .addMethod(
+            getUpdateCatalogMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.UpdateCatalogRequest,
+                    com.google.cloud.retail.v2.Catalog>(service, METHODID_UPDATE_CATALOG)))
+        .addMethod(
+            getSetDefaultBranchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.SetDefaultBranchRequest, com.google.protobuf.Empty>(
+                    service, METHODID_SET_DEFAULT_BRANCH)))
+        .addMethod(
+            getGetDefaultBranchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.GetDefaultBranchRequest,
+                    com.google.cloud.retail.v2.GetDefaultBranchResponse>(
+                    service, METHODID_GET_DEFAULT_BRANCH)))
+        .addMethod(
+            getGetCompletionConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.GetCompletionConfigRequest,
+                    com.google.cloud.retail.v2.CompletionConfig>(
+                    service, METHODID_GET_COMPLETION_CONFIG)))
+        .addMethod(
+            getUpdateCompletionConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.UpdateCompletionConfigRequest,
+                    com.google.cloud.retail.v2.CompletionConfig>(
+                    service, METHODID_UPDATE_COMPLETION_CONFIG)))
+        .addMethod(
+            getGetAttributesConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.GetAttributesConfigRequest,
+                    com.google.cloud.retail.v2.AttributesConfig>(
+                    service, METHODID_GET_ATTRIBUTES_CONFIG)))
+        .addMethod(
+            getUpdateAttributesConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.UpdateAttributesConfigRequest,
+                    com.google.cloud.retail.v2.AttributesConfig>(
+                    service, METHODID_UPDATE_ATTRIBUTES_CONFIG)))
+        .addMethod(
+            getAddCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.AddCatalogAttributeRequest,
+                    com.google.cloud.retail.v2.AttributesConfig>(
+                    service, METHODID_ADD_CATALOG_ATTRIBUTE)))
+        .addMethod(
+            getRemoveCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.RemoveCatalogAttributeRequest,
+                    com.google.cloud.retail.v2.AttributesConfig>(
+                    service, METHODID_REMOVE_CATALOG_ATTRIBUTE)))
+        .addMethod(
+            getReplaceCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.ReplaceCatalogAttributeRequest,
+                    com.google.cloud.retail.v2.AttributesConfig>(
+                    service, METHODID_REPLACE_CATALOG_ATTRIBUTE)))
+        .build();
+  }
+
   private abstract static class CatalogServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompletionServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompletionServiceGrpc.java
index 78c6c24338d8..170553f1f2a3 100644
--- a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompletionServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompletionServiceGrpc.java
@@ -180,7 +180,7 @@ public CompletionServiceFutureStub newStub(
    * Enable Retail Search on Cloud Console before using this feature.
    * 
*/ - public abstract static class CompletionServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -191,7 +191,7 @@ public abstract static class CompletionServiceImplBase implements io.grpc.Bindab * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void completeQuery( + default void completeQuery( com.google.cloud.retail.v2.CompleteQueryRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -211,35 +211,34 @@ public void completeQuery( * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void importCompletionData( + default void importCompletionData( com.google.cloud.retail.v2.ImportCompletionDataRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getImportCompletionDataMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CompletionService. + * + *
+   * Auto-completion service for retail.
+   * This feature is only available for users who have Retail Search enabled.
+   * Enable Retail Search on Cloud Console before using this feature.
+   * 
+ */ + public abstract static class CompletionServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCompleteQueryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.CompleteQueryRequest, - com.google.cloud.retail.v2.CompleteQueryResponse>( - this, METHODID_COMPLETE_QUERY))) - .addMethod( - getImportCompletionDataMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.ImportCompletionDataRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_COMPLETION_DATA))) - .build(); + return CompletionServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CompletionService. * *
    * Auto-completion service for retail.
@@ -301,7 +300,7 @@ public void importCompletionData(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CompletionService.
    *
    * 
    * Auto-completion service for retail.
@@ -357,7 +356,7 @@ public com.google.longrunning.Operation importCompletionData(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CompletionService.
    *
    * 
    * Auto-completion service for retail.
@@ -420,10 +419,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CompletionServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CompletionServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -459,6 +458,24 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCompleteQueryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.CompleteQueryRequest,
+                    com.google.cloud.retail.v2.CompleteQueryResponse>(
+                    service, METHODID_COMPLETE_QUERY)))
+        .addMethod(
+            getImportCompletionDataMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.ImportCompletionDataRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_COMPLETION_DATA)))
+        .build();
+  }
+
   private abstract static class CompletionServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ControlServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ControlServiceGrpc.java
index a0fcb7e5ced2..4c186a457d7b 100644
--- a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ControlServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ControlServiceGrpc.java
@@ -294,7 +294,7 @@ public ControlServiceFutureStub newStub(
    * Service for modifying Control.
    * 
*/ - public abstract static class ControlServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -305,7 +305,7 @@ public abstract static class ControlServiceImplBase implements io.grpc.BindableS * an ALREADY_EXISTS error is returned. *
*/ - public void createControl( + default void createControl( com.google.cloud.retail.v2.CreateControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -321,7 +321,7 @@ public void createControl( * a NOT_FOUND error is returned. *
*/ - public void deleteControl( + default void deleteControl( com.google.cloud.retail.v2.DeleteControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -339,7 +339,7 @@ public void deleteControl( * NOT_FOUND error is returned. * */ - public void updateControl( + default void updateControl( com.google.cloud.retail.v2.UpdateControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -353,7 +353,7 @@ public void updateControl( * Gets a Control. * */ - public void getControl( + default void getControl( com.google.cloud.retail.v2.GetControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetControlMethod(), responseObserver); @@ -367,54 +367,33 @@ public void getControl( * [Catalog][google.cloud.retail.v2.Catalog]. * */ - public void listControls( + default void listControls( com.google.cloud.retail.v2.ListControlsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListControlsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ControlService. + * + *
+   * Service for modifying Control.
+   * 
+ */ + public abstract static class ControlServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.CreateControlRequest, - com.google.cloud.retail.v2.Control>(this, METHODID_CREATE_CONTROL))) - .addMethod( - getDeleteControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.DeleteControlRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_CONTROL))) - .addMethod( - getUpdateControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.UpdateControlRequest, - com.google.cloud.retail.v2.Control>(this, METHODID_UPDATE_CONTROL))) - .addMethod( - getGetControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.GetControlRequest, - com.google.cloud.retail.v2.Control>(this, METHODID_GET_CONTROL))) - .addMethod( - getListControlsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.ListControlsRequest, - com.google.cloud.retail.v2.ListControlsResponse>( - this, METHODID_LIST_CONTROLS))) - .build(); + return ControlServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ControlService. * *
    * Service for modifying Control.
@@ -521,7 +500,7 @@ public void listControls(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ControlService.
    *
    * 
    * Service for modifying Control.
@@ -615,7 +594,7 @@ public com.google.cloud.retail.v2.ListControlsResponse listControls(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ControlService.
    *
    * 
    * Service for modifying Control.
@@ -720,10 +699,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ControlServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ControlServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -774,6 +753,42 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.CreateControlRequest,
+                    com.google.cloud.retail.v2.Control>(service, METHODID_CREATE_CONTROL)))
+        .addMethod(
+            getDeleteControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.DeleteControlRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_CONTROL)))
+        .addMethod(
+            getUpdateControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.UpdateControlRequest,
+                    com.google.cloud.retail.v2.Control>(service, METHODID_UPDATE_CONTROL)))
+        .addMethod(
+            getGetControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.GetControlRequest,
+                    com.google.cloud.retail.v2.Control>(service, METHODID_GET_CONTROL)))
+        .addMethod(
+            getListControlsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.ListControlsRequest,
+                    com.google.cloud.retail.v2.ListControlsResponse>(
+                    service, METHODID_LIST_CONTROLS)))
+        .build();
+  }
+
   private abstract static class ControlServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictionServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictionServiceGrpc.java
index 12c1174f9f36..ced3aeb08a45 100644
--- a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictionServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictionServiceGrpc.java
@@ -124,7 +124,7 @@ public PredictionServiceFutureStub newStub(
    * Service for making recommendation prediction.
    * 
*/ - public abstract static class PredictionServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -133,27 +133,31 @@ public abstract static class PredictionServiceImplBase implements io.grpc.Bindab * Makes a recommendation prediction. *
*/ - public void predict( + default void predict( com.google.cloud.retail.v2.PredictRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPredictMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service PredictionService. + * + *
+   * Service for making recommendation prediction.
+   * 
+ */ + public abstract static class PredictionServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getPredictMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.PredictRequest, - com.google.cloud.retail.v2.PredictResponse>(this, METHODID_PREDICT))) - .build(); + return PredictionServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service PredictionService. * *
    * Service for making recommendation prediction.
@@ -187,7 +191,7 @@ public void predict(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service PredictionService.
    *
    * 
    * Service for making recommendation prediction.
@@ -221,7 +225,7 @@ public com.google.cloud.retail.v2.PredictResponse predict(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service PredictionService.
    *
    * 
    * Service for making recommendation prediction.
@@ -261,10 +265,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final PredictionServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(PredictionServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -295,6 +299,17 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getPredictMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.PredictRequest,
+                    com.google.cloud.retail.v2.PredictResponse>(service, METHODID_PREDICT)))
+        .build();
+  }
+
   private abstract static class PredictionServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductServiceGrpc.java
index 25f8bbab9840..3fb22114f61f 100644
--- a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductServiceGrpc.java
@@ -571,7 +571,7 @@ public ProductServiceFutureStub newStub(
    * of the customer's website.
    * 
*/ - public abstract static class ProductServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -580,7 +580,7 @@ public abstract static class ProductServiceImplBase implements io.grpc.BindableS * Creates a [Product][google.cloud.retail.v2.Product]. *
*/ - public void createProduct( + default void createProduct( com.google.cloud.retail.v2.CreateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -594,7 +594,7 @@ public void createProduct( * Gets a [Product][google.cloud.retail.v2.Product]. *
*/ - public void getProduct( + default void getProduct( com.google.cloud.retail.v2.GetProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetProductMethod(), responseObserver); @@ -607,7 +607,7 @@ public void getProduct( * Gets a list of [Product][google.cloud.retail.v2.Product]s. *
*/ - public void listProducts( + default void listProducts( com.google.cloud.retail.v2.ListProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -622,7 +622,7 @@ public void listProducts( * Updates a [Product][google.cloud.retail.v2.Product]. * */ - public void updateProduct( + default void updateProduct( com.google.cloud.retail.v2.UpdateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -636,7 +636,7 @@ public void updateProduct( * Deletes a [Product][google.cloud.retail.v2.Product]. * */ - public void deleteProduct( + default void deleteProduct( com.google.cloud.retail.v2.DeleteProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -654,7 +654,7 @@ public void deleteProduct( * [Product][google.cloud.retail.v2.Product]s to be successfully updated. * */ - public void importProducts( + default void importProducts( com.google.cloud.retail.v2.ImportProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -711,7 +711,7 @@ public void importProducts( * Enable Retail Search on Cloud Console before using this feature. * */ - public void setInventory( + default void setInventory( com.google.cloud.retail.v2.SetInventoryRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -744,7 +744,7 @@ public void setInventory( * Enable Retail Search on Cloud Console before using this feature. * */ - public void addFulfillmentPlaces( + default void addFulfillmentPlaces( com.google.cloud.retail.v2.AddFulfillmentPlacesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -777,7 +777,7 @@ public void addFulfillmentPlaces( * Enable Retail Search on Cloud Console before using this feature. * */ - public void removeFulfillmentPlaces( + default void removeFulfillmentPlaces( com.google.cloud.retail.v2.RemoveFulfillmentPlacesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -816,7 +816,7 @@ public void removeFulfillmentPlaces( * Enable Retail Search on Cloud Console before using this feature. * */ - public void addLocalInventories( + default void addLocalInventories( com.google.cloud.retail.v2.AddLocalInventoriesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -853,89 +853,33 @@ public void addLocalInventories( * Enable Retail Search on Cloud Console before using this feature. * */ - public void removeLocalInventories( + default void removeLocalInventories( com.google.cloud.retail.v2.RemoveLocalInventoriesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRemoveLocalInventoriesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ProductService. + * + *
+   * Service for ingesting [Product][google.cloud.retail.v2.Product] information
+   * of the customer's website.
+   * 
+ */ + public abstract static class ProductServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.CreateProductRequest, - com.google.cloud.retail.v2.Product>(this, METHODID_CREATE_PRODUCT))) - .addMethod( - getGetProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.GetProductRequest, - com.google.cloud.retail.v2.Product>(this, METHODID_GET_PRODUCT))) - .addMethod( - getListProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.ListProductsRequest, - com.google.cloud.retail.v2.ListProductsResponse>( - this, METHODID_LIST_PRODUCTS))) - .addMethod( - getUpdateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.UpdateProductRequest, - com.google.cloud.retail.v2.Product>(this, METHODID_UPDATE_PRODUCT))) - .addMethod( - getDeleteProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.DeleteProductRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_PRODUCT))) - .addMethod( - getImportProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.ImportProductsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_PRODUCTS))) - .addMethod( - getSetInventoryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.SetInventoryRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INVENTORY))) - .addMethod( - getAddFulfillmentPlacesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.AddFulfillmentPlacesRequest, - com.google.longrunning.Operation>(this, METHODID_ADD_FULFILLMENT_PLACES))) - .addMethod( - getRemoveFulfillmentPlacesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.RemoveFulfillmentPlacesRequest, - com.google.longrunning.Operation>(this, METHODID_REMOVE_FULFILLMENT_PLACES))) - .addMethod( - getAddLocalInventoriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.AddLocalInventoriesRequest, - com.google.longrunning.Operation>(this, METHODID_ADD_LOCAL_INVENTORIES))) - .addMethod( - getRemoveLocalInventoriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.RemoveLocalInventoriesRequest, - com.google.longrunning.Operation>(this, METHODID_REMOVE_LOCAL_INVENTORIES))) - .build(); + return ProductServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ProductService. * *
    * Service for ingesting [Product][google.cloud.retail.v2.Product] information
@@ -1263,7 +1207,7 @@ public void removeLocalInventories(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ProductService.
    *
    * 
    * Service for ingesting [Product][google.cloud.retail.v2.Product] information
@@ -1560,7 +1504,7 @@ public com.google.longrunning.Operation removeLocalInventories(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ProductService.
    *
    * 
    * Service for ingesting [Product][google.cloud.retail.v2.Product] information
@@ -1874,10 +1818,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ProductServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ProductServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1958,6 +1902,78 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.CreateProductRequest,
+                    com.google.cloud.retail.v2.Product>(service, METHODID_CREATE_PRODUCT)))
+        .addMethod(
+            getGetProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.GetProductRequest,
+                    com.google.cloud.retail.v2.Product>(service, METHODID_GET_PRODUCT)))
+        .addMethod(
+            getListProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.ListProductsRequest,
+                    com.google.cloud.retail.v2.ListProductsResponse>(
+                    service, METHODID_LIST_PRODUCTS)))
+        .addMethod(
+            getUpdateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.UpdateProductRequest,
+                    com.google.cloud.retail.v2.Product>(service, METHODID_UPDATE_PRODUCT)))
+        .addMethod(
+            getDeleteProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.DeleteProductRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_PRODUCT)))
+        .addMethod(
+            getImportProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.ImportProductsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_PRODUCTS)))
+        .addMethod(
+            getSetInventoryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.SetInventoryRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INVENTORY)))
+        .addMethod(
+            getAddFulfillmentPlacesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.AddFulfillmentPlacesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_ADD_FULFILLMENT_PLACES)))
+        .addMethod(
+            getRemoveFulfillmentPlacesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.RemoveFulfillmentPlacesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REMOVE_FULFILLMENT_PLACES)))
+        .addMethod(
+            getAddLocalInventoriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.AddLocalInventoriesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_ADD_LOCAL_INVENTORIES)))
+        .addMethod(
+            getRemoveLocalInventoriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.RemoveLocalInventoriesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REMOVE_LOCAL_INVENTORIES)))
+        .build();
+  }
+
   private abstract static class ProductServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchServiceGrpc.java
index d73ac15a3b06..a84f5665fb6d 100644
--- a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchServiceGrpc.java
@@ -128,7 +128,7 @@ public SearchServiceFutureStub newStub(
    * Enable Retail Search on Cloud Console before using this feature.
    * 
*/ - public abstract static class SearchServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -139,27 +139,33 @@ public abstract static class SearchServiceImplBase implements io.grpc.BindableSe * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void search( + default void search( com.google.cloud.retail.v2.SearchRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSearchMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service SearchService. + * + *
+   * Service for search.
+   * This feature is only available for users who have Retail Search enabled.
+   * Enable Retail Search on Cloud Console before using this feature.
+   * 
+ */ + public abstract static class SearchServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getSearchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.SearchRequest, - com.google.cloud.retail.v2.SearchResponse>(this, METHODID_SEARCH))) - .build(); + return SearchServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service SearchService. * *
    * Service for search.
@@ -196,7 +202,7 @@ public void search(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service SearchService.
    *
    * 
    * Service for search.
@@ -233,7 +239,7 @@ public com.google.cloud.retail.v2.SearchResponse search(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service SearchService.
    *
    * 
    * Service for search.
@@ -277,10 +283,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final SearchServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(SearchServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -311,6 +317,17 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getSearchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.SearchRequest,
+                    com.google.cloud.retail.v2.SearchResponse>(service, METHODID_SEARCH)))
+        .build();
+  }
+
   private abstract static class SearchServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ServingConfigServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ServingConfigServiceGrpc.java
index 46784b2a9e5d..0b65b84d00ed 100644
--- a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ServingConfigServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ServingConfigServiceGrpc.java
@@ -408,7 +408,7 @@ public ServingConfigServiceFutureStub newStub(
    * Service for modifying ServingConfig.
    * 
*/ - public abstract static class ServingConfigServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -420,7 +420,7 @@ public abstract static class ServingConfigServiceImplBase implements io.grpc.Bin * FAILED_PRECONDITION error is returned. *
*/ - public void createServingConfig( + default void createServingConfig( com.google.cloud.retail.v2.CreateServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -435,7 +435,7 @@ public void createServingConfig( * Returns a NotFound error if the ServingConfig does not exist. *
*/ - public void deleteServingConfig( + default void deleteServingConfig( com.google.cloud.retail.v2.DeleteServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -449,7 +449,7 @@ public void deleteServingConfig( * Updates a ServingConfig. *
*/ - public void updateServingConfig( + default void updateServingConfig( com.google.cloud.retail.v2.UpdateServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -464,7 +464,7 @@ public void updateServingConfig( * Returns a NotFound error if the ServingConfig does not exist. * */ - public void getServingConfig( + default void getServingConfig( com.google.cloud.retail.v2.GetServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -478,7 +478,7 @@ public void getServingConfig( * Lists all ServingConfigs linked to this catalog. * */ - public void listServingConfigs( + default void listServingConfigs( com.google.cloud.retail.v2.ListServingConfigsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -499,7 +499,7 @@ public void listServingConfigs( * number of control allowed for that type of control. * */ - public void addControl( + default void addControl( com.google.cloud.retail.v2.AddControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getAddControlMethod(), responseObserver); @@ -515,67 +515,32 @@ public void addControl( * ServingConfig. * */ - public void removeControl( + default void removeControl( com.google.cloud.retail.v2.RemoveControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRemoveControlMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ServingConfigService. + * + *
+   * Service for modifying ServingConfig.
+   * 
+ */ + public abstract static class ServingConfigServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.CreateServingConfigRequest, - com.google.cloud.retail.v2.ServingConfig>( - this, METHODID_CREATE_SERVING_CONFIG))) - .addMethod( - getDeleteServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.DeleteServingConfigRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_SERVING_CONFIG))) - .addMethod( - getUpdateServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.UpdateServingConfigRequest, - com.google.cloud.retail.v2.ServingConfig>( - this, METHODID_UPDATE_SERVING_CONFIG))) - .addMethod( - getGetServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.GetServingConfigRequest, - com.google.cloud.retail.v2.ServingConfig>(this, METHODID_GET_SERVING_CONFIG))) - .addMethod( - getListServingConfigsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.ListServingConfigsRequest, - com.google.cloud.retail.v2.ListServingConfigsResponse>( - this, METHODID_LIST_SERVING_CONFIGS))) - .addMethod( - getAddControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.AddControlRequest, - com.google.cloud.retail.v2.ServingConfig>(this, METHODID_ADD_CONTROL))) - .addMethod( - getRemoveControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.RemoveControlRequest, - com.google.cloud.retail.v2.ServingConfig>(this, METHODID_REMOVE_CONTROL))) - .build(); + return ServingConfigServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ServingConfigService. * *
    * Service for modifying ServingConfig.
@@ -720,7 +685,7 @@ public void removeControl(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ServingConfigService.
    *
    * 
    * Service for modifying ServingConfig.
@@ -846,7 +811,7 @@ public com.google.cloud.retail.v2.ServingConfig removeControl(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ServingConfigService.
    *
    * 
    * Service for modifying ServingConfig.
@@ -990,10 +955,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ServingConfigServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ServingConfigServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1059,6 +1024,57 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.CreateServingConfigRequest,
+                    com.google.cloud.retail.v2.ServingConfig>(
+                    service, METHODID_CREATE_SERVING_CONFIG)))
+        .addMethod(
+            getDeleteServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.DeleteServingConfigRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_SERVING_CONFIG)))
+        .addMethod(
+            getUpdateServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.UpdateServingConfigRequest,
+                    com.google.cloud.retail.v2.ServingConfig>(
+                    service, METHODID_UPDATE_SERVING_CONFIG)))
+        .addMethod(
+            getGetServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.GetServingConfigRequest,
+                    com.google.cloud.retail.v2.ServingConfig>(
+                    service, METHODID_GET_SERVING_CONFIG)))
+        .addMethod(
+            getListServingConfigsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.ListServingConfigsRequest,
+                    com.google.cloud.retail.v2.ListServingConfigsResponse>(
+                    service, METHODID_LIST_SERVING_CONFIGS)))
+        .addMethod(
+            getAddControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.AddControlRequest,
+                    com.google.cloud.retail.v2.ServingConfig>(service, METHODID_ADD_CONTROL)))
+        .addMethod(
+            getRemoveControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.RemoveControlRequest,
+                    com.google.cloud.retail.v2.ServingConfig>(service, METHODID_REMOVE_CONTROL)))
+        .build();
+  }
+
   private abstract static class ServingConfigServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEventServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEventServiceGrpc.java
index cc85c8ef898f..8e3f3b9ce44d 100644
--- a/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEventServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEventServiceGrpc.java
@@ -297,7 +297,7 @@ public UserEventServiceFutureStub newStub(
    * Service for ingesting end user actions on the customer website.
    * 
*/ - public abstract static class UserEventServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -306,7 +306,7 @@ public abstract static class UserEventServiceImplBase implements io.grpc.Bindabl * Writes a single user event. *
*/ - public void writeUserEvent( + default void writeUserEvent( com.google.cloud.retail.v2.WriteUserEventRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -323,7 +323,7 @@ public void writeUserEvent( * Manager. Users should not call this method directly. *
*/ - public void collectUserEvent( + default void collectUserEvent( com.google.cloud.retail.v2.CollectUserEventRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -340,7 +340,7 @@ public void collectUserEvent( * command first. * */ - public void purgeUserEvents( + default void purgeUserEvents( com.google.cloud.retail.v2.PurgeUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -359,7 +359,7 @@ public void purgeUserEvents( * `Operation.metadata` is of type `ImportMetadata`. * */ - public void importUserEvents( + default void importUserEvents( com.google.cloud.retail.v2.ImportUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -380,52 +380,32 @@ public void importUserEvents( * operation can take hours or days to complete. * */ - public void rejoinUserEvents( + default void rejoinUserEvents( com.google.cloud.retail.v2.RejoinUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRejoinUserEventsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service UserEventService. + * + *
+   * Service for ingesting end user actions on the customer website.
+   * 
+ */ + public abstract static class UserEventServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getWriteUserEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.WriteUserEventRequest, - com.google.cloud.retail.v2.UserEvent>(this, METHODID_WRITE_USER_EVENT))) - .addMethod( - getCollectUserEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.CollectUserEventRequest, com.google.api.HttpBody>( - this, METHODID_COLLECT_USER_EVENT))) - .addMethod( - getPurgeUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.PurgeUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_PURGE_USER_EVENTS))) - .addMethod( - getImportUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.ImportUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_USER_EVENTS))) - .addMethod( - getRejoinUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2.RejoinUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_REJOIN_USER_EVENTS))) - .build(); + return UserEventServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service UserEventService. * *
    * Service for ingesting end user actions on the customer website.
@@ -542,7 +522,7 @@ public void rejoinUserEvents(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service UserEventService.
    *
    * 
    * Service for ingesting end user actions on the customer website.
@@ -645,7 +625,7 @@ public com.google.longrunning.Operation rejoinUserEvents(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service UserEventService.
    *
    * 
    * Service for ingesting end user actions on the customer website.
@@ -758,10 +738,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final UserEventServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(UserEventServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -811,6 +791,41 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getWriteUserEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.WriteUserEventRequest,
+                    com.google.cloud.retail.v2.UserEvent>(service, METHODID_WRITE_USER_EVENT)))
+        .addMethod(
+            getCollectUserEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.CollectUserEventRequest, com.google.api.HttpBody>(
+                    service, METHODID_COLLECT_USER_EVENT)))
+        .addMethod(
+            getPurgeUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.PurgeUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_PURGE_USER_EVENTS)))
+        .addMethod(
+            getImportUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.ImportUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_USER_EVENTS)))
+        .addMethod(
+            getRejoinUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2.RejoinUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REJOIN_USER_EVENTS)))
+        .build();
+  }
+
   private abstract static class UserEventServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/CatalogServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/CatalogServiceGrpc.java
index 30968754f568..77fffd31d395 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/CatalogServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/CatalogServiceGrpc.java
@@ -666,7 +666,7 @@ public CatalogServiceFutureStub newStub(
    * Service for managing catalog configuration.
    * 
*/ - public abstract static class CatalogServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -676,7 +676,7 @@ public abstract static class CatalogServiceImplBase implements io.grpc.BindableS * with the project. *
*/ - public void listCatalogs( + default void listCatalogs( com.google.cloud.retail.v2alpha.ListCatalogsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -691,7 +691,7 @@ public void listCatalogs( * Updates the [Catalog][google.cloud.retail.v2alpha.Catalog]s. *
*/ - public void updateCatalog( + default void updateCatalog( com.google.cloud.retail.v2alpha.UpdateCatalogRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -732,7 +732,7 @@ public void updateCatalog( * {newBranch}. * */ - public void setDefaultBranch( + default void setDefaultBranch( com.google.cloud.retail.v2alpha.SetDefaultBranchRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -748,7 +748,7 @@ public void setDefaultBranch( * method under a specified parent catalog. * */ - public void getDefaultBranch( + default void getDefaultBranch( com.google.cloud.retail.v2alpha.GetDefaultBranchRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -763,7 +763,7 @@ public void getDefaultBranch( * Gets a [CompletionConfig][google.cloud.retail.v2alpha.CompletionConfig]. * */ - public void getCompletionConfig( + default void getCompletionConfig( com.google.cloud.retail.v2alpha.GetCompletionConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -779,7 +779,7 @@ public void getCompletionConfig( * [CompletionConfig][google.cloud.retail.v2alpha.CompletionConfig]s. * */ - public void updateCompletionConfig( + default void updateCompletionConfig( com.google.cloud.retail.v2alpha.UpdateCompletionConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -794,7 +794,7 @@ public void updateCompletionConfig( * Gets an [AttributesConfig][google.cloud.retail.v2alpha.AttributesConfig]. * */ - public void getAttributesConfig( + default void getAttributesConfig( com.google.cloud.retail.v2alpha.GetAttributesConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -816,7 +816,7 @@ public void getAttributesConfig( * catalog attribute fields, e.g., searchable and dynamic facetable options. * */ - public void updateAttributesConfig( + default void updateAttributesConfig( com.google.cloud.retail.v2alpha.UpdateAttributesConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -835,7 +835,7 @@ public void updateAttributesConfig( * add already exists, an ALREADY_EXISTS error is returned. * */ - public void addCatalogAttribute( + default void addCatalogAttribute( com.google.cloud.retail.v2alpha.AddCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -854,7 +854,7 @@ public void addCatalogAttribute( * remove does not exist, a NOT_FOUND error is returned. * */ - public void removeCatalogAttribute( + default void removeCatalogAttribute( com.google.cloud.retail.v2alpha.RemoveCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -871,7 +871,7 @@ public void removeCatalogAttribute( * [AttributesConfig][google.cloud.retail.v2alpha.AttributesConfig]. * */ - public void batchRemoveCatalogAttributes( + default void batchRemoveCatalogAttributes( com.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesResponse> @@ -893,105 +893,33 @@ public void batchRemoveCatalogAttributes( * replace does not exist, a NOT_FOUND error is returned. * */ - public void replaceCatalogAttribute( + default void replaceCatalogAttribute( com.google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getReplaceCatalogAttributeMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CatalogService. + * + *
+   * Service for managing catalog configuration.
+   * 
+ */ + public abstract static class CatalogServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListCatalogsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ListCatalogsRequest, - com.google.cloud.retail.v2alpha.ListCatalogsResponse>( - this, METHODID_LIST_CATALOGS))) - .addMethod( - getUpdateCatalogMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.UpdateCatalogRequest, - com.google.cloud.retail.v2alpha.Catalog>(this, METHODID_UPDATE_CATALOG))) - .addMethod( - getSetDefaultBranchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.SetDefaultBranchRequest, - com.google.protobuf.Empty>(this, METHODID_SET_DEFAULT_BRANCH))) - .addMethod( - getGetDefaultBranchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.GetDefaultBranchRequest, - com.google.cloud.retail.v2alpha.GetDefaultBranchResponse>( - this, METHODID_GET_DEFAULT_BRANCH))) - .addMethod( - getGetCompletionConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.GetCompletionConfigRequest, - com.google.cloud.retail.v2alpha.CompletionConfig>( - this, METHODID_GET_COMPLETION_CONFIG))) - .addMethod( - getUpdateCompletionConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.UpdateCompletionConfigRequest, - com.google.cloud.retail.v2alpha.CompletionConfig>( - this, METHODID_UPDATE_COMPLETION_CONFIG))) - .addMethod( - getGetAttributesConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.GetAttributesConfigRequest, - com.google.cloud.retail.v2alpha.AttributesConfig>( - this, METHODID_GET_ATTRIBUTES_CONFIG))) - .addMethod( - getUpdateAttributesConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.UpdateAttributesConfigRequest, - com.google.cloud.retail.v2alpha.AttributesConfig>( - this, METHODID_UPDATE_ATTRIBUTES_CONFIG))) - .addMethod( - getAddCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.AddCatalogAttributeRequest, - com.google.cloud.retail.v2alpha.AttributesConfig>( - this, METHODID_ADD_CATALOG_ATTRIBUTE))) - .addMethod( - getRemoveCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.RemoveCatalogAttributeRequest, - com.google.cloud.retail.v2alpha.AttributesConfig>( - this, METHODID_REMOVE_CATALOG_ATTRIBUTE))) - .addMethod( - getBatchRemoveCatalogAttributesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesRequest, - com.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesResponse>( - this, METHODID_BATCH_REMOVE_CATALOG_ATTRIBUTES))) - .addMethod( - getReplaceCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest, - com.google.cloud.retail.v2alpha.AttributesConfig>( - this, METHODID_REPLACE_CATALOG_ATTRIBUTE))) - .build(); + return CatalogServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CatalogService. * *
    * Service for managing catalog configuration.
@@ -1267,7 +1195,7 @@ public void replaceCatalogAttribute(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CatalogService.
    *
    * 
    * Service for managing catalog configuration.
@@ -1498,7 +1426,7 @@ public com.google.cloud.retail.v2alpha.AttributesConfig replaceCatalogAttribute(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CatalogService.
    *
    * 
    * Service for managing catalog configuration.
@@ -1761,10 +1689,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CatalogServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CatalogServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1862,6 +1790,93 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListCatalogsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ListCatalogsRequest,
+                    com.google.cloud.retail.v2alpha.ListCatalogsResponse>(
+                    service, METHODID_LIST_CATALOGS)))
+        .addMethod(
+            getUpdateCatalogMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.UpdateCatalogRequest,
+                    com.google.cloud.retail.v2alpha.Catalog>(service, METHODID_UPDATE_CATALOG)))
+        .addMethod(
+            getSetDefaultBranchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.SetDefaultBranchRequest,
+                    com.google.protobuf.Empty>(service, METHODID_SET_DEFAULT_BRANCH)))
+        .addMethod(
+            getGetDefaultBranchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.GetDefaultBranchRequest,
+                    com.google.cloud.retail.v2alpha.GetDefaultBranchResponse>(
+                    service, METHODID_GET_DEFAULT_BRANCH)))
+        .addMethod(
+            getGetCompletionConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.GetCompletionConfigRequest,
+                    com.google.cloud.retail.v2alpha.CompletionConfig>(
+                    service, METHODID_GET_COMPLETION_CONFIG)))
+        .addMethod(
+            getUpdateCompletionConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.UpdateCompletionConfigRequest,
+                    com.google.cloud.retail.v2alpha.CompletionConfig>(
+                    service, METHODID_UPDATE_COMPLETION_CONFIG)))
+        .addMethod(
+            getGetAttributesConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.GetAttributesConfigRequest,
+                    com.google.cloud.retail.v2alpha.AttributesConfig>(
+                    service, METHODID_GET_ATTRIBUTES_CONFIG)))
+        .addMethod(
+            getUpdateAttributesConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.UpdateAttributesConfigRequest,
+                    com.google.cloud.retail.v2alpha.AttributesConfig>(
+                    service, METHODID_UPDATE_ATTRIBUTES_CONFIG)))
+        .addMethod(
+            getAddCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.AddCatalogAttributeRequest,
+                    com.google.cloud.retail.v2alpha.AttributesConfig>(
+                    service, METHODID_ADD_CATALOG_ATTRIBUTE)))
+        .addMethod(
+            getRemoveCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.RemoveCatalogAttributeRequest,
+                    com.google.cloud.retail.v2alpha.AttributesConfig>(
+                    service, METHODID_REMOVE_CATALOG_ATTRIBUTE)))
+        .addMethod(
+            getBatchRemoveCatalogAttributesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesRequest,
+                    com.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesResponse>(
+                    service, METHODID_BATCH_REMOVE_CATALOG_ATTRIBUTES)))
+        .addMethod(
+            getReplaceCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest,
+                    com.google.cloud.retail.v2alpha.AttributesConfig>(
+                    service, METHODID_REPLACE_CATALOG_ATTRIBUTE)))
+        .build();
+  }
+
   private abstract static class CatalogServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/CompletionServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/CompletionServiceGrpc.java
index 77b8f28b1d19..3557fea4bd71 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/CompletionServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/CompletionServiceGrpc.java
@@ -183,7 +183,7 @@ public CompletionServiceFutureStub newStub(
    * Enable Retail Search on Cloud Console before using this feature.
    * 
*/ - public abstract static class CompletionServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -194,7 +194,7 @@ public abstract static class CompletionServiceImplBase implements io.grpc.Bindab * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void completeQuery( + default void completeQuery( com.google.cloud.retail.v2alpha.CompleteQueryRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -214,35 +214,34 @@ public void completeQuery( * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void importCompletionData( + default void importCompletionData( com.google.cloud.retail.v2alpha.ImportCompletionDataRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getImportCompletionDataMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CompletionService. + * + *
+   * Auto-completion service for retail.
+   * This feature is only available for users who have Retail Search enabled.
+   * Enable Retail Search on Cloud Console before using this feature.
+   * 
+ */ + public abstract static class CompletionServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCompleteQueryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.CompleteQueryRequest, - com.google.cloud.retail.v2alpha.CompleteQueryResponse>( - this, METHODID_COMPLETE_QUERY))) - .addMethod( - getImportCompletionDataMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ImportCompletionDataRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_COMPLETION_DATA))) - .build(); + return CompletionServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CompletionService. * *
    * Auto-completion service for retail.
@@ -304,7 +303,7 @@ public void importCompletionData(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CompletionService.
    *
    * 
    * Auto-completion service for retail.
@@ -360,7 +359,7 @@ public com.google.longrunning.Operation importCompletionData(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CompletionService.
    *
    * 
    * Auto-completion service for retail.
@@ -423,10 +422,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CompletionServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CompletionServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -462,6 +461,24 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCompleteQueryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.CompleteQueryRequest,
+                    com.google.cloud.retail.v2alpha.CompleteQueryResponse>(
+                    service, METHODID_COMPLETE_QUERY)))
+        .addMethod(
+            getImportCompletionDataMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ImportCompletionDataRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_COMPLETION_DATA)))
+        .build();
+  }
+
   private abstract static class CompletionServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ControlServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ControlServiceGrpc.java
index 25953b435357..de646036ab18 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ControlServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ControlServiceGrpc.java
@@ -310,7 +310,7 @@ public ControlServiceFutureStub newStub(
    * Service for modifying Control.
    * 
*/ - public abstract static class ControlServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -321,7 +321,7 @@ public abstract static class ControlServiceImplBase implements io.grpc.BindableS * exists, an ALREADY_EXISTS error is returned. *
*/ - public void createControl( + default void createControl( com.google.cloud.retail.v2alpha.CreateControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -337,7 +337,7 @@ public void createControl( * exist, a NOT_FOUND error is returned. *
*/ - public void deleteControl( + default void deleteControl( com.google.cloud.retail.v2alpha.DeleteControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -355,7 +355,7 @@ public void deleteControl( * NOT_FOUND error is returned. * */ - public void updateControl( + default void updateControl( com.google.cloud.retail.v2alpha.UpdateControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -369,7 +369,7 @@ public void updateControl( * Gets a Control. * */ - public void getControl( + default void getControl( com.google.cloud.retail.v2alpha.GetControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetControlMethod(), responseObserver); @@ -383,54 +383,33 @@ public void getControl( * [Catalog][google.cloud.retail.v2alpha.Catalog]. * */ - public void listControls( + default void listControls( com.google.cloud.retail.v2alpha.ListControlsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListControlsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ControlService. + * + *
+   * Service for modifying Control.
+   * 
+ */ + public abstract static class ControlServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.CreateControlRequest, - com.google.cloud.retail.v2alpha.Control>(this, METHODID_CREATE_CONTROL))) - .addMethod( - getDeleteControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.DeleteControlRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_CONTROL))) - .addMethod( - getUpdateControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.UpdateControlRequest, - com.google.cloud.retail.v2alpha.Control>(this, METHODID_UPDATE_CONTROL))) - .addMethod( - getGetControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.GetControlRequest, - com.google.cloud.retail.v2alpha.Control>(this, METHODID_GET_CONTROL))) - .addMethod( - getListControlsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ListControlsRequest, - com.google.cloud.retail.v2alpha.ListControlsResponse>( - this, METHODID_LIST_CONTROLS))) - .build(); + return ControlServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ControlService. * *
    * Service for modifying Control.
@@ -537,7 +516,7 @@ public void listControls(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ControlService.
    *
    * 
    * Service for modifying Control.
@@ -631,7 +610,7 @@ public com.google.cloud.retail.v2alpha.ListControlsResponse listControls(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ControlService.
    *
    * 
    * Service for modifying Control.
@@ -739,10 +718,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ControlServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ControlServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -796,6 +775,42 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.CreateControlRequest,
+                    com.google.cloud.retail.v2alpha.Control>(service, METHODID_CREATE_CONTROL)))
+        .addMethod(
+            getDeleteControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.DeleteControlRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_CONTROL)))
+        .addMethod(
+            getUpdateControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.UpdateControlRequest,
+                    com.google.cloud.retail.v2alpha.Control>(service, METHODID_UPDATE_CONTROL)))
+        .addMethod(
+            getGetControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.GetControlRequest,
+                    com.google.cloud.retail.v2alpha.Control>(service, METHODID_GET_CONTROL)))
+        .addMethod(
+            getListControlsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ListControlsRequest,
+                    com.google.cloud.retail.v2alpha.ListControlsResponse>(
+                    service, METHODID_LIST_CONTROLS)))
+        .build();
+  }
+
   private abstract static class ControlServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ModelServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ModelServiceGrpc.java
index 6233d7b0c48b..3456fa966ac0 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ModelServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ModelServiceGrpc.java
@@ -402,7 +402,7 @@ public ModelServiceFutureStub newStub(
    * * Control their tuning schedule.
    * 
*/ - public abstract static class ModelServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -411,7 +411,7 @@ public abstract static class ModelServiceImplBase implements io.grpc.BindableSer * Creates a new model. *
*/ - public void createModel( + default void createModel( com.google.cloud.retail.v2alpha.CreateModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -425,7 +425,7 @@ public void createModel( * Pauses the training of an existing model. *
*/ - public void pauseModel( + default void pauseModel( com.google.cloud.retail.v2alpha.PauseModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPauseModelMethod(), responseObserver); @@ -438,7 +438,7 @@ public void pauseModel( * Resumes the training of an existing model. * */ - public void resumeModel( + default void resumeModel( com.google.cloud.retail.v2alpha.ResumeModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -452,7 +452,7 @@ public void resumeModel( * Deletes an existing model. * */ - public void deleteModel( + default void deleteModel( com.google.cloud.retail.v2alpha.DeleteModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -466,7 +466,7 @@ public void deleteModel( * Lists all the models linked to this event store. * */ - public void listModels( + default void listModels( com.google.cloud.retail.v2alpha.ListModelsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -483,7 +483,7 @@ public void listModels( * If other values are provided, this API method ignores them. * */ - public void updateModel( + default void updateModel( com.google.cloud.retail.v2alpha.UpdateModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -497,64 +497,40 @@ public void updateModel( * Tunes an existing model. * */ - public void tuneModel( + default void tuneModel( com.google.cloud.retail.v2alpha.TuneModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getTuneModelMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ModelService. + * + *
+   * Service for performing CRUD operations on models.
+   * Recommendation models contain all the metadata necessary to generate a set of
+   * models for the `Predict()` API. A model is queried
+   * indirectly via a ServingConfig, which associates a model with a
+   * given Placement (e.g. Frequently Bought Together on Home Page).
+   * This service allows you to do the following:
+   * * Initiate training of a model.
+   * * Pause training of an existing model.
+   * * List all the available models along with their metadata.
+   * * Control their tuning schedule.
+   * 
+ */ + public abstract static class ModelServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.CreateModelRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_MODEL))) - .addMethod( - getPauseModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.PauseModelRequest, - com.google.cloud.retail.v2alpha.Model>(this, METHODID_PAUSE_MODEL))) - .addMethod( - getResumeModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ResumeModelRequest, - com.google.cloud.retail.v2alpha.Model>(this, METHODID_RESUME_MODEL))) - .addMethod( - getDeleteModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.DeleteModelRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_MODEL))) - .addMethod( - getListModelsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ListModelsRequest, - com.google.cloud.retail.v2alpha.ListModelsResponse>( - this, METHODID_LIST_MODELS))) - .addMethod( - getUpdateModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.UpdateModelRequest, - com.google.cloud.retail.v2alpha.Model>(this, METHODID_UPDATE_MODEL))) - .addMethod( - getTuneModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.TuneModelRequest, - com.google.longrunning.Operation>(this, METHODID_TUNE_MODEL))) - .build(); + return ModelServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ModelService. * *
    * Service for performing CRUD operations on models.
@@ -692,7 +668,7 @@ public void tuneModel(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ModelService.
    *
    * 
    * Service for performing CRUD operations on models.
@@ -815,7 +791,7 @@ public com.google.longrunning.Operation tuneModel(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ModelService.
    *
    * 
    * Service for performing CRUD operations on models.
@@ -951,10 +927,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ModelServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ModelServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1018,6 +994,54 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.CreateModelRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_MODEL)))
+        .addMethod(
+            getPauseModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.PauseModelRequest,
+                    com.google.cloud.retail.v2alpha.Model>(service, METHODID_PAUSE_MODEL)))
+        .addMethod(
+            getResumeModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ResumeModelRequest,
+                    com.google.cloud.retail.v2alpha.Model>(service, METHODID_RESUME_MODEL)))
+        .addMethod(
+            getDeleteModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.DeleteModelRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_MODEL)))
+        .addMethod(
+            getListModelsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ListModelsRequest,
+                    com.google.cloud.retail.v2alpha.ListModelsResponse>(
+                    service, METHODID_LIST_MODELS)))
+        .addMethod(
+            getUpdateModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.UpdateModelRequest,
+                    com.google.cloud.retail.v2alpha.Model>(service, METHODID_UPDATE_MODEL)))
+        .addMethod(
+            getTuneModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.TuneModelRequest,
+                    com.google.longrunning.Operation>(service, METHODID_TUNE_MODEL)))
+        .build();
+  }
+
   private abstract static class ModelServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/PredictionServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/PredictionServiceGrpc.java
index e92dc7fa78f1..05a8ee93be3f 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/PredictionServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/PredictionServiceGrpc.java
@@ -127,7 +127,7 @@ public PredictionServiceFutureStub newStub(
    * Service for making recommendation prediction.
    * 
*/ - public abstract static class PredictionServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -136,28 +136,32 @@ public abstract static class PredictionServiceImplBase implements io.grpc.Bindab * Makes a recommendation prediction. *
*/ - public void predict( + default void predict( com.google.cloud.retail.v2alpha.PredictRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPredictMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service PredictionService. + * + *
+   * Service for making recommendation prediction.
+   * 
+ */ + public abstract static class PredictionServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getPredictMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.PredictRequest, - com.google.cloud.retail.v2alpha.PredictResponse>(this, METHODID_PREDICT))) - .build(); + return PredictionServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service PredictionService. * *
    * Service for making recommendation prediction.
@@ -192,7 +196,7 @@ public void predict(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service PredictionService.
    *
    * 
    * Service for making recommendation prediction.
@@ -226,7 +230,7 @@ public com.google.cloud.retail.v2alpha.PredictResponse predict(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service PredictionService.
    *
    * 
    * Service for making recommendation prediction.
@@ -266,10 +270,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final PredictionServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(PredictionServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -300,6 +304,17 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getPredictMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.PredictRequest,
+                    com.google.cloud.retail.v2alpha.PredictResponse>(service, METHODID_PREDICT)))
+        .build();
+  }
+
   private abstract static class PredictionServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ProductServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ProductServiceGrpc.java
index bb65d0a2627f..78a98b6fe243 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ProductServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ProductServiceGrpc.java
@@ -636,7 +636,7 @@ public ProductServiceFutureStub newStub(
    * information of the customer's website.
    * 
*/ - public abstract static class ProductServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -645,7 +645,7 @@ public abstract static class ProductServiceImplBase implements io.grpc.BindableS * Creates a [Product][google.cloud.retail.v2alpha.Product]. *
*/ - public void createProduct( + default void createProduct( com.google.cloud.retail.v2alpha.CreateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -659,7 +659,7 @@ public void createProduct( * Gets a [Product][google.cloud.retail.v2alpha.Product]. *
*/ - public void getProduct( + default void getProduct( com.google.cloud.retail.v2alpha.GetProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetProductMethod(), responseObserver); @@ -672,7 +672,7 @@ public void getProduct( * Gets a list of [Product][google.cloud.retail.v2alpha.Product]s. *
*/ - public void listProducts( + default void listProducts( com.google.cloud.retail.v2alpha.ListProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -687,7 +687,7 @@ public void listProducts( * Updates a [Product][google.cloud.retail.v2alpha.Product]. * */ - public void updateProduct( + default void updateProduct( com.google.cloud.retail.v2alpha.UpdateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -701,7 +701,7 @@ public void updateProduct( * Deletes a [Product][google.cloud.retail.v2alpha.Product]. * */ - public void deleteProduct( + default void deleteProduct( com.google.cloud.retail.v2alpha.DeleteProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -729,7 +729,7 @@ public void deleteProduct( * to false. * */ - public void purgeProducts( + default void purgeProducts( com.google.cloud.retail.v2alpha.PurgeProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -747,7 +747,7 @@ public void purgeProducts( * [Product][google.cloud.retail.v2alpha.Product]s to be successfully updated. * */ - public void importProducts( + default void importProducts( com.google.cloud.retail.v2alpha.ImportProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -804,7 +804,7 @@ public void importProducts( * Enable Retail Search on Cloud Console before using this feature. * */ - public void setInventory( + default void setInventory( com.google.cloud.retail.v2alpha.SetInventoryRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -837,7 +837,7 @@ public void setInventory( * Enable Retail Search on Cloud Console before using this feature. * */ - public void addFulfillmentPlaces( + default void addFulfillmentPlaces( com.google.cloud.retail.v2alpha.AddFulfillmentPlacesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -870,7 +870,7 @@ public void addFulfillmentPlaces( * Enable Retail Search on Cloud Console before using this feature. * */ - public void removeFulfillmentPlaces( + default void removeFulfillmentPlaces( com.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -909,7 +909,7 @@ public void removeFulfillmentPlaces( * Enable Retail Search on Cloud Console before using this feature. * */ - public void addLocalInventories( + default void addLocalInventories( com.google.cloud.retail.v2alpha.AddLocalInventoriesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -946,95 +946,33 @@ public void addLocalInventories( * Enable Retail Search on Cloud Console before using this feature. * */ - public void removeLocalInventories( + default void removeLocalInventories( com.google.cloud.retail.v2alpha.RemoveLocalInventoriesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRemoveLocalInventoriesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ProductService. + * + *
+   * Service for ingesting [Product][google.cloud.retail.v2alpha.Product]
+   * information of the customer's website.
+   * 
+ */ + public abstract static class ProductServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.CreateProductRequest, - com.google.cloud.retail.v2alpha.Product>(this, METHODID_CREATE_PRODUCT))) - .addMethod( - getGetProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.GetProductRequest, - com.google.cloud.retail.v2alpha.Product>(this, METHODID_GET_PRODUCT))) - .addMethod( - getListProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ListProductsRequest, - com.google.cloud.retail.v2alpha.ListProductsResponse>( - this, METHODID_LIST_PRODUCTS))) - .addMethod( - getUpdateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.UpdateProductRequest, - com.google.cloud.retail.v2alpha.Product>(this, METHODID_UPDATE_PRODUCT))) - .addMethod( - getDeleteProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.DeleteProductRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PRODUCT))) - .addMethod( - getPurgeProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.PurgeProductsRequest, - com.google.longrunning.Operation>(this, METHODID_PURGE_PRODUCTS))) - .addMethod( - getImportProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ImportProductsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_PRODUCTS))) - .addMethod( - getSetInventoryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.SetInventoryRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INVENTORY))) - .addMethod( - getAddFulfillmentPlacesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.AddFulfillmentPlacesRequest, - com.google.longrunning.Operation>(this, METHODID_ADD_FULFILLMENT_PLACES))) - .addMethod( - getRemoveFulfillmentPlacesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesRequest, - com.google.longrunning.Operation>(this, METHODID_REMOVE_FULFILLMENT_PLACES))) - .addMethod( - getAddLocalInventoriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.AddLocalInventoriesRequest, - com.google.longrunning.Operation>(this, METHODID_ADD_LOCAL_INVENTORIES))) - .addMethod( - getRemoveLocalInventoriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.RemoveLocalInventoriesRequest, - com.google.longrunning.Operation>(this, METHODID_REMOVE_LOCAL_INVENTORIES))) - .build(); + return ProductServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ProductService. * *
    * Service for ingesting [Product][google.cloud.retail.v2alpha.Product]
@@ -1392,7 +1330,7 @@ public void removeLocalInventories(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ProductService.
    *
    * 
    * Service for ingesting [Product][google.cloud.retail.v2alpha.Product]
@@ -1716,7 +1654,7 @@ public com.google.longrunning.Operation removeLocalInventories(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ProductService.
    *
    * 
    * Service for ingesting [Product][google.cloud.retail.v2alpha.Product]
@@ -2063,10 +2001,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ProductServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ProductServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2155,6 +2093,84 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.CreateProductRequest,
+                    com.google.cloud.retail.v2alpha.Product>(service, METHODID_CREATE_PRODUCT)))
+        .addMethod(
+            getGetProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.GetProductRequest,
+                    com.google.cloud.retail.v2alpha.Product>(service, METHODID_GET_PRODUCT)))
+        .addMethod(
+            getListProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ListProductsRequest,
+                    com.google.cloud.retail.v2alpha.ListProductsResponse>(
+                    service, METHODID_LIST_PRODUCTS)))
+        .addMethod(
+            getUpdateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.UpdateProductRequest,
+                    com.google.cloud.retail.v2alpha.Product>(service, METHODID_UPDATE_PRODUCT)))
+        .addMethod(
+            getDeleteProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.DeleteProductRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_PRODUCT)))
+        .addMethod(
+            getPurgeProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.PurgeProductsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_PURGE_PRODUCTS)))
+        .addMethod(
+            getImportProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ImportProductsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_PRODUCTS)))
+        .addMethod(
+            getSetInventoryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.SetInventoryRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INVENTORY)))
+        .addMethod(
+            getAddFulfillmentPlacesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.AddFulfillmentPlacesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_ADD_FULFILLMENT_PLACES)))
+        .addMethod(
+            getRemoveFulfillmentPlacesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REMOVE_FULFILLMENT_PLACES)))
+        .addMethod(
+            getAddLocalInventoriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.AddLocalInventoriesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_ADD_LOCAL_INVENTORIES)))
+        .addMethod(
+            getRemoveLocalInventoriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.RemoveLocalInventoriesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REMOVE_LOCAL_INVENTORIES)))
+        .build();
+  }
+
   private abstract static class ProductServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/SearchServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/SearchServiceGrpc.java
index 1c50414e780d..f6b0478fa6b8 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/SearchServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/SearchServiceGrpc.java
@@ -131,7 +131,7 @@ public SearchServiceFutureStub newStub(
    * Enable Retail Search on Cloud Console before using this feature.
    * 
*/ - public abstract static class SearchServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -142,28 +142,34 @@ public abstract static class SearchServiceImplBase implements io.grpc.BindableSe * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void search( + default void search( com.google.cloud.retail.v2alpha.SearchRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSearchMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service SearchService. + * + *
+   * Service for search.
+   * This feature is only available for users who have Retail Search enabled.
+   * Enable Retail Search on Cloud Console before using this feature.
+   * 
+ */ + public abstract static class SearchServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getSearchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.SearchRequest, - com.google.cloud.retail.v2alpha.SearchResponse>(this, METHODID_SEARCH))) - .build(); + return SearchServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service SearchService. * *
    * Service for search.
@@ -201,7 +207,7 @@ public void search(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service SearchService.
    *
    * 
    * Service for search.
@@ -238,7 +244,7 @@ public com.google.cloud.retail.v2alpha.SearchResponse search(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service SearchService.
    *
    * 
    * Service for search.
@@ -282,10 +288,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final SearchServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(SearchServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -316,6 +322,17 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getSearchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.SearchRequest,
+                    com.google.cloud.retail.v2alpha.SearchResponse>(service, METHODID_SEARCH)))
+        .build();
+  }
+
   private abstract static class SearchServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ServingConfigServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ServingConfigServiceGrpc.java
index c3a50e596398..b3cfeeb63b8b 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ServingConfigServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/ServingConfigServiceGrpc.java
@@ -415,7 +415,7 @@ public ServingConfigServiceFutureStub newStub(
    * Service for modifying ServingConfig.
    * 
*/ - public abstract static class ServingConfigServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -428,7 +428,7 @@ public abstract static class ServingConfigServiceImplBase implements io.grpc.Bin * FAILED_PRECONDITION error is returned. *
*/ - public void createServingConfig( + default void createServingConfig( com.google.cloud.retail.v2alpha.CreateServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -444,7 +444,7 @@ public void createServingConfig( * Returns a NotFound error if the ServingConfig does not exist. *
*/ - public void deleteServingConfig( + default void deleteServingConfig( com.google.cloud.retail.v2alpha.DeleteServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -458,7 +458,7 @@ public void deleteServingConfig( * Updates a ServingConfig. *
*/ - public void updateServingConfig( + default void updateServingConfig( com.google.cloud.retail.v2alpha.UpdateServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -474,7 +474,7 @@ public void updateServingConfig( * Returns a NotFound error if the ServingConfig does not exist. * */ - public void getServingConfig( + default void getServingConfig( com.google.cloud.retail.v2alpha.GetServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -489,7 +489,7 @@ public void getServingConfig( * Lists all ServingConfigs linked to this catalog. * */ - public void listServingConfigs( + default void listServingConfigs( com.google.cloud.retail.v2alpha.ListServingConfigsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -510,7 +510,7 @@ public void listServingConfigs( * number of control allowed for that type of control. * */ - public void addControl( + default void addControl( com.google.cloud.retail.v2alpha.AddControlRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -527,70 +527,33 @@ public void addControl( * ServingConfig. * */ - public void removeControl( + default void removeControl( com.google.cloud.retail.v2alpha.RemoveControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRemoveControlMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ServingConfigService. + * + *
+   * Service for modifying ServingConfig.
+   * 
+ */ + public abstract static class ServingConfigServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.CreateServingConfigRequest, - com.google.cloud.retail.v2alpha.ServingConfig>( - this, METHODID_CREATE_SERVING_CONFIG))) - .addMethod( - getDeleteServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.DeleteServingConfigRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_SERVING_CONFIG))) - .addMethod( - getUpdateServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.UpdateServingConfigRequest, - com.google.cloud.retail.v2alpha.ServingConfig>( - this, METHODID_UPDATE_SERVING_CONFIG))) - .addMethod( - getGetServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.GetServingConfigRequest, - com.google.cloud.retail.v2alpha.ServingConfig>( - this, METHODID_GET_SERVING_CONFIG))) - .addMethod( - getListServingConfigsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ListServingConfigsRequest, - com.google.cloud.retail.v2alpha.ListServingConfigsResponse>( - this, METHODID_LIST_SERVING_CONFIGS))) - .addMethod( - getAddControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.AddControlRequest, - com.google.cloud.retail.v2alpha.ServingConfig>(this, METHODID_ADD_CONTROL))) - .addMethod( - getRemoveControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.RemoveControlRequest, - com.google.cloud.retail.v2alpha.ServingConfig>( - this, METHODID_REMOVE_CONTROL))) - .build(); + return ServingConfigServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ServingConfigService. * *
    * Service for modifying ServingConfig.
@@ -741,7 +704,7 @@ public void removeControl(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ServingConfigService.
    *
    * 
    * Service for modifying ServingConfig.
@@ -868,7 +831,7 @@ public com.google.cloud.retail.v2alpha.ServingConfig removeControl(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ServingConfigService.
    *
    * 
    * Service for modifying ServingConfig.
@@ -1013,10 +976,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ServingConfigServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ServingConfigServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1083,6 +1046,58 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.CreateServingConfigRequest,
+                    com.google.cloud.retail.v2alpha.ServingConfig>(
+                    service, METHODID_CREATE_SERVING_CONFIG)))
+        .addMethod(
+            getDeleteServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.DeleteServingConfigRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_SERVING_CONFIG)))
+        .addMethod(
+            getUpdateServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.UpdateServingConfigRequest,
+                    com.google.cloud.retail.v2alpha.ServingConfig>(
+                    service, METHODID_UPDATE_SERVING_CONFIG)))
+        .addMethod(
+            getGetServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.GetServingConfigRequest,
+                    com.google.cloud.retail.v2alpha.ServingConfig>(
+                    service, METHODID_GET_SERVING_CONFIG)))
+        .addMethod(
+            getListServingConfigsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ListServingConfigsRequest,
+                    com.google.cloud.retail.v2alpha.ListServingConfigsResponse>(
+                    service, METHODID_LIST_SERVING_CONFIGS)))
+        .addMethod(
+            getAddControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.AddControlRequest,
+                    com.google.cloud.retail.v2alpha.ServingConfig>(service, METHODID_ADD_CONTROL)))
+        .addMethod(
+            getRemoveControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.RemoveControlRequest,
+                    com.google.cloud.retail.v2alpha.ServingConfig>(
+                    service, METHODID_REMOVE_CONTROL)))
+        .build();
+  }
+
   private abstract static class ServingConfigServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/UserEventServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/UserEventServiceGrpc.java
index ec4caad43f16..601d4a22158e 100644
--- a/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/UserEventServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2alpha/src/main/java/com/google/cloud/retail/v2alpha/UserEventServiceGrpc.java
@@ -304,7 +304,7 @@ public UserEventServiceFutureStub newStub(
    * Service for ingesting end user actions on the customer website.
    * 
*/ - public abstract static class UserEventServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -313,7 +313,7 @@ public abstract static class UserEventServiceImplBase implements io.grpc.Bindabl * Writes a single user event. *
*/ - public void writeUserEvent( + default void writeUserEvent( com.google.cloud.retail.v2alpha.WriteUserEventRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -330,7 +330,7 @@ public void writeUserEvent( * Manager. Users should not call this method directly. *
*/ - public void collectUserEvent( + default void collectUserEvent( com.google.cloud.retail.v2alpha.CollectUserEventRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -347,7 +347,7 @@ public void collectUserEvent( * command first. * */ - public void purgeUserEvents( + default void purgeUserEvents( com.google.cloud.retail.v2alpha.PurgeUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -366,7 +366,7 @@ public void purgeUserEvents( * `Operation.metadata` is of type `ImportMetadata`. * */ - public void importUserEvents( + default void importUserEvents( com.google.cloud.retail.v2alpha.ImportUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -387,52 +387,32 @@ public void importUserEvents( * operation can take hours or days to complete. * */ - public void rejoinUserEvents( + default void rejoinUserEvents( com.google.cloud.retail.v2alpha.RejoinUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRejoinUserEventsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service UserEventService. + * + *
+   * Service for ingesting end user actions on the customer website.
+   * 
+ */ + public abstract static class UserEventServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getWriteUserEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.WriteUserEventRequest, - com.google.cloud.retail.v2alpha.UserEvent>(this, METHODID_WRITE_USER_EVENT))) - .addMethod( - getCollectUserEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.CollectUserEventRequest, - com.google.api.HttpBody>(this, METHODID_COLLECT_USER_EVENT))) - .addMethod( - getPurgeUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.PurgeUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_PURGE_USER_EVENTS))) - .addMethod( - getImportUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.ImportUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_USER_EVENTS))) - .addMethod( - getRejoinUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2alpha.RejoinUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_REJOIN_USER_EVENTS))) - .build(); + return UserEventServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service UserEventService. * *
    * Service for ingesting end user actions on the customer website.
@@ -549,7 +529,7 @@ public void rejoinUserEvents(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service UserEventService.
    *
    * 
    * Service for ingesting end user actions on the customer website.
@@ -652,7 +632,7 @@ public com.google.longrunning.Operation rejoinUserEvents(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service UserEventService.
    *
    * 
    * Service for ingesting end user actions on the customer website.
@@ -766,10 +746,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final UserEventServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(UserEventServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -820,6 +800,41 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getWriteUserEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.WriteUserEventRequest,
+                    com.google.cloud.retail.v2alpha.UserEvent>(service, METHODID_WRITE_USER_EVENT)))
+        .addMethod(
+            getCollectUserEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.CollectUserEventRequest,
+                    com.google.api.HttpBody>(service, METHODID_COLLECT_USER_EVENT)))
+        .addMethod(
+            getPurgeUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.PurgeUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_PURGE_USER_EVENTS)))
+        .addMethod(
+            getImportUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.ImportUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_USER_EVENTS)))
+        .addMethod(
+            getRejoinUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2alpha.RejoinUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REJOIN_USER_EVENTS)))
+        .build();
+  }
+
   private abstract static class UserEventServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/CatalogServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/CatalogServiceGrpc.java
index 7c5a62e5fb4d..d7a3b0418c11 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/CatalogServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/CatalogServiceGrpc.java
@@ -659,7 +659,7 @@ public CatalogServiceFutureStub newStub(
    * Service for managing catalog configuration.
    * 
*/ - public abstract static class CatalogServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -669,7 +669,7 @@ public abstract static class CatalogServiceImplBase implements io.grpc.BindableS * with the project. *
*/ - public void listCatalogs( + default void listCatalogs( com.google.cloud.retail.v2beta.ListCatalogsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -684,7 +684,7 @@ public void listCatalogs( * Updates the [Catalog][google.cloud.retail.v2beta.Catalog]s. *
*/ - public void updateCatalog( + default void updateCatalog( com.google.cloud.retail.v2beta.UpdateCatalogRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -725,7 +725,7 @@ public void updateCatalog( * {newBranch}. * */ - public void setDefaultBranch( + default void setDefaultBranch( com.google.cloud.retail.v2beta.SetDefaultBranchRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -741,7 +741,7 @@ public void setDefaultBranch( * method under a specified parent catalog. * */ - public void getDefaultBranch( + default void getDefaultBranch( com.google.cloud.retail.v2beta.GetDefaultBranchRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -756,7 +756,7 @@ public void getDefaultBranch( * Gets a [CompletionConfig][google.cloud.retail.v2beta.CompletionConfig]. * */ - public void getCompletionConfig( + default void getCompletionConfig( com.google.cloud.retail.v2beta.GetCompletionConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -772,7 +772,7 @@ public void getCompletionConfig( * [CompletionConfig][google.cloud.retail.v2beta.CompletionConfig]s. * */ - public void updateCompletionConfig( + default void updateCompletionConfig( com.google.cloud.retail.v2beta.UpdateCompletionConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -787,7 +787,7 @@ public void updateCompletionConfig( * Gets an [AttributesConfig][google.cloud.retail.v2beta.AttributesConfig]. * */ - public void getAttributesConfig( + default void getAttributesConfig( com.google.cloud.retail.v2beta.GetAttributesConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -809,7 +809,7 @@ public void getAttributesConfig( * catalog attribute fields, e.g., searchable and dynamic facetable options. * */ - public void updateAttributesConfig( + default void updateAttributesConfig( com.google.cloud.retail.v2beta.UpdateAttributesConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -828,7 +828,7 @@ public void updateAttributesConfig( * add already exists, an ALREADY_EXISTS error is returned. * */ - public void addCatalogAttribute( + default void addCatalogAttribute( com.google.cloud.retail.v2beta.AddCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -847,7 +847,7 @@ public void addCatalogAttribute( * remove does not exist, a NOT_FOUND error is returned. * */ - public void removeCatalogAttribute( + default void removeCatalogAttribute( com.google.cloud.retail.v2beta.RemoveCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -864,7 +864,7 @@ public void removeCatalogAttribute( * [AttributesConfig][google.cloud.retail.v2beta.AttributesConfig]. * */ - public void batchRemoveCatalogAttributes( + default void batchRemoveCatalogAttributes( com.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesRequest request, io.grpc.stub.StreamObserver< com.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesResponse> @@ -886,105 +886,33 @@ public void batchRemoveCatalogAttributes( * replace does not exist, a NOT_FOUND error is returned. * */ - public void replaceCatalogAttribute( + default void replaceCatalogAttribute( com.google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getReplaceCatalogAttributeMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CatalogService. + * + *
+   * Service for managing catalog configuration.
+   * 
+ */ + public abstract static class CatalogServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListCatalogsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ListCatalogsRequest, - com.google.cloud.retail.v2beta.ListCatalogsResponse>( - this, METHODID_LIST_CATALOGS))) - .addMethod( - getUpdateCatalogMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.UpdateCatalogRequest, - com.google.cloud.retail.v2beta.Catalog>(this, METHODID_UPDATE_CATALOG))) - .addMethod( - getSetDefaultBranchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.SetDefaultBranchRequest, - com.google.protobuf.Empty>(this, METHODID_SET_DEFAULT_BRANCH))) - .addMethod( - getGetDefaultBranchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.GetDefaultBranchRequest, - com.google.cloud.retail.v2beta.GetDefaultBranchResponse>( - this, METHODID_GET_DEFAULT_BRANCH))) - .addMethod( - getGetCompletionConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.GetCompletionConfigRequest, - com.google.cloud.retail.v2beta.CompletionConfig>( - this, METHODID_GET_COMPLETION_CONFIG))) - .addMethod( - getUpdateCompletionConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.UpdateCompletionConfigRequest, - com.google.cloud.retail.v2beta.CompletionConfig>( - this, METHODID_UPDATE_COMPLETION_CONFIG))) - .addMethod( - getGetAttributesConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.GetAttributesConfigRequest, - com.google.cloud.retail.v2beta.AttributesConfig>( - this, METHODID_GET_ATTRIBUTES_CONFIG))) - .addMethod( - getUpdateAttributesConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.UpdateAttributesConfigRequest, - com.google.cloud.retail.v2beta.AttributesConfig>( - this, METHODID_UPDATE_ATTRIBUTES_CONFIG))) - .addMethod( - getAddCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.AddCatalogAttributeRequest, - com.google.cloud.retail.v2beta.AttributesConfig>( - this, METHODID_ADD_CATALOG_ATTRIBUTE))) - .addMethod( - getRemoveCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.RemoveCatalogAttributeRequest, - com.google.cloud.retail.v2beta.AttributesConfig>( - this, METHODID_REMOVE_CATALOG_ATTRIBUTE))) - .addMethod( - getBatchRemoveCatalogAttributesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesRequest, - com.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesResponse>( - this, METHODID_BATCH_REMOVE_CATALOG_ATTRIBUTES))) - .addMethod( - getReplaceCatalogAttributeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest, - com.google.cloud.retail.v2beta.AttributesConfig>( - this, METHODID_REPLACE_CATALOG_ATTRIBUTE))) - .build(); + return CatalogServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CatalogService. * *
    * Service for managing catalog configuration.
@@ -1260,7 +1188,7 @@ public void replaceCatalogAttribute(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CatalogService.
    *
    * 
    * Service for managing catalog configuration.
@@ -1491,7 +1419,7 @@ public com.google.cloud.retail.v2beta.AttributesConfig replaceCatalogAttribute(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CatalogService.
    *
    * 
    * Service for managing catalog configuration.
@@ -1754,10 +1682,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CatalogServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CatalogServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1854,6 +1782,93 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListCatalogsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ListCatalogsRequest,
+                    com.google.cloud.retail.v2beta.ListCatalogsResponse>(
+                    service, METHODID_LIST_CATALOGS)))
+        .addMethod(
+            getUpdateCatalogMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.UpdateCatalogRequest,
+                    com.google.cloud.retail.v2beta.Catalog>(service, METHODID_UPDATE_CATALOG)))
+        .addMethod(
+            getSetDefaultBranchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.SetDefaultBranchRequest,
+                    com.google.protobuf.Empty>(service, METHODID_SET_DEFAULT_BRANCH)))
+        .addMethod(
+            getGetDefaultBranchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.GetDefaultBranchRequest,
+                    com.google.cloud.retail.v2beta.GetDefaultBranchResponse>(
+                    service, METHODID_GET_DEFAULT_BRANCH)))
+        .addMethod(
+            getGetCompletionConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.GetCompletionConfigRequest,
+                    com.google.cloud.retail.v2beta.CompletionConfig>(
+                    service, METHODID_GET_COMPLETION_CONFIG)))
+        .addMethod(
+            getUpdateCompletionConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.UpdateCompletionConfigRequest,
+                    com.google.cloud.retail.v2beta.CompletionConfig>(
+                    service, METHODID_UPDATE_COMPLETION_CONFIG)))
+        .addMethod(
+            getGetAttributesConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.GetAttributesConfigRequest,
+                    com.google.cloud.retail.v2beta.AttributesConfig>(
+                    service, METHODID_GET_ATTRIBUTES_CONFIG)))
+        .addMethod(
+            getUpdateAttributesConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.UpdateAttributesConfigRequest,
+                    com.google.cloud.retail.v2beta.AttributesConfig>(
+                    service, METHODID_UPDATE_ATTRIBUTES_CONFIG)))
+        .addMethod(
+            getAddCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.AddCatalogAttributeRequest,
+                    com.google.cloud.retail.v2beta.AttributesConfig>(
+                    service, METHODID_ADD_CATALOG_ATTRIBUTE)))
+        .addMethod(
+            getRemoveCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.RemoveCatalogAttributeRequest,
+                    com.google.cloud.retail.v2beta.AttributesConfig>(
+                    service, METHODID_REMOVE_CATALOG_ATTRIBUTE)))
+        .addMethod(
+            getBatchRemoveCatalogAttributesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesRequest,
+                    com.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesResponse>(
+                    service, METHODID_BATCH_REMOVE_CATALOG_ATTRIBUTES)))
+        .addMethod(
+            getReplaceCatalogAttributeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest,
+                    com.google.cloud.retail.v2beta.AttributesConfig>(
+                    service, METHODID_REPLACE_CATALOG_ATTRIBUTE)))
+        .build();
+  }
+
   private abstract static class CatalogServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/CompletionServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/CompletionServiceGrpc.java
index 4fad4d0eb07e..0a6f7c5e1dd8 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/CompletionServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/CompletionServiceGrpc.java
@@ -183,7 +183,7 @@ public CompletionServiceFutureStub newStub(
    * Enable Retail Search on Cloud Console before using this feature.
    * 
*/ - public abstract static class CompletionServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -194,7 +194,7 @@ public abstract static class CompletionServiceImplBase implements io.grpc.Bindab * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void completeQuery( + default void completeQuery( com.google.cloud.retail.v2beta.CompleteQueryRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -214,35 +214,34 @@ public void completeQuery( * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void importCompletionData( + default void importCompletionData( com.google.cloud.retail.v2beta.ImportCompletionDataRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getImportCompletionDataMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service CompletionService. + * + *
+   * Auto-completion service for retail.
+   * This feature is only available for users who have Retail Search enabled.
+   * Enable Retail Search on Cloud Console before using this feature.
+   * 
+ */ + public abstract static class CompletionServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCompleteQueryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.CompleteQueryRequest, - com.google.cloud.retail.v2beta.CompleteQueryResponse>( - this, METHODID_COMPLETE_QUERY))) - .addMethod( - getImportCompletionDataMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ImportCompletionDataRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_COMPLETION_DATA))) - .build(); + return CompletionServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service CompletionService. * *
    * Auto-completion service for retail.
@@ -304,7 +303,7 @@ public void importCompletionData(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service CompletionService.
    *
    * 
    * Auto-completion service for retail.
@@ -360,7 +359,7 @@ public com.google.longrunning.Operation importCompletionData(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service CompletionService.
    *
    * 
    * Auto-completion service for retail.
@@ -423,10 +422,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final CompletionServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(CompletionServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -462,6 +461,24 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCompleteQueryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.CompleteQueryRequest,
+                    com.google.cloud.retail.v2beta.CompleteQueryResponse>(
+                    service, METHODID_COMPLETE_QUERY)))
+        .addMethod(
+            getImportCompletionDataMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ImportCompletionDataRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_COMPLETION_DATA)))
+        .build();
+  }
+
   private abstract static class CompletionServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ControlServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ControlServiceGrpc.java
index 1e517559fd3d..73311f470b9e 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ControlServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ControlServiceGrpc.java
@@ -308,7 +308,7 @@ public ControlServiceFutureStub newStub(
    * Service for modifying Control.
    * 
*/ - public abstract static class ControlServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -319,7 +319,7 @@ public abstract static class ControlServiceImplBase implements io.grpc.BindableS * exists, an ALREADY_EXISTS error is returned. *
*/ - public void createControl( + default void createControl( com.google.cloud.retail.v2beta.CreateControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -335,7 +335,7 @@ public void createControl( * exist, a NOT_FOUND error is returned. *
*/ - public void deleteControl( + default void deleteControl( com.google.cloud.retail.v2beta.DeleteControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -353,7 +353,7 @@ public void deleteControl( * NOT_FOUND error is returned. * */ - public void updateControl( + default void updateControl( com.google.cloud.retail.v2beta.UpdateControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -367,7 +367,7 @@ public void updateControl( * Gets a Control. * */ - public void getControl( + default void getControl( com.google.cloud.retail.v2beta.GetControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetControlMethod(), responseObserver); @@ -381,54 +381,33 @@ public void getControl( * [Catalog][google.cloud.retail.v2beta.Catalog]. * */ - public void listControls( + default void listControls( com.google.cloud.retail.v2beta.ListControlsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListControlsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ControlService. + * + *
+   * Service for modifying Control.
+   * 
+ */ + public abstract static class ControlServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.CreateControlRequest, - com.google.cloud.retail.v2beta.Control>(this, METHODID_CREATE_CONTROL))) - .addMethod( - getDeleteControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.DeleteControlRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_CONTROL))) - .addMethod( - getUpdateControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.UpdateControlRequest, - com.google.cloud.retail.v2beta.Control>(this, METHODID_UPDATE_CONTROL))) - .addMethod( - getGetControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.GetControlRequest, - com.google.cloud.retail.v2beta.Control>(this, METHODID_GET_CONTROL))) - .addMethod( - getListControlsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ListControlsRequest, - com.google.cloud.retail.v2beta.ListControlsResponse>( - this, METHODID_LIST_CONTROLS))) - .build(); + return ControlServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ControlService. * *
    * Service for modifying Control.
@@ -535,7 +514,7 @@ public void listControls(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ControlService.
    *
    * 
    * Service for modifying Control.
@@ -629,7 +608,7 @@ public com.google.cloud.retail.v2beta.ListControlsResponse listControls(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ControlService.
    *
    * 
    * Service for modifying Control.
@@ -737,10 +716,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ControlServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ControlServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -794,6 +773,42 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.CreateControlRequest,
+                    com.google.cloud.retail.v2beta.Control>(service, METHODID_CREATE_CONTROL)))
+        .addMethod(
+            getDeleteControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.DeleteControlRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_CONTROL)))
+        .addMethod(
+            getUpdateControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.UpdateControlRequest,
+                    com.google.cloud.retail.v2beta.Control>(service, METHODID_UPDATE_CONTROL)))
+        .addMethod(
+            getGetControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.GetControlRequest,
+                    com.google.cloud.retail.v2beta.Control>(service, METHODID_GET_CONTROL)))
+        .addMethod(
+            getListControlsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ListControlsRequest,
+                    com.google.cloud.retail.v2beta.ListControlsResponse>(
+                    service, METHODID_LIST_CONTROLS)))
+        .build();
+  }
+
   private abstract static class ControlServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ModelServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ModelServiceGrpc.java
index 171c2bf4aa2a..e6f722774684 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ModelServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ModelServiceGrpc.java
@@ -398,7 +398,7 @@ public ModelServiceFutureStub newStub(
    * * Control their tuning schedule.
    * 
*/ - public abstract static class ModelServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -407,7 +407,7 @@ public abstract static class ModelServiceImplBase implements io.grpc.BindableSer * Creates a new model. *
*/ - public void createModel( + default void createModel( com.google.cloud.retail.v2beta.CreateModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -421,7 +421,7 @@ public void createModel( * Pauses the training of an existing model. *
*/ - public void pauseModel( + default void pauseModel( com.google.cloud.retail.v2beta.PauseModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPauseModelMethod(), responseObserver); @@ -434,7 +434,7 @@ public void pauseModel( * Resumes the training of an existing model. * */ - public void resumeModel( + default void resumeModel( com.google.cloud.retail.v2beta.ResumeModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -448,7 +448,7 @@ public void resumeModel( * Deletes an existing model. * */ - public void deleteModel( + default void deleteModel( com.google.cloud.retail.v2beta.DeleteModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -462,7 +462,7 @@ public void deleteModel( * Lists all the models linked to this event store. * */ - public void listModels( + default void listModels( com.google.cloud.retail.v2beta.ListModelsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -479,7 +479,7 @@ public void listModels( * If other values are provided, this API method ignores them. * */ - public void updateModel( + default void updateModel( com.google.cloud.retail.v2beta.UpdateModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -493,64 +493,40 @@ public void updateModel( * Tunes an existing model. * */ - public void tuneModel( + default void tuneModel( com.google.cloud.retail.v2beta.TuneModelRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getTuneModelMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ModelService. + * + *
+   * Service for performing CRUD operations on models.
+   * Recommendation models contain all the metadata necessary to generate a set of
+   * models for the `Predict()` API. A model is queried
+   * indirectly via a ServingConfig, which associates a model with a
+   * given Placement (e.g. Frequently Bought Together on Home Page).
+   * This service allows you to do the following:
+   * * Initiate training of a model.
+   * * Pause training of an existing model.
+   * * List all the available models along with their metadata.
+   * * Control their tuning schedule.
+   * 
+ */ + public abstract static class ModelServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.CreateModelRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_MODEL))) - .addMethod( - getPauseModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.PauseModelRequest, - com.google.cloud.retail.v2beta.Model>(this, METHODID_PAUSE_MODEL))) - .addMethod( - getResumeModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ResumeModelRequest, - com.google.cloud.retail.v2beta.Model>(this, METHODID_RESUME_MODEL))) - .addMethod( - getDeleteModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.DeleteModelRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_MODEL))) - .addMethod( - getListModelsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ListModelsRequest, - com.google.cloud.retail.v2beta.ListModelsResponse>( - this, METHODID_LIST_MODELS))) - .addMethod( - getUpdateModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.UpdateModelRequest, - com.google.cloud.retail.v2beta.Model>(this, METHODID_UPDATE_MODEL))) - .addMethod( - getTuneModelMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.TuneModelRequest, - com.google.longrunning.Operation>(this, METHODID_TUNE_MODEL))) - .build(); + return ModelServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ModelService. * *
    * Service for performing CRUD operations on models.
@@ -688,7 +664,7 @@ public void tuneModel(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ModelService.
    *
    * 
    * Service for performing CRUD operations on models.
@@ -811,7 +787,7 @@ public com.google.longrunning.Operation tuneModel(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ModelService.
    *
    * 
    * Service for performing CRUD operations on models.
@@ -947,10 +923,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ModelServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ModelServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1011,6 +987,54 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.CreateModelRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_MODEL)))
+        .addMethod(
+            getPauseModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.PauseModelRequest,
+                    com.google.cloud.retail.v2beta.Model>(service, METHODID_PAUSE_MODEL)))
+        .addMethod(
+            getResumeModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ResumeModelRequest,
+                    com.google.cloud.retail.v2beta.Model>(service, METHODID_RESUME_MODEL)))
+        .addMethod(
+            getDeleteModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.DeleteModelRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_MODEL)))
+        .addMethod(
+            getListModelsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ListModelsRequest,
+                    com.google.cloud.retail.v2beta.ListModelsResponse>(
+                    service, METHODID_LIST_MODELS)))
+        .addMethod(
+            getUpdateModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.UpdateModelRequest,
+                    com.google.cloud.retail.v2beta.Model>(service, METHODID_UPDATE_MODEL)))
+        .addMethod(
+            getTuneModelMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.TuneModelRequest,
+                    com.google.longrunning.Operation>(service, METHODID_TUNE_MODEL)))
+        .build();
+  }
+
   private abstract static class ModelServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/PredictionServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/PredictionServiceGrpc.java
index ebc1e9ff9a1f..9f30c6e29e5e 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/PredictionServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/PredictionServiceGrpc.java
@@ -127,7 +127,7 @@ public PredictionServiceFutureStub newStub(
    * Service for making recommendation prediction.
    * 
*/ - public abstract static class PredictionServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -136,28 +136,32 @@ public abstract static class PredictionServiceImplBase implements io.grpc.Bindab * Makes a recommendation prediction. *
*/ - public void predict( + default void predict( com.google.cloud.retail.v2beta.PredictRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getPredictMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service PredictionService. + * + *
+   * Service for making recommendation prediction.
+   * 
+ */ + public abstract static class PredictionServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getPredictMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.PredictRequest, - com.google.cloud.retail.v2beta.PredictResponse>(this, METHODID_PREDICT))) - .build(); + return PredictionServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service PredictionService. * *
    * Service for making recommendation prediction.
@@ -192,7 +196,7 @@ public void predict(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service PredictionService.
    *
    * 
    * Service for making recommendation prediction.
@@ -226,7 +230,7 @@ public com.google.cloud.retail.v2beta.PredictResponse predict(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service PredictionService.
    *
    * 
    * Service for making recommendation prediction.
@@ -266,10 +270,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final PredictionServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(PredictionServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -300,6 +304,17 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getPredictMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.PredictRequest,
+                    com.google.cloud.retail.v2beta.PredictResponse>(service, METHODID_PREDICT)))
+        .build();
+  }
+
   private abstract static class PredictionServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ProductServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ProductServiceGrpc.java
index 51be63d83c96..95c75f40374c 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ProductServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ProductServiceGrpc.java
@@ -591,7 +591,7 @@ public ProductServiceFutureStub newStub(
    * information of the customer's website.
    * 
*/ - public abstract static class ProductServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -600,7 +600,7 @@ public abstract static class ProductServiceImplBase implements io.grpc.BindableS * Creates a [Product][google.cloud.retail.v2beta.Product]. *
*/ - public void createProduct( + default void createProduct( com.google.cloud.retail.v2beta.CreateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -614,7 +614,7 @@ public void createProduct( * Gets a [Product][google.cloud.retail.v2beta.Product]. *
*/ - public void getProduct( + default void getProduct( com.google.cloud.retail.v2beta.GetProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetProductMethod(), responseObserver); @@ -627,7 +627,7 @@ public void getProduct( * Gets a list of [Product][google.cloud.retail.v2beta.Product]s. *
*/ - public void listProducts( + default void listProducts( com.google.cloud.retail.v2beta.ListProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -642,7 +642,7 @@ public void listProducts( * Updates a [Product][google.cloud.retail.v2beta.Product]. * */ - public void updateProduct( + default void updateProduct( com.google.cloud.retail.v2beta.UpdateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -656,7 +656,7 @@ public void updateProduct( * Deletes a [Product][google.cloud.retail.v2beta.Product]. * */ - public void deleteProduct( + default void deleteProduct( com.google.cloud.retail.v2beta.DeleteProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -674,7 +674,7 @@ public void deleteProduct( * [Product][google.cloud.retail.v2beta.Product]s to be successfully updated. * */ - public void importProducts( + default void importProducts( com.google.cloud.retail.v2beta.ImportProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -731,7 +731,7 @@ public void importProducts( * Enable Retail Search on Cloud Console before using this feature. * */ - public void setInventory( + default void setInventory( com.google.cloud.retail.v2beta.SetInventoryRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -764,7 +764,7 @@ public void setInventory( * Enable Retail Search on Cloud Console before using this feature. * */ - public void addFulfillmentPlaces( + default void addFulfillmentPlaces( com.google.cloud.retail.v2beta.AddFulfillmentPlacesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -797,7 +797,7 @@ public void addFulfillmentPlaces( * Enable Retail Search on Cloud Console before using this feature. * */ - public void removeFulfillmentPlaces( + default void removeFulfillmentPlaces( com.google.cloud.retail.v2beta.RemoveFulfillmentPlacesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -836,7 +836,7 @@ public void removeFulfillmentPlaces( * Enable Retail Search on Cloud Console before using this feature. * */ - public void addLocalInventories( + default void addLocalInventories( com.google.cloud.retail.v2beta.AddLocalInventoriesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -873,89 +873,33 @@ public void addLocalInventories( * Enable Retail Search on Cloud Console before using this feature. * */ - public void removeLocalInventories( + default void removeLocalInventories( com.google.cloud.retail.v2beta.RemoveLocalInventoriesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRemoveLocalInventoriesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ProductService. + * + *
+   * Service for ingesting [Product][google.cloud.retail.v2beta.Product]
+   * information of the customer's website.
+   * 
+ */ + public abstract static class ProductServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.CreateProductRequest, - com.google.cloud.retail.v2beta.Product>(this, METHODID_CREATE_PRODUCT))) - .addMethod( - getGetProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.GetProductRequest, - com.google.cloud.retail.v2beta.Product>(this, METHODID_GET_PRODUCT))) - .addMethod( - getListProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ListProductsRequest, - com.google.cloud.retail.v2beta.ListProductsResponse>( - this, METHODID_LIST_PRODUCTS))) - .addMethod( - getUpdateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.UpdateProductRequest, - com.google.cloud.retail.v2beta.Product>(this, METHODID_UPDATE_PRODUCT))) - .addMethod( - getDeleteProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.DeleteProductRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PRODUCT))) - .addMethod( - getImportProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ImportProductsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_PRODUCTS))) - .addMethod( - getSetInventoryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.SetInventoryRequest, - com.google.longrunning.Operation>(this, METHODID_SET_INVENTORY))) - .addMethod( - getAddFulfillmentPlacesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.AddFulfillmentPlacesRequest, - com.google.longrunning.Operation>(this, METHODID_ADD_FULFILLMENT_PLACES))) - .addMethod( - getRemoveFulfillmentPlacesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.RemoveFulfillmentPlacesRequest, - com.google.longrunning.Operation>(this, METHODID_REMOVE_FULFILLMENT_PLACES))) - .addMethod( - getAddLocalInventoriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.AddLocalInventoriesRequest, - com.google.longrunning.Operation>(this, METHODID_ADD_LOCAL_INVENTORIES))) - .addMethod( - getRemoveLocalInventoriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.RemoveLocalInventoriesRequest, - com.google.longrunning.Operation>(this, METHODID_REMOVE_LOCAL_INVENTORIES))) - .build(); + return ProductServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ProductService. * *
    * Service for ingesting [Product][google.cloud.retail.v2beta.Product]
@@ -1283,7 +1227,7 @@ public void removeLocalInventories(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ProductService.
    *
    * 
    * Service for ingesting [Product][google.cloud.retail.v2beta.Product]
@@ -1580,7 +1524,7 @@ public com.google.longrunning.Operation removeLocalInventories(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ProductService.
    *
    * 
    * Service for ingesting [Product][google.cloud.retail.v2beta.Product]
@@ -1899,10 +1843,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ProductServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ProductServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1986,6 +1930,78 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.CreateProductRequest,
+                    com.google.cloud.retail.v2beta.Product>(service, METHODID_CREATE_PRODUCT)))
+        .addMethod(
+            getGetProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.GetProductRequest,
+                    com.google.cloud.retail.v2beta.Product>(service, METHODID_GET_PRODUCT)))
+        .addMethod(
+            getListProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ListProductsRequest,
+                    com.google.cloud.retail.v2beta.ListProductsResponse>(
+                    service, METHODID_LIST_PRODUCTS)))
+        .addMethod(
+            getUpdateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.UpdateProductRequest,
+                    com.google.cloud.retail.v2beta.Product>(service, METHODID_UPDATE_PRODUCT)))
+        .addMethod(
+            getDeleteProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.DeleteProductRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_PRODUCT)))
+        .addMethod(
+            getImportProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ImportProductsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_PRODUCTS)))
+        .addMethod(
+            getSetInventoryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.SetInventoryRequest,
+                    com.google.longrunning.Operation>(service, METHODID_SET_INVENTORY)))
+        .addMethod(
+            getAddFulfillmentPlacesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.AddFulfillmentPlacesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_ADD_FULFILLMENT_PLACES)))
+        .addMethod(
+            getRemoveFulfillmentPlacesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.RemoveFulfillmentPlacesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REMOVE_FULFILLMENT_PLACES)))
+        .addMethod(
+            getAddLocalInventoriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.AddLocalInventoriesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_ADD_LOCAL_INVENTORIES)))
+        .addMethod(
+            getRemoveLocalInventoriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.RemoveLocalInventoriesRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REMOVE_LOCAL_INVENTORIES)))
+        .build();
+  }
+
   private abstract static class ProductServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/SearchServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/SearchServiceGrpc.java
index 76d64885cde6..01270a422992 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/SearchServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/SearchServiceGrpc.java
@@ -131,7 +131,7 @@ public SearchServiceFutureStub newStub(
    * Enable Retail Search on Cloud Console before using this feature.
    * 
*/ - public abstract static class SearchServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -142,28 +142,34 @@ public abstract static class SearchServiceImplBase implements io.grpc.BindableSe * Enable Retail Search on Cloud Console before using this feature. *
*/ - public void search( + default void search( com.google.cloud.retail.v2beta.SearchRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSearchMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service SearchService. + * + *
+   * Service for search.
+   * This feature is only available for users who have Retail Search enabled.
+   * Enable Retail Search on Cloud Console before using this feature.
+   * 
+ */ + public abstract static class SearchServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getSearchMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.SearchRequest, - com.google.cloud.retail.v2beta.SearchResponse>(this, METHODID_SEARCH))) - .build(); + return SearchServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service SearchService. * *
    * Service for search.
@@ -201,7 +207,7 @@ public void search(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service SearchService.
    *
    * 
    * Service for search.
@@ -238,7 +244,7 @@ public com.google.cloud.retail.v2beta.SearchResponse search(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service SearchService.
    *
    * 
    * Service for search.
@@ -282,10 +288,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final SearchServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(SearchServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -316,6 +322,17 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getSearchMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.SearchRequest,
+                    com.google.cloud.retail.v2beta.SearchResponse>(service, METHODID_SEARCH)))
+        .build();
+  }
+
   private abstract static class SearchServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ServingConfigServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ServingConfigServiceGrpc.java
index f7ca95765b41..167cca802529 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ServingConfigServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/ServingConfigServiceGrpc.java
@@ -415,7 +415,7 @@ public ServingConfigServiceFutureStub newStub(
    * Service for modifying ServingConfig.
    * 
*/ - public abstract static class ServingConfigServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -427,7 +427,7 @@ public abstract static class ServingConfigServiceImplBase implements io.grpc.Bin * a FAILED_PRECONDITION error is returned. *
*/ - public void createServingConfig( + default void createServingConfig( com.google.cloud.retail.v2beta.CreateServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -443,7 +443,7 @@ public void createServingConfig( * Returns a NotFound error if the ServingConfig does not exist. *
*/ - public void deleteServingConfig( + default void deleteServingConfig( com.google.cloud.retail.v2beta.DeleteServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -457,7 +457,7 @@ public void deleteServingConfig( * Updates a ServingConfig. *
*/ - public void updateServingConfig( + default void updateServingConfig( com.google.cloud.retail.v2beta.UpdateServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -473,7 +473,7 @@ public void updateServingConfig( * Returns a NotFound error if the ServingConfig does not exist. * */ - public void getServingConfig( + default void getServingConfig( com.google.cloud.retail.v2beta.GetServingConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -488,7 +488,7 @@ public void getServingConfig( * Lists all ServingConfigs linked to this catalog. * */ - public void listServingConfigs( + default void listServingConfigs( com.google.cloud.retail.v2beta.ListServingConfigsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -509,7 +509,7 @@ public void listServingConfigs( * number of control allowed for that type of control. * */ - public void addControl( + default void addControl( com.google.cloud.retail.v2beta.AddControlRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -526,69 +526,33 @@ public void addControl( * ServingConfig. * */ - public void removeControl( + default void removeControl( com.google.cloud.retail.v2beta.RemoveControlRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRemoveControlMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ServingConfigService. + * + *
+   * Service for modifying ServingConfig.
+   * 
+ */ + public abstract static class ServingConfigServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.CreateServingConfigRequest, - com.google.cloud.retail.v2beta.ServingConfig>( - this, METHODID_CREATE_SERVING_CONFIG))) - .addMethod( - getDeleteServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.DeleteServingConfigRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_SERVING_CONFIG))) - .addMethod( - getUpdateServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.UpdateServingConfigRequest, - com.google.cloud.retail.v2beta.ServingConfig>( - this, METHODID_UPDATE_SERVING_CONFIG))) - .addMethod( - getGetServingConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.GetServingConfigRequest, - com.google.cloud.retail.v2beta.ServingConfig>( - this, METHODID_GET_SERVING_CONFIG))) - .addMethod( - getListServingConfigsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ListServingConfigsRequest, - com.google.cloud.retail.v2beta.ListServingConfigsResponse>( - this, METHODID_LIST_SERVING_CONFIGS))) - .addMethod( - getAddControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.AddControlRequest, - com.google.cloud.retail.v2beta.ServingConfig>(this, METHODID_ADD_CONTROL))) - .addMethod( - getRemoveControlMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.RemoveControlRequest, - com.google.cloud.retail.v2beta.ServingConfig>(this, METHODID_REMOVE_CONTROL))) - .build(); + return ServingConfigServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ServingConfigService. * *
    * Service for modifying ServingConfig.
@@ -738,7 +702,7 @@ public void removeControl(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ServingConfigService.
    *
    * 
    * Service for modifying ServingConfig.
@@ -864,7 +828,7 @@ public com.google.cloud.retail.v2beta.ServingConfig removeControl(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ServingConfigService.
    *
    * 
    * Service for modifying ServingConfig.
@@ -1008,10 +972,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ServingConfigServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ServingConfigServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1078,6 +1042,58 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.CreateServingConfigRequest,
+                    com.google.cloud.retail.v2beta.ServingConfig>(
+                    service, METHODID_CREATE_SERVING_CONFIG)))
+        .addMethod(
+            getDeleteServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.DeleteServingConfigRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_SERVING_CONFIG)))
+        .addMethod(
+            getUpdateServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.UpdateServingConfigRequest,
+                    com.google.cloud.retail.v2beta.ServingConfig>(
+                    service, METHODID_UPDATE_SERVING_CONFIG)))
+        .addMethod(
+            getGetServingConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.GetServingConfigRequest,
+                    com.google.cloud.retail.v2beta.ServingConfig>(
+                    service, METHODID_GET_SERVING_CONFIG)))
+        .addMethod(
+            getListServingConfigsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ListServingConfigsRequest,
+                    com.google.cloud.retail.v2beta.ListServingConfigsResponse>(
+                    service, METHODID_LIST_SERVING_CONFIGS)))
+        .addMethod(
+            getAddControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.AddControlRequest,
+                    com.google.cloud.retail.v2beta.ServingConfig>(service, METHODID_ADD_CONTROL)))
+        .addMethod(
+            getRemoveControlMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.RemoveControlRequest,
+                    com.google.cloud.retail.v2beta.ServingConfig>(
+                    service, METHODID_REMOVE_CONTROL)))
+        .build();
+  }
+
   private abstract static class ServingConfigServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/UserEventServiceGrpc.java b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/UserEventServiceGrpc.java
index 19433585f10a..b3584ccaf12c 100644
--- a/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/UserEventServiceGrpc.java
+++ b/java-retail/grpc-google-cloud-retail-v2beta/src/main/java/com/google/cloud/retail/v2beta/UserEventServiceGrpc.java
@@ -303,7 +303,7 @@ public UserEventServiceFutureStub newStub(
    * Service for ingesting end user actions on the customer website.
    * 
*/ - public abstract static class UserEventServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -312,7 +312,7 @@ public abstract static class UserEventServiceImplBase implements io.grpc.Bindabl * Writes a single user event. *
*/ - public void writeUserEvent( + default void writeUserEvent( com.google.cloud.retail.v2beta.WriteUserEventRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -329,7 +329,7 @@ public void writeUserEvent( * Manager. Users should not call this method directly. *
*/ - public void collectUserEvent( + default void collectUserEvent( com.google.cloud.retail.v2beta.CollectUserEventRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -346,7 +346,7 @@ public void collectUserEvent( * command first. * */ - public void purgeUserEvents( + default void purgeUserEvents( com.google.cloud.retail.v2beta.PurgeUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -365,7 +365,7 @@ public void purgeUserEvents( * `Operation.metadata` is of type `ImportMetadata`. * */ - public void importUserEvents( + default void importUserEvents( com.google.cloud.retail.v2beta.ImportUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -386,52 +386,32 @@ public void importUserEvents( * operation can take hours or days to complete. * */ - public void rejoinUserEvents( + default void rejoinUserEvents( com.google.cloud.retail.v2beta.RejoinUserEventsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getRejoinUserEventsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service UserEventService. + * + *
+   * Service for ingesting end user actions on the customer website.
+   * 
+ */ + public abstract static class UserEventServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getWriteUserEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.WriteUserEventRequest, - com.google.cloud.retail.v2beta.UserEvent>(this, METHODID_WRITE_USER_EVENT))) - .addMethod( - getCollectUserEventMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.CollectUserEventRequest, - com.google.api.HttpBody>(this, METHODID_COLLECT_USER_EVENT))) - .addMethod( - getPurgeUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.PurgeUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_PURGE_USER_EVENTS))) - .addMethod( - getImportUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.ImportUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_USER_EVENTS))) - .addMethod( - getRejoinUserEventsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.retail.v2beta.RejoinUserEventsRequest, - com.google.longrunning.Operation>(this, METHODID_REJOIN_USER_EVENTS))) - .build(); + return UserEventServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service UserEventService. * *
    * Service for ingesting end user actions on the customer website.
@@ -548,7 +528,7 @@ public void rejoinUserEvents(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service UserEventService.
    *
    * 
    * Service for ingesting end user actions on the customer website.
@@ -651,7 +631,7 @@ public com.google.longrunning.Operation rejoinUserEvents(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service UserEventService.
    *
    * 
    * Service for ingesting end user actions on the customer website.
@@ -765,10 +745,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final UserEventServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(UserEventServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -819,6 +799,41 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getWriteUserEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.WriteUserEventRequest,
+                    com.google.cloud.retail.v2beta.UserEvent>(service, METHODID_WRITE_USER_EVENT)))
+        .addMethod(
+            getCollectUserEventMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.CollectUserEventRequest,
+                    com.google.api.HttpBody>(service, METHODID_COLLECT_USER_EVENT)))
+        .addMethod(
+            getPurgeUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.PurgeUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_PURGE_USER_EVENTS)))
+        .addMethod(
+            getImportUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.ImportUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_USER_EVENTS)))
+        .addMethod(
+            getRejoinUserEventsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.retail.v2beta.RejoinUserEventsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REJOIN_USER_EVENTS)))
+        .build();
+  }
+
   private abstract static class UserEventServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {