diff --git a/java-vision/README.md b/java-vision/README.md index 5304f794818b..5bb81365e73f 100644 --- a/java-vision/README.md +++ b/java-vision/README.md @@ -13,6 +13,7 @@ Java idiomatic client for [Cloud Vision][product-docs]. If you are using Maven, add this to your pom.xml file: + ```xml @@ -34,6 +35,7 @@ If you are using SBT, add this to your dependencies: ```Scala libraryDependencies += "com.google.cloud" % "google-cloud-vision" % "3.11.0" ``` + ## Authentication diff --git a/java-vision/grpc-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ImageAnnotatorGrpc.java b/java-vision/grpc-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ImageAnnotatorGrpc.java index aaf0a87577fa..694fa427e6ad 100644 --- a/java-vision/grpc-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ImageAnnotatorGrpc.java +++ b/java-vision/grpc-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ImageAnnotatorGrpc.java @@ -283,7 +283,7 @@ public ImageAnnotatorFutureStub newStub( * ImageAnnotator service returns detected entities from the images. * */ - public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -292,7 +292,7 @@ public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableS * Run image detection and annotation for a batch of images. * */ - public void batchAnnotateImages( + default void batchAnnotateImages( com.google.cloud.vision.v1.BatchAnnotateImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -312,7 +312,7 @@ public void batchAnnotateImages( * extracted. * */ - public void batchAnnotateFiles( + default void batchAnnotateFiles( com.google.cloud.vision.v1.BatchAnnotateFilesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -333,7 +333,7 @@ public void batchAnnotateFiles( * GCS bucket, each json file containing BatchAnnotateImagesResponse proto. * */ - public void asyncBatchAnnotateImages( + default void asyncBatchAnnotateImages( com.google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -352,49 +352,34 @@ public void asyncBatchAnnotateImages( * `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results). * */ - public void asyncBatchAnnotateFiles( + default void asyncBatchAnnotateFiles( com.google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getAsyncBatchAnnotateFilesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ImageAnnotator. + * + *
+   * Service that performs Google Cloud Vision API detection tasks over client
+   * images, such as face, landmark, logo, label, and text detection. The
+   * ImageAnnotator service returns detected entities from the images.
+   * 
+ */ + public abstract static class ImageAnnotatorImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getBatchAnnotateImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.BatchAnnotateImagesRequest, - com.google.cloud.vision.v1.BatchAnnotateImagesResponse>( - this, METHODID_BATCH_ANNOTATE_IMAGES))) - .addMethod( - getBatchAnnotateFilesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.BatchAnnotateFilesRequest, - com.google.cloud.vision.v1.BatchAnnotateFilesResponse>( - this, METHODID_BATCH_ANNOTATE_FILES))) - .addMethod( - getAsyncBatchAnnotateImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest, - com.google.longrunning.Operation>( - this, METHODID_ASYNC_BATCH_ANNOTATE_IMAGES))) - .addMethod( - getAsyncBatchAnnotateFilesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest, - com.google.longrunning.Operation>(this, METHODID_ASYNC_BATCH_ANNOTATE_FILES))) - .build(); + return ImageAnnotatorGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ImageAnnotator. * *
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -497,7 +482,7 @@ public void asyncBatchAnnotateFiles(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -587,7 +572,7 @@ public com.google.longrunning.Operation asyncBatchAnnotateFiles(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -689,10 +674,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ImageAnnotatorImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ImageAnnotatorImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -739,6 +724,39 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getBatchAnnotateImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.BatchAnnotateImagesRequest,
+                    com.google.cloud.vision.v1.BatchAnnotateImagesResponse>(
+                    service, METHODID_BATCH_ANNOTATE_IMAGES)))
+        .addMethod(
+            getBatchAnnotateFilesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.BatchAnnotateFilesRequest,
+                    com.google.cloud.vision.v1.BatchAnnotateFilesResponse>(
+                    service, METHODID_BATCH_ANNOTATE_FILES)))
+        .addMethod(
+            getAsyncBatchAnnotateImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.AsyncBatchAnnotateImagesRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_ASYNC_BATCH_ANNOTATE_IMAGES)))
+        .addMethod(
+            getAsyncBatchAnnotateFilesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_ASYNC_BATCH_ANNOTATE_FILES)))
+        .build();
+  }
+
   private abstract static class ImageAnnotatorBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vision/grpc-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ProductSearchGrpc.java b/java-vision/grpc-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ProductSearchGrpc.java
index 1a984d58df0d..990f30631e89 100644
--- a/java-vision/grpc-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ProductSearchGrpc.java
+++ b/java-vision/grpc-google-cloud-vision-v1/src/main/java/com/google/cloud/vision/v1/ProductSearchGrpc.java
@@ -951,7 +951,7 @@ public ProductSearchFutureStub newStub(
    *   `projects/*/locations/*/products/*/referenceImages/*`
    * 
*/ - public abstract static class ProductSearchImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -963,7 +963,7 @@ public abstract static class ProductSearchImplBase implements io.grpc.BindableSe * 4096 characters. *
*/ - public void createProductSet( + default void createProductSet( com.google.cloud.vision.v1.CreateProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -980,7 +980,7 @@ public void createProductSet( * than 1. *
*/ - public void listProductSets( + default void listProductSets( com.google.cloud.vision.v1.ListProductSetsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -997,7 +997,7 @@ public void listProductSets( * * Returns NOT_FOUND if the ProductSet does not exist. * */ - public void getProductSet( + default void getProductSet( com.google.cloud.vision.v1.GetProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1016,7 +1016,7 @@ public void getProductSet( * missing from the request or longer than 4096 characters. * */ - public void updateProductSet( + default void updateProductSet( com.google.cloud.vision.v1.UpdateProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1032,7 +1032,7 @@ public void updateProductSet( * The actual image files are not deleted from Google Cloud Storage. * */ - public void deleteProductSet( + default void deleteProductSet( com.google.cloud.vision.v1.DeleteProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1051,7 +1051,7 @@ public void deleteProductSet( * * Returns INVALID_ARGUMENT if product_category is missing or invalid. * */ - public void createProduct( + default void createProduct( com.google.cloud.vision.v1.CreateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1067,7 +1067,7 @@ public void createProduct( * * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1. * */ - public void listProducts( + default void listProducts( com.google.cloud.vision.v1.ListProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1084,7 +1084,7 @@ public void listProducts( * * Returns NOT_FOUND if the Product does not exist. * */ - public void getProduct( + default void getProduct( com.google.cloud.vision.v1.GetProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetProductMethod(), responseObserver); @@ -1108,7 +1108,7 @@ public void getProduct( * * Returns INVALID_ARGUMENT if product_category is present in update_mask. * */ - public void updateProduct( + default void updateProduct( com.google.cloud.vision.v1.UpdateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1125,7 +1125,7 @@ public void updateProduct( * until all related caches are refreshed. * */ - public void deleteProduct( + default void deleteProduct( com.google.cloud.vision.v1.DeleteProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1153,7 +1153,7 @@ public void deleteProduct( * * Returns INVALID_ARGUMENT if bounding_poly contains more than 10 polygons. * */ - public void createReferenceImage( + default void createReferenceImage( com.google.cloud.vision.v1.CreateReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1171,7 +1171,7 @@ public void createReferenceImage( * The actual image files are not deleted from Google Cloud Storage. * */ - public void deleteReferenceImage( + default void deleteReferenceImage( com.google.cloud.vision.v1.DeleteReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1189,7 +1189,7 @@ public void deleteReferenceImage( * than 1. * */ - public void listReferenceImages( + default void listReferenceImages( com.google.cloud.vision.v1.ListReferenceImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1206,7 +1206,7 @@ public void listReferenceImages( * * Returns NOT_FOUND if the specified image does not exist. * */ - public void getReferenceImage( + default void getReferenceImage( com.google.cloud.vision.v1.GetReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1224,7 +1224,7 @@ public void getReferenceImage( * * Returns NOT_FOUND if the Product or the ProductSet doesn't exist. * */ - public void addProductToProductSet( + default void addProductToProductSet( com.google.cloud.vision.v1.AddProductToProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1238,7 +1238,7 @@ public void addProductToProductSet( * Removes a Product from the specified ProductSet. * */ - public void removeProductFromProductSet( + default void removeProductFromProductSet( com.google.cloud.vision.v1.RemoveProductFromProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1256,7 +1256,7 @@ public void removeProductFromProductSet( * * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1. * */ - public void listProductsInProductSet( + default void listProductsInProductSet( com.google.cloud.vision.v1.ListProductsInProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1279,7 +1279,7 @@ public void listProductsInProductSet( * [ImportProductSetsGcsSource.csv_file_uri][google.cloud.vision.v1.ImportProductSetsGcsSource.csv_file_uri]. * */ - public void importProductSets( + default void importProductSets( com.google.cloud.vision.v1.ImportProductSetsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1311,142 +1311,41 @@ public void importProductSets( * `Operation.metadata` contains `BatchOperationMetadata`. (progress) * */ - public void purgeProducts( + default void purgeProducts( com.google.cloud.vision.v1.PurgeProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getPurgeProductsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ProductSearch. + * + *
+   * Manages Products and ProductSets of reference images for use in product
+   * search. It uses the following resource model:
+   * - The API has a collection of [ProductSet][google.cloud.vision.v1.ProductSet] resources, named
+   * `projects/*/locations/*/productSets/*`, which acts as a way to put different
+   * products into groups to limit identification.
+   * In parallel,
+   * - The API has a collection of [Product][google.cloud.vision.v1.Product] resources, named
+   *   `projects/*/locations/*/products/*`
+   * - Each [Product][google.cloud.vision.v1.Product] has a collection of [ReferenceImage][google.cloud.vision.v1.ReferenceImage] resources, named
+   *   `projects/*/locations/*/products/*/referenceImages/*`
+   * 
+ */ + public abstract static class ProductSearchImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.CreateProductSetRequest, - com.google.cloud.vision.v1.ProductSet>(this, METHODID_CREATE_PRODUCT_SET))) - .addMethod( - getListProductSetsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.ListProductSetsRequest, - com.google.cloud.vision.v1.ListProductSetsResponse>( - this, METHODID_LIST_PRODUCT_SETS))) - .addMethod( - getGetProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.GetProductSetRequest, - com.google.cloud.vision.v1.ProductSet>(this, METHODID_GET_PRODUCT_SET))) - .addMethod( - getUpdateProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.UpdateProductSetRequest, - com.google.cloud.vision.v1.ProductSet>(this, METHODID_UPDATE_PRODUCT_SET))) - .addMethod( - getDeleteProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.DeleteProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PRODUCT_SET))) - .addMethod( - getCreateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.CreateProductRequest, - com.google.cloud.vision.v1.Product>(this, METHODID_CREATE_PRODUCT))) - .addMethod( - getListProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.ListProductsRequest, - com.google.cloud.vision.v1.ListProductsResponse>( - this, METHODID_LIST_PRODUCTS))) - .addMethod( - getGetProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.GetProductRequest, - com.google.cloud.vision.v1.Product>(this, METHODID_GET_PRODUCT))) - .addMethod( - getUpdateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.UpdateProductRequest, - com.google.cloud.vision.v1.Product>(this, METHODID_UPDATE_PRODUCT))) - .addMethod( - getDeleteProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.DeleteProductRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_PRODUCT))) - .addMethod( - getCreateReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.CreateReferenceImageRequest, - com.google.cloud.vision.v1.ReferenceImage>( - this, METHODID_CREATE_REFERENCE_IMAGE))) - .addMethod( - getDeleteReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.DeleteReferenceImageRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_REFERENCE_IMAGE))) - .addMethod( - getListReferenceImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.ListReferenceImagesRequest, - com.google.cloud.vision.v1.ListReferenceImagesResponse>( - this, METHODID_LIST_REFERENCE_IMAGES))) - .addMethod( - getGetReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.GetReferenceImageRequest, - com.google.cloud.vision.v1.ReferenceImage>( - this, METHODID_GET_REFERENCE_IMAGE))) - .addMethod( - getAddProductToProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.AddProductToProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_ADD_PRODUCT_TO_PRODUCT_SET))) - .addMethod( - getRemoveProductFromProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.RemoveProductFromProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_REMOVE_PRODUCT_FROM_PRODUCT_SET))) - .addMethod( - getListProductsInProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.ListProductsInProductSetRequest, - com.google.cloud.vision.v1.ListProductsInProductSetResponse>( - this, METHODID_LIST_PRODUCTS_IN_PRODUCT_SET))) - .addMethod( - getImportProductSetsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.ImportProductSetsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_PRODUCT_SETS))) - .addMethod( - getPurgeProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1.PurgeProductsRequest, - com.google.longrunning.Operation>(this, METHODID_PURGE_PRODUCTS))) - .build(); + return ProductSearchGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ProductSearch. * *
    * Manages Products and ProductSets of reference images for use in product
@@ -1876,7 +1775,7 @@ public void purgeProducts(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ProductSearch.
    *
    * 
    * Manages Products and ProductSets of reference images for use in product
@@ -2248,7 +2147,7 @@ public com.google.longrunning.Operation purgeProducts(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ProductSearch.
    *
    * 
    * Manages Products and ProductSets of reference images for use in product
@@ -2652,10 +2551,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ProductSearchImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ProductSearchImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2785,6 +2684,131 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.CreateProductSetRequest,
+                    com.google.cloud.vision.v1.ProductSet>(service, METHODID_CREATE_PRODUCT_SET)))
+        .addMethod(
+            getListProductSetsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.ListProductSetsRequest,
+                    com.google.cloud.vision.v1.ListProductSetsResponse>(
+                    service, METHODID_LIST_PRODUCT_SETS)))
+        .addMethod(
+            getGetProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.GetProductSetRequest,
+                    com.google.cloud.vision.v1.ProductSet>(service, METHODID_GET_PRODUCT_SET)))
+        .addMethod(
+            getUpdateProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.UpdateProductSetRequest,
+                    com.google.cloud.vision.v1.ProductSet>(service, METHODID_UPDATE_PRODUCT_SET)))
+        .addMethod(
+            getDeleteProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.DeleteProductSetRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_PRODUCT_SET)))
+        .addMethod(
+            getCreateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.CreateProductRequest,
+                    com.google.cloud.vision.v1.Product>(service, METHODID_CREATE_PRODUCT)))
+        .addMethod(
+            getListProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.ListProductsRequest,
+                    com.google.cloud.vision.v1.ListProductsResponse>(
+                    service, METHODID_LIST_PRODUCTS)))
+        .addMethod(
+            getGetProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.GetProductRequest,
+                    com.google.cloud.vision.v1.Product>(service, METHODID_GET_PRODUCT)))
+        .addMethod(
+            getUpdateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.UpdateProductRequest,
+                    com.google.cloud.vision.v1.Product>(service, METHODID_UPDATE_PRODUCT)))
+        .addMethod(
+            getDeleteProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.DeleteProductRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_PRODUCT)))
+        .addMethod(
+            getCreateReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.CreateReferenceImageRequest,
+                    com.google.cloud.vision.v1.ReferenceImage>(
+                    service, METHODID_CREATE_REFERENCE_IMAGE)))
+        .addMethod(
+            getDeleteReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.DeleteReferenceImageRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_REFERENCE_IMAGE)))
+        .addMethod(
+            getListReferenceImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.ListReferenceImagesRequest,
+                    com.google.cloud.vision.v1.ListReferenceImagesResponse>(
+                    service, METHODID_LIST_REFERENCE_IMAGES)))
+        .addMethod(
+            getGetReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.GetReferenceImageRequest,
+                    com.google.cloud.vision.v1.ReferenceImage>(
+                    service, METHODID_GET_REFERENCE_IMAGE)))
+        .addMethod(
+            getAddProductToProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.AddProductToProductSetRequest,
+                    com.google.protobuf.Empty>(service, METHODID_ADD_PRODUCT_TO_PRODUCT_SET)))
+        .addMethod(
+            getRemoveProductFromProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.RemoveProductFromProductSetRequest,
+                    com.google.protobuf.Empty>(service, METHODID_REMOVE_PRODUCT_FROM_PRODUCT_SET)))
+        .addMethod(
+            getListProductsInProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.ListProductsInProductSetRequest,
+                    com.google.cloud.vision.v1.ListProductsInProductSetResponse>(
+                    service, METHODID_LIST_PRODUCTS_IN_PRODUCT_SET)))
+        .addMethod(
+            getImportProductSetsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.ImportProductSetsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_PRODUCT_SETS)))
+        .addMethod(
+            getPurgeProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1.PurgeProductsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_PURGE_PRODUCTS)))
+        .build();
+  }
+
   private abstract static class ProductSearchBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vision/grpc-google-cloud-vision-v1p1beta1/src/main/java/com/google/cloud/vision/v1p1beta1/ImageAnnotatorGrpc.java b/java-vision/grpc-google-cloud-vision-v1p1beta1/src/main/java/com/google/cloud/vision/v1p1beta1/ImageAnnotatorGrpc.java
index a752e22d7b85..2a7ce1523583 100644
--- a/java-vision/grpc-google-cloud-vision-v1p1beta1/src/main/java/com/google/cloud/vision/v1p1beta1/ImageAnnotatorGrpc.java
+++ b/java-vision/grpc-google-cloud-vision-v1p1beta1/src/main/java/com/google/cloud/vision/v1p1beta1/ImageAnnotatorGrpc.java
@@ -136,7 +136,7 @@ public ImageAnnotatorFutureStub newStub(
    * ImageAnnotator service returns detected entities from the images.
    * 
*/ - public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -145,30 +145,35 @@ public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableS * Run image detection and annotation for a batch of images. *
*/ - public void batchAnnotateImages( + default void batchAnnotateImages( com.google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getBatchAnnotateImagesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ImageAnnotator. + * + *
+   * Service that performs Google Cloud Vision API detection tasks over client
+   * images, such as face, landmark, logo, label, and text detection. The
+   * ImageAnnotator service returns detected entities from the images.
+   * 
+ */ + public abstract static class ImageAnnotatorImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getBatchAnnotateImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest, - com.google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse>( - this, METHODID_BATCH_ANNOTATE_IMAGES))) - .build(); + return ImageAnnotatorGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ImageAnnotator. * *
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -206,7 +211,7 @@ public void batchAnnotateImages(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -241,7 +246,7 @@ public com.google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse batchAnnota
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -283,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 ImageAnnotatorImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ImageAnnotatorImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -318,6 +323,18 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getBatchAnnotateImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p1beta1.BatchAnnotateImagesRequest,
+                    com.google.cloud.vision.v1p1beta1.BatchAnnotateImagesResponse>(
+                    service, METHODID_BATCH_ANNOTATE_IMAGES)))
+        .build();
+  }
+
   private abstract static class ImageAnnotatorBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vision/grpc-google-cloud-vision-v1p2beta1/src/main/java/com/google/cloud/vision/v1p2beta1/ImageAnnotatorGrpc.java b/java-vision/grpc-google-cloud-vision-v1p2beta1/src/main/java/com/google/cloud/vision/v1p2beta1/ImageAnnotatorGrpc.java
index 4392bcc7fce8..c4a0b33e648b 100644
--- a/java-vision/grpc-google-cloud-vision-v1p2beta1/src/main/java/com/google/cloud/vision/v1p2beta1/ImageAnnotatorGrpc.java
+++ b/java-vision/grpc-google-cloud-vision-v1p2beta1/src/main/java/com/google/cloud/vision/v1p2beta1/ImageAnnotatorGrpc.java
@@ -185,7 +185,7 @@ public ImageAnnotatorFutureStub newStub(
    * ImageAnnotator service returns detected entities from the images.
    * 
*/ - public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -194,7 +194,7 @@ public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableS * Run image detection and annotation for a batch of images. *
*/ - public void batchAnnotateImages( + default void batchAnnotateImages( com.google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -214,35 +214,34 @@ public void batchAnnotateImages( * `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results). *
*/ - public void asyncBatchAnnotateFiles( + default void asyncBatchAnnotateFiles( com.google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getAsyncBatchAnnotateFilesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ImageAnnotator. + * + *
+   * Service that performs Google Cloud Vision API detection tasks over client
+   * images, such as face, landmark, logo, label, and text detection. The
+   * ImageAnnotator service returns detected entities from the images.
+   * 
+ */ + public abstract static class ImageAnnotatorImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getBatchAnnotateImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest, - com.google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse>( - this, METHODID_BATCH_ANNOTATE_IMAGES))) - .addMethod( - getAsyncBatchAnnotateFilesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest, - com.google.longrunning.Operation>(this, METHODID_ASYNC_BATCH_ANNOTATE_FILES))) - .build(); + return ImageAnnotatorGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ImageAnnotator. * *
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -301,7 +300,7 @@ public void asyncBatchAnnotateFiles(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -354,7 +353,7 @@ public com.google.longrunning.Operation asyncBatchAnnotateFiles(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -416,10 +415,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ImageAnnotatorImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ImageAnnotatorImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -456,6 +455,25 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getBatchAnnotateImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest,
+                    com.google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse>(
+                    service, METHODID_BATCH_ANNOTATE_IMAGES)))
+        .addMethod(
+            getAsyncBatchAnnotateFilesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_ASYNC_BATCH_ANNOTATE_FILES)))
+        .build();
+  }
+
   private abstract static class ImageAnnotatorBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vision/grpc-google-cloud-vision-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ImageAnnotatorGrpc.java b/java-vision/grpc-google-cloud-vision-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ImageAnnotatorGrpc.java
index c2e01c7851dc..92a25c7ad078 100644
--- a/java-vision/grpc-google-cloud-vision-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ImageAnnotatorGrpc.java
+++ b/java-vision/grpc-google-cloud-vision-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ImageAnnotatorGrpc.java
@@ -185,7 +185,7 @@ public ImageAnnotatorFutureStub newStub(
    * ImageAnnotator service returns detected entities from the images.
    * 
*/ - public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -194,7 +194,7 @@ public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableS * Run image detection and annotation for a batch of images. *
*/ - public void batchAnnotateImages( + default void batchAnnotateImages( com.google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -214,35 +214,34 @@ public void batchAnnotateImages( * `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results). *
*/ - public void asyncBatchAnnotateFiles( + default void asyncBatchAnnotateFiles( com.google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getAsyncBatchAnnotateFilesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ImageAnnotator. + * + *
+   * Service that performs Google Cloud Vision API detection tasks over client
+   * images, such as face, landmark, logo, label, and text detection. The
+   * ImageAnnotator service returns detected entities from the images.
+   * 
+ */ + public abstract static class ImageAnnotatorImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getBatchAnnotateImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest, - com.google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse>( - this, METHODID_BATCH_ANNOTATE_IMAGES))) - .addMethod( - getAsyncBatchAnnotateFilesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest, - com.google.longrunning.Operation>(this, METHODID_ASYNC_BATCH_ANNOTATE_FILES))) - .build(); + return ImageAnnotatorGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ImageAnnotator. * *
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -301,7 +300,7 @@ public void asyncBatchAnnotateFiles(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -354,7 +353,7 @@ public com.google.longrunning.Operation asyncBatchAnnotateFiles(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -416,10 +415,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ImageAnnotatorImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ImageAnnotatorImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -456,6 +455,25 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getBatchAnnotateImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.BatchAnnotateImagesRequest,
+                    com.google.cloud.vision.v1p3beta1.BatchAnnotateImagesResponse>(
+                    service, METHODID_BATCH_ANNOTATE_IMAGES)))
+        .addMethod(
+            getAsyncBatchAnnotateFilesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.AsyncBatchAnnotateFilesRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_ASYNC_BATCH_ANNOTATE_FILES)))
+        .build();
+  }
+
   private abstract static class ImageAnnotatorBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vision/grpc-google-cloud-vision-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ProductSearchGrpc.java b/java-vision/grpc-google-cloud-vision-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ProductSearchGrpc.java
index dc9a16d949ab..fd05765083f4 100644
--- a/java-vision/grpc-google-cloud-vision-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ProductSearchGrpc.java
+++ b/java-vision/grpc-google-cloud-vision-v1p3beta1/src/main/java/com/google/cloud/vision/v1p3beta1/ProductSearchGrpc.java
@@ -944,7 +944,7 @@ public ProductSearchFutureStub newStub(
    *   `projects/*/locations/*/products/*/referenceImages/*`
    * 
*/ - public abstract static class ProductSearchImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -956,7 +956,7 @@ public abstract static class ProductSearchImplBase implements io.grpc.BindableSe * 4096 characters. *
*/ - public void createProductSet( + default void createProductSet( com.google.cloud.vision.v1p3beta1.CreateProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -974,7 +974,7 @@ public void createProductSet( * than 1. *
*/ - public void listProductSets( + default void listProductSets( com.google.cloud.vision.v1p3beta1.ListProductSetsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -991,7 +991,7 @@ public void listProductSets( * * Returns NOT_FOUND if the ProductSet does not exist. *
*/ - public void getProductSet( + default void getProductSet( com.google.cloud.vision.v1p3beta1.GetProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1011,7 +1011,7 @@ public void getProductSet( * missing from the request or longer than 4096 characters. * */ - public void updateProductSet( + default void updateProductSet( com.google.cloud.vision.v1p3beta1.UpdateProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1030,7 +1030,7 @@ public void updateProductSet( * * Returns NOT_FOUND if the ProductSet does not exist. * */ - public void deleteProductSet( + default void deleteProductSet( com.google.cloud.vision.v1p3beta1.DeleteProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1049,7 +1049,7 @@ public void deleteProductSet( * * Returns INVALID_ARGUMENT if product_category is missing or invalid. * */ - public void createProduct( + default void createProduct( com.google.cloud.vision.v1p3beta1.CreateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1065,7 +1065,7 @@ public void createProduct( * * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1. * */ - public void listProducts( + default void listProducts( com.google.cloud.vision.v1p3beta1.ListProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1082,7 +1082,7 @@ public void listProducts( * * Returns NOT_FOUND if the Product does not exist. * */ - public void getProduct( + default void getProduct( com.google.cloud.vision.v1p3beta1.GetProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetProductMethod(), responseObserver); @@ -1105,7 +1105,7 @@ public void getProduct( * * Returns INVALID_ARGUMENT if product_category is present in update_mask. * */ - public void updateProduct( + default void updateProduct( com.google.cloud.vision.v1p3beta1.UpdateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1124,7 +1124,7 @@ public void updateProduct( * * Returns NOT_FOUND if the product does not exist. * */ - public void deleteProduct( + default void deleteProduct( com.google.cloud.vision.v1p3beta1.DeleteProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1152,7 +1152,7 @@ public void deleteProduct( * * Returns INVALID_ARGUMENT if bounding_poly contains more than 10 polygons. * */ - public void createReferenceImage( + default void createReferenceImage( com.google.cloud.vision.v1p3beta1.CreateReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1173,7 +1173,7 @@ public void createReferenceImage( * * Returns NOT_FOUND if the reference image does not exist. * */ - public void deleteReferenceImage( + default void deleteReferenceImage( com.google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1191,7 +1191,7 @@ public void deleteReferenceImage( * than 1. * */ - public void listReferenceImages( + default void listReferenceImages( com.google.cloud.vision.v1p3beta1.ListReferenceImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1208,7 +1208,7 @@ public void listReferenceImages( * * Returns NOT_FOUND if the specified image does not exist. * */ - public void getReferenceImage( + default void getReferenceImage( com.google.cloud.vision.v1p3beta1.GetReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1227,7 +1227,7 @@ public void getReferenceImage( * * Returns NOT_FOUND if the Product or the ProductSet doesn't exist. * */ - public void addProductToProductSet( + default void addProductToProductSet( com.google.cloud.vision.v1p3beta1.AddProductToProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1243,7 +1243,7 @@ public void addProductToProductSet( * * Returns NOT_FOUND If the Product is not found under the ProductSet. * */ - public void removeProductFromProductSet( + default void removeProductFromProductSet( com.google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1261,7 +1261,7 @@ public void removeProductFromProductSet( * * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1. * */ - public void listProductsInProductSet( + default void listProductsInProductSet( com.google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest request, io.grpc.stub.StreamObserver< com.google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse> @@ -1285,139 +1285,41 @@ public void listProductsInProductSet( * [ImportProductSetsGcsSource.csv_file_uri][google.cloud.vision.v1p3beta1.ImportProductSetsGcsSource.csv_file_uri]. * */ - public void importProductSets( + default void importProductSets( com.google.cloud.vision.v1p3beta1.ImportProductSetsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getImportProductSetsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ProductSearch. + * + *
+   * Manages Products and ProductSets of reference images for use in product
+   * search. It uses the following resource model:
+   * - The API has a collection of [ProductSet][google.cloud.vision.v1p3beta1.ProductSet] resources, named
+   * `projects/*/locations/*/productSets/*`, which acts as a way to put different
+   * products into groups to limit identification.
+   * In parallel,
+   * - The API has a collection of [Product][google.cloud.vision.v1p3beta1.Product] resources, named
+   *   `projects/*/locations/*/products/*`
+   * - Each [Product][google.cloud.vision.v1p3beta1.Product] has a collection of [ReferenceImage][google.cloud.vision.v1p3beta1.ReferenceImage] resources, named
+   *   `projects/*/locations/*/products/*/referenceImages/*`
+   * 
+ */ + public abstract static class ProductSearchImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.CreateProductSetRequest, - com.google.cloud.vision.v1p3beta1.ProductSet>( - this, METHODID_CREATE_PRODUCT_SET))) - .addMethod( - getListProductSetsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.ListProductSetsRequest, - com.google.cloud.vision.v1p3beta1.ListProductSetsResponse>( - this, METHODID_LIST_PRODUCT_SETS))) - .addMethod( - getGetProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.GetProductSetRequest, - com.google.cloud.vision.v1p3beta1.ProductSet>( - this, METHODID_GET_PRODUCT_SET))) - .addMethod( - getUpdateProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.UpdateProductSetRequest, - com.google.cloud.vision.v1p3beta1.ProductSet>( - this, METHODID_UPDATE_PRODUCT_SET))) - .addMethod( - getDeleteProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.DeleteProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PRODUCT_SET))) - .addMethod( - getCreateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.CreateProductRequest, - com.google.cloud.vision.v1p3beta1.Product>(this, METHODID_CREATE_PRODUCT))) - .addMethod( - getListProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.ListProductsRequest, - com.google.cloud.vision.v1p3beta1.ListProductsResponse>( - this, METHODID_LIST_PRODUCTS))) - .addMethod( - getGetProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.GetProductRequest, - com.google.cloud.vision.v1p3beta1.Product>(this, METHODID_GET_PRODUCT))) - .addMethod( - getUpdateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.UpdateProductRequest, - com.google.cloud.vision.v1p3beta1.Product>(this, METHODID_UPDATE_PRODUCT))) - .addMethod( - getDeleteProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.DeleteProductRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PRODUCT))) - .addMethod( - getCreateReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.CreateReferenceImageRequest, - com.google.cloud.vision.v1p3beta1.ReferenceImage>( - this, METHODID_CREATE_REFERENCE_IMAGE))) - .addMethod( - getDeleteReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_REFERENCE_IMAGE))) - .addMethod( - getListReferenceImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.ListReferenceImagesRequest, - com.google.cloud.vision.v1p3beta1.ListReferenceImagesResponse>( - this, METHODID_LIST_REFERENCE_IMAGES))) - .addMethod( - getGetReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.GetReferenceImageRequest, - com.google.cloud.vision.v1p3beta1.ReferenceImage>( - this, METHODID_GET_REFERENCE_IMAGE))) - .addMethod( - getAddProductToProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.AddProductToProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_ADD_PRODUCT_TO_PRODUCT_SET))) - .addMethod( - getRemoveProductFromProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_REMOVE_PRODUCT_FROM_PRODUCT_SET))) - .addMethod( - getListProductsInProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest, - com.google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse>( - this, METHODID_LIST_PRODUCTS_IN_PRODUCT_SET))) - .addMethod( - getImportProductSetsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p3beta1.ImportProductSetsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_PRODUCT_SETS))) - .build(); + return ProductSearchGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ProductSearch. * *
    * Manages Products and ProductSets of reference images for use in product
@@ -1826,7 +1728,7 @@ public void importProductSets(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ProductSearch.
    *
    * 
    * Manages Products and ProductSets of reference images for use in product
@@ -2175,7 +2077,7 @@ public com.google.longrunning.Operation importProductSets(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ProductSearch.
    *
    * 
    * Manages Products and ProductSets of reference images for use in product
@@ -2563,10 +2465,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ProductSearchImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ProductSearchImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2696,6 +2598,128 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.CreateProductSetRequest,
+                    com.google.cloud.vision.v1p3beta1.ProductSet>(
+                    service, METHODID_CREATE_PRODUCT_SET)))
+        .addMethod(
+            getListProductSetsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.ListProductSetsRequest,
+                    com.google.cloud.vision.v1p3beta1.ListProductSetsResponse>(
+                    service, METHODID_LIST_PRODUCT_SETS)))
+        .addMethod(
+            getGetProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.GetProductSetRequest,
+                    com.google.cloud.vision.v1p3beta1.ProductSet>(
+                    service, METHODID_GET_PRODUCT_SET)))
+        .addMethod(
+            getUpdateProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.UpdateProductSetRequest,
+                    com.google.cloud.vision.v1p3beta1.ProductSet>(
+                    service, METHODID_UPDATE_PRODUCT_SET)))
+        .addMethod(
+            getDeleteProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.DeleteProductSetRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_PRODUCT_SET)))
+        .addMethod(
+            getCreateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.CreateProductRequest,
+                    com.google.cloud.vision.v1p3beta1.Product>(service, METHODID_CREATE_PRODUCT)))
+        .addMethod(
+            getListProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.ListProductsRequest,
+                    com.google.cloud.vision.v1p3beta1.ListProductsResponse>(
+                    service, METHODID_LIST_PRODUCTS)))
+        .addMethod(
+            getGetProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.GetProductRequest,
+                    com.google.cloud.vision.v1p3beta1.Product>(service, METHODID_GET_PRODUCT)))
+        .addMethod(
+            getUpdateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.UpdateProductRequest,
+                    com.google.cloud.vision.v1p3beta1.Product>(service, METHODID_UPDATE_PRODUCT)))
+        .addMethod(
+            getDeleteProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.DeleteProductRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_PRODUCT)))
+        .addMethod(
+            getCreateReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.CreateReferenceImageRequest,
+                    com.google.cloud.vision.v1p3beta1.ReferenceImage>(
+                    service, METHODID_CREATE_REFERENCE_IMAGE)))
+        .addMethod(
+            getDeleteReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.DeleteReferenceImageRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_REFERENCE_IMAGE)))
+        .addMethod(
+            getListReferenceImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.ListReferenceImagesRequest,
+                    com.google.cloud.vision.v1p3beta1.ListReferenceImagesResponse>(
+                    service, METHODID_LIST_REFERENCE_IMAGES)))
+        .addMethod(
+            getGetReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.GetReferenceImageRequest,
+                    com.google.cloud.vision.v1p3beta1.ReferenceImage>(
+                    service, METHODID_GET_REFERENCE_IMAGE)))
+        .addMethod(
+            getAddProductToProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.AddProductToProductSetRequest,
+                    com.google.protobuf.Empty>(service, METHODID_ADD_PRODUCT_TO_PRODUCT_SET)))
+        .addMethod(
+            getRemoveProductFromProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.RemoveProductFromProductSetRequest,
+                    com.google.protobuf.Empty>(service, METHODID_REMOVE_PRODUCT_FROM_PRODUCT_SET)))
+        .addMethod(
+            getListProductsInProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.ListProductsInProductSetRequest,
+                    com.google.cloud.vision.v1p3beta1.ListProductsInProductSetResponse>(
+                    service, METHODID_LIST_PRODUCTS_IN_PRODUCT_SET)))
+        .addMethod(
+            getImportProductSetsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p3beta1.ImportProductSetsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_PRODUCT_SETS)))
+        .build();
+  }
+
   private abstract static class ProductSearchBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vision/grpc-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/ImageAnnotatorGrpc.java b/java-vision/grpc-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/ImageAnnotatorGrpc.java
index 499194d8cec8..edbea5f5b8d3 100644
--- a/java-vision/grpc-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/ImageAnnotatorGrpc.java
+++ b/java-vision/grpc-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/ImageAnnotatorGrpc.java
@@ -283,7 +283,7 @@ public ImageAnnotatorFutureStub newStub(
    * ImageAnnotator service returns detected entities from the images.
    * 
*/ - public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -292,7 +292,7 @@ public abstract static class ImageAnnotatorImplBase implements io.grpc.BindableS * Run image detection and annotation for a batch of images. *
*/ - public void batchAnnotateImages( + default void batchAnnotateImages( com.google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -312,7 +312,7 @@ public void batchAnnotateImages( * extracted. *
*/ - public void batchAnnotateFiles( + default void batchAnnotateFiles( com.google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -333,7 +333,7 @@ public void batchAnnotateFiles( * GCS bucket, each json file containing BatchAnnotateImagesResponse proto. * */ - public void asyncBatchAnnotateImages( + default void asyncBatchAnnotateImages( com.google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -352,49 +352,34 @@ public void asyncBatchAnnotateImages( * `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results). * */ - public void asyncBatchAnnotateFiles( + default void asyncBatchAnnotateFiles( com.google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getAsyncBatchAnnotateFilesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ImageAnnotator. + * + *
+   * Service that performs Google Cloud Vision API detection tasks over client
+   * images, such as face, landmark, logo, label, and text detection. The
+   * ImageAnnotator service returns detected entities from the images.
+   * 
+ */ + public abstract static class ImageAnnotatorImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getBatchAnnotateImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest, - com.google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse>( - this, METHODID_BATCH_ANNOTATE_IMAGES))) - .addMethod( - getBatchAnnotateFilesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest, - com.google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse>( - this, METHODID_BATCH_ANNOTATE_FILES))) - .addMethod( - getAsyncBatchAnnotateImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest, - com.google.longrunning.Operation>( - this, METHODID_ASYNC_BATCH_ANNOTATE_IMAGES))) - .addMethod( - getAsyncBatchAnnotateFilesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest, - com.google.longrunning.Operation>(this, METHODID_ASYNC_BATCH_ANNOTATE_FILES))) - .build(); + return ImageAnnotatorGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ImageAnnotator. * *
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -497,7 +482,7 @@ public void asyncBatchAnnotateFiles(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -587,7 +572,7 @@ public com.google.longrunning.Operation asyncBatchAnnotateFiles(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ImageAnnotator.
    *
    * 
    * Service that performs Google Cloud Vision API detection tasks over client
@@ -690,10 +675,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ImageAnnotatorImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ImageAnnotatorImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -742,6 +727,39 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getBatchAnnotateImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.BatchAnnotateImagesRequest,
+                    com.google.cloud.vision.v1p4beta1.BatchAnnotateImagesResponse>(
+                    service, METHODID_BATCH_ANNOTATE_IMAGES)))
+        .addMethod(
+            getBatchAnnotateFilesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.BatchAnnotateFilesRequest,
+                    com.google.cloud.vision.v1p4beta1.BatchAnnotateFilesResponse>(
+                    service, METHODID_BATCH_ANNOTATE_FILES)))
+        .addMethod(
+            getAsyncBatchAnnotateImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.AsyncBatchAnnotateImagesRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_ASYNC_BATCH_ANNOTATE_IMAGES)))
+        .addMethod(
+            getAsyncBatchAnnotateFilesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.AsyncBatchAnnotateFilesRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_ASYNC_BATCH_ANNOTATE_FILES)))
+        .build();
+  }
+
   private abstract static class ImageAnnotatorBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vision/grpc-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/ProductSearchGrpc.java b/java-vision/grpc-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/ProductSearchGrpc.java
index 49992ba8be40..34a60b043ab8 100644
--- a/java-vision/grpc-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/ProductSearchGrpc.java
+++ b/java-vision/grpc-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/ProductSearchGrpc.java
@@ -996,7 +996,7 @@ public ProductSearchFutureStub newStub(
    *   `projects/*/locations/*/products/*/referenceImages/*`
    * 
*/ - public abstract static class ProductSearchImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -1008,7 +1008,7 @@ public abstract static class ProductSearchImplBase implements io.grpc.BindableSe * 4096 characters. *
*/ - public void createProductSet( + default void createProductSet( com.google.cloud.vision.v1p4beta1.CreateProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1026,7 +1026,7 @@ public void createProductSet( * than 1. *
*/ - public void listProductSets( + default void listProductSets( com.google.cloud.vision.v1p4beta1.ListProductSetsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1043,7 +1043,7 @@ public void listProductSets( * * Returns NOT_FOUND if the ProductSet does not exist. * */ - public void getProductSet( + default void getProductSet( com.google.cloud.vision.v1p4beta1.GetProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1063,7 +1063,7 @@ public void getProductSet( * missing from the request or longer than 4096 characters. * */ - public void updateProductSet( + default void updateProductSet( com.google.cloud.vision.v1p4beta1.UpdateProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1080,7 +1080,7 @@ public void updateProductSet( * The actual image files are not deleted from Google Cloud Storage. * */ - public void deleteProductSet( + default void deleteProductSet( com.google.cloud.vision.v1p4beta1.DeleteProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1099,7 +1099,7 @@ public void deleteProductSet( * * Returns INVALID_ARGUMENT if product_category is missing or invalid. * */ - public void createProduct( + default void createProduct( com.google.cloud.vision.v1p4beta1.CreateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1115,7 +1115,7 @@ public void createProduct( * * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1. * */ - public void listProducts( + default void listProducts( com.google.cloud.vision.v1p4beta1.ListProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1132,7 +1132,7 @@ public void listProducts( * * Returns NOT_FOUND if the Product does not exist. * */ - public void getProduct( + default void getProduct( com.google.cloud.vision.v1p4beta1.GetProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetProductMethod(), responseObserver); @@ -1156,7 +1156,7 @@ public void getProduct( * * Returns INVALID_ARGUMENT if product_category is present in update_mask. * */ - public void updateProduct( + default void updateProduct( com.google.cloud.vision.v1p4beta1.UpdateProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1173,7 +1173,7 @@ public void updateProduct( * until all related caches are refreshed. * */ - public void deleteProduct( + default void deleteProduct( com.google.cloud.vision.v1p4beta1.DeleteProductRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1201,7 +1201,7 @@ public void deleteProduct( * * Returns INVALID_ARGUMENT if bounding_poly contains more than 10 polygons. * */ - public void createReferenceImage( + default void createReferenceImage( com.google.cloud.vision.v1p4beta1.CreateReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1220,7 +1220,7 @@ public void createReferenceImage( * The actual image files are not deleted from Google Cloud Storage. * */ - public void deleteReferenceImage( + default void deleteReferenceImage( com.google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1238,7 +1238,7 @@ public void deleteReferenceImage( * than 1. * */ - public void listReferenceImages( + default void listReferenceImages( com.google.cloud.vision.v1p4beta1.ListReferenceImagesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1255,7 +1255,7 @@ public void listReferenceImages( * * Returns NOT_FOUND if the specified image does not exist. * */ - public void getReferenceImage( + default void getReferenceImage( com.google.cloud.vision.v1p4beta1.GetReferenceImageRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1274,7 +1274,7 @@ public void getReferenceImage( * * Returns NOT_FOUND if the Product or the ProductSet doesn't exist. * */ - public void addProductToProductSet( + default void addProductToProductSet( com.google.cloud.vision.v1p4beta1.AddProductToProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1288,7 +1288,7 @@ public void addProductToProductSet( * Removes a Product from the specified ProductSet. * */ - public void removeProductFromProductSet( + default void removeProductFromProductSet( com.google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1306,7 +1306,7 @@ public void removeProductFromProductSet( * * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1. * */ - public void listProductsInProductSet( + default void listProductsInProductSet( com.google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest request, io.grpc.stub.StreamObserver< com.google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse> @@ -1330,7 +1330,7 @@ public void listProductsInProductSet( * [ImportProductSetsGcsSource.csv_file_uri][google.cloud.vision.v1p4beta1.ImportProductSetsGcsSource.csv_file_uri]. * */ - public void importProductSets( + default void importProductSets( com.google.cloud.vision.v1p4beta1.ImportProductSetsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1362,145 +1362,45 @@ public void importProductSets( * `Operation.metadata` contains `BatchOperationMetadata`. (progress) * */ - public void purgeProducts( + default void purgeProducts( com.google.cloud.vision.v1p4beta1.PurgeProductsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getPurgeProductsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ProductSearch. + * + *
+   * Manages Products and ProductSets of reference images for use in product
+   * search. It uses the following resource model:
+   * - The API has a collection of
+   * [ProductSet][google.cloud.vision.v1p4beta1.ProductSet] resources, named
+   * `projects/*/locations/*/productSets/*`, which acts as a way to put different
+   * products into groups to limit identification.
+   * In parallel,
+   * - The API has a collection of
+   * [Product][google.cloud.vision.v1p4beta1.Product] resources, named
+   *   `projects/*/locations/*/products/*`
+   * - Each [Product][google.cloud.vision.v1p4beta1.Product] has a collection of
+   * [ReferenceImage][google.cloud.vision.v1p4beta1.ReferenceImage] resources,
+   * named
+   *   `projects/*/locations/*/products/*/referenceImages/*`
+   * 
+ */ + public abstract static class ProductSearchImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.CreateProductSetRequest, - com.google.cloud.vision.v1p4beta1.ProductSet>( - this, METHODID_CREATE_PRODUCT_SET))) - .addMethod( - getListProductSetsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.ListProductSetsRequest, - com.google.cloud.vision.v1p4beta1.ListProductSetsResponse>( - this, METHODID_LIST_PRODUCT_SETS))) - .addMethod( - getGetProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.GetProductSetRequest, - com.google.cloud.vision.v1p4beta1.ProductSet>( - this, METHODID_GET_PRODUCT_SET))) - .addMethod( - getUpdateProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.UpdateProductSetRequest, - com.google.cloud.vision.v1p4beta1.ProductSet>( - this, METHODID_UPDATE_PRODUCT_SET))) - .addMethod( - getDeleteProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.DeleteProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PRODUCT_SET))) - .addMethod( - getCreateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.CreateProductRequest, - com.google.cloud.vision.v1p4beta1.Product>(this, METHODID_CREATE_PRODUCT))) - .addMethod( - getListProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.ListProductsRequest, - com.google.cloud.vision.v1p4beta1.ListProductsResponse>( - this, METHODID_LIST_PRODUCTS))) - .addMethod( - getGetProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.GetProductRequest, - com.google.cloud.vision.v1p4beta1.Product>(this, METHODID_GET_PRODUCT))) - .addMethod( - getUpdateProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.UpdateProductRequest, - com.google.cloud.vision.v1p4beta1.Product>(this, METHODID_UPDATE_PRODUCT))) - .addMethod( - getDeleteProductMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.DeleteProductRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_PRODUCT))) - .addMethod( - getCreateReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.CreateReferenceImageRequest, - com.google.cloud.vision.v1p4beta1.ReferenceImage>( - this, METHODID_CREATE_REFERENCE_IMAGE))) - .addMethod( - getDeleteReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_REFERENCE_IMAGE))) - .addMethod( - getListReferenceImagesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.ListReferenceImagesRequest, - com.google.cloud.vision.v1p4beta1.ListReferenceImagesResponse>( - this, METHODID_LIST_REFERENCE_IMAGES))) - .addMethod( - getGetReferenceImageMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.GetReferenceImageRequest, - com.google.cloud.vision.v1p4beta1.ReferenceImage>( - this, METHODID_GET_REFERENCE_IMAGE))) - .addMethod( - getAddProductToProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.AddProductToProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_ADD_PRODUCT_TO_PRODUCT_SET))) - .addMethod( - getRemoveProductFromProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest, - com.google.protobuf.Empty>(this, METHODID_REMOVE_PRODUCT_FROM_PRODUCT_SET))) - .addMethod( - getListProductsInProductSetMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest, - com.google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse>( - this, METHODID_LIST_PRODUCTS_IN_PRODUCT_SET))) - .addMethod( - getImportProductSetsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.ImportProductSetsRequest, - com.google.longrunning.Operation>(this, METHODID_IMPORT_PRODUCT_SETS))) - .addMethod( - getPurgeProductsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vision.v1p4beta1.PurgeProductsRequest, - com.google.longrunning.Operation>(this, METHODID_PURGE_PRODUCTS))) - .build(); + return ProductSearchGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ProductSearch. * *
    * Manages Products and ProductSets of reference images for use in product
@@ -1940,7 +1840,7 @@ public void purgeProducts(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ProductSearch.
    *
    * 
    * Manages Products and ProductSets of reference images for use in product
@@ -2317,7 +2217,7 @@ public com.google.longrunning.Operation purgeProducts(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ProductSearch.
    *
    * 
    * Manages Products and ProductSets of reference images for use in product
@@ -2734,10 +2634,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ProductSearchImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ProductSearchImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2872,6 +2772,134 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.CreateProductSetRequest,
+                    com.google.cloud.vision.v1p4beta1.ProductSet>(
+                    service, METHODID_CREATE_PRODUCT_SET)))
+        .addMethod(
+            getListProductSetsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.ListProductSetsRequest,
+                    com.google.cloud.vision.v1p4beta1.ListProductSetsResponse>(
+                    service, METHODID_LIST_PRODUCT_SETS)))
+        .addMethod(
+            getGetProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.GetProductSetRequest,
+                    com.google.cloud.vision.v1p4beta1.ProductSet>(
+                    service, METHODID_GET_PRODUCT_SET)))
+        .addMethod(
+            getUpdateProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.UpdateProductSetRequest,
+                    com.google.cloud.vision.v1p4beta1.ProductSet>(
+                    service, METHODID_UPDATE_PRODUCT_SET)))
+        .addMethod(
+            getDeleteProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.DeleteProductSetRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_PRODUCT_SET)))
+        .addMethod(
+            getCreateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.CreateProductRequest,
+                    com.google.cloud.vision.v1p4beta1.Product>(service, METHODID_CREATE_PRODUCT)))
+        .addMethod(
+            getListProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.ListProductsRequest,
+                    com.google.cloud.vision.v1p4beta1.ListProductsResponse>(
+                    service, METHODID_LIST_PRODUCTS)))
+        .addMethod(
+            getGetProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.GetProductRequest,
+                    com.google.cloud.vision.v1p4beta1.Product>(service, METHODID_GET_PRODUCT)))
+        .addMethod(
+            getUpdateProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.UpdateProductRequest,
+                    com.google.cloud.vision.v1p4beta1.Product>(service, METHODID_UPDATE_PRODUCT)))
+        .addMethod(
+            getDeleteProductMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.DeleteProductRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_PRODUCT)))
+        .addMethod(
+            getCreateReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.CreateReferenceImageRequest,
+                    com.google.cloud.vision.v1p4beta1.ReferenceImage>(
+                    service, METHODID_CREATE_REFERENCE_IMAGE)))
+        .addMethod(
+            getDeleteReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.DeleteReferenceImageRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_REFERENCE_IMAGE)))
+        .addMethod(
+            getListReferenceImagesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.ListReferenceImagesRequest,
+                    com.google.cloud.vision.v1p4beta1.ListReferenceImagesResponse>(
+                    service, METHODID_LIST_REFERENCE_IMAGES)))
+        .addMethod(
+            getGetReferenceImageMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.GetReferenceImageRequest,
+                    com.google.cloud.vision.v1p4beta1.ReferenceImage>(
+                    service, METHODID_GET_REFERENCE_IMAGE)))
+        .addMethod(
+            getAddProductToProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.AddProductToProductSetRequest,
+                    com.google.protobuf.Empty>(service, METHODID_ADD_PRODUCT_TO_PRODUCT_SET)))
+        .addMethod(
+            getRemoveProductFromProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.RemoveProductFromProductSetRequest,
+                    com.google.protobuf.Empty>(service, METHODID_REMOVE_PRODUCT_FROM_PRODUCT_SET)))
+        .addMethod(
+            getListProductsInProductSetMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.ListProductsInProductSetRequest,
+                    com.google.cloud.vision.v1p4beta1.ListProductsInProductSetResponse>(
+                    service, METHODID_LIST_PRODUCTS_IN_PRODUCT_SET)))
+        .addMethod(
+            getImportProductSetsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.ImportProductSetsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_IMPORT_PRODUCT_SETS)))
+        .addMethod(
+            getPurgeProductsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vision.v1p4beta1.PurgeProductsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_PURGE_PRODUCTS)))
+        .build();
+  }
+
   private abstract static class ProductSearchBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vmmigration/README.md b/java-vmmigration/README.md
index d965731fdb0d..d7c01e955719 100644
--- a/java-vmmigration/README.md
+++ b/java-vmmigration/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [VM Migration][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 VM Migration [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google VM Migration.
 [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-vmmigration.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-vmmigration&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vmmigration/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-vmmigration/grpc-google-cloud-vmmigration-v1/src/main/java/com/google/cloud/vmmigration/v1/VmMigrationGrpc.java b/java-vmmigration/grpc-google-cloud-vmmigration-v1/src/main/java/com/google/cloud/vmmigration/v1/VmMigrationGrpc.java
index 59332b73672e..5b61479e090c 100644
--- a/java-vmmigration/grpc-google-cloud-vmmigration-v1/src/main/java/com/google/cloud/vmmigration/v1/VmMigrationGrpc.java
+++ b/java-vmmigration/grpc-google-cloud-vmmigration-v1/src/main/java/com/google/cloud/vmmigration/v1/VmMigrationGrpc.java
@@ -2187,7 +2187,7 @@ public VmMigrationFutureStub newStub(
    * VM Migration Service
    * 
*/ - public abstract static class VmMigrationImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -2196,7 +2196,7 @@ public abstract static class VmMigrationImplBase implements io.grpc.BindableServ * Lists Sources in a given project and location. *
*/ - public void listSources( + default void listSources( com.google.cloud.vmmigration.v1.ListSourcesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2211,7 +2211,7 @@ public void listSources( * Gets details of a single Source. *
*/ - public void getSource( + default void getSource( com.google.cloud.vmmigration.v1.GetSourceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetSourceMethod(), responseObserver); @@ -2224,7 +2224,7 @@ public void getSource( * Creates a new Source in a given project and location. * */ - public void createSource( + default void createSource( com.google.cloud.vmmigration.v1.CreateSourceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2238,7 +2238,7 @@ public void createSource( * Updates the parameters of a single Source. * */ - public void updateSource( + default void updateSource( com.google.cloud.vmmigration.v1.UpdateSourceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2252,7 +2252,7 @@ public void updateSource( * Deletes a single Source. * */ - public void deleteSource( + default void deleteSource( com.google.cloud.vmmigration.v1.DeleteSourceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2270,7 +2270,7 @@ public void deleteSource( * opposed to listing the MigratingVms resources in the vmmigration service. * */ - public void fetchInventory( + default void fetchInventory( com.google.cloud.vmmigration.v1.FetchInventoryRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2285,7 +2285,7 @@ public void fetchInventory( * Lists Utilization Reports of the given Source. * */ - public void listUtilizationReports( + default void listUtilizationReports( com.google.cloud.vmmigration.v1.ListUtilizationReportsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2300,7 +2300,7 @@ public void listUtilizationReports( * Gets a single Utilization Report. * */ - public void getUtilizationReport( + default void getUtilizationReport( com.google.cloud.vmmigration.v1.GetUtilizationReportRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2315,7 +2315,7 @@ public void getUtilizationReport( * Creates a new UtilizationReport. * */ - public void createUtilizationReport( + default void createUtilizationReport( com.google.cloud.vmmigration.v1.CreateUtilizationReportRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2329,7 +2329,7 @@ public void createUtilizationReport( * Deletes a single Utilization Report. * */ - public void deleteUtilizationReport( + default void deleteUtilizationReport( com.google.cloud.vmmigration.v1.DeleteUtilizationReportRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2343,7 +2343,7 @@ public void deleteUtilizationReport( * Lists DatacenterConnectors in a given Source. * */ - public void listDatacenterConnectors( + default void listDatacenterConnectors( com.google.cloud.vmmigration.v1.ListDatacenterConnectorsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.vmmigration.v1.ListDatacenterConnectorsResponse> @@ -2359,7 +2359,7 @@ public void listDatacenterConnectors( * Gets details of a single DatacenterConnector. * */ - public void getDatacenterConnector( + default void getDatacenterConnector( com.google.cloud.vmmigration.v1.GetDatacenterConnectorRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2374,7 +2374,7 @@ public void getDatacenterConnector( * Creates a new DatacenterConnector in a given Source. * */ - public void createDatacenterConnector( + default void createDatacenterConnector( com.google.cloud.vmmigration.v1.CreateDatacenterConnectorRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2388,7 +2388,7 @@ public void createDatacenterConnector( * Deletes a single DatacenterConnector. * */ - public void deleteDatacenterConnector( + default void deleteDatacenterConnector( com.google.cloud.vmmigration.v1.DeleteDatacenterConnectorRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2403,7 +2403,7 @@ public void deleteDatacenterConnector( * updateable version. * */ - public void upgradeAppliance( + default void upgradeAppliance( com.google.cloud.vmmigration.v1.UpgradeApplianceRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2417,7 +2417,7 @@ public void upgradeAppliance( * Creates a new MigratingVm in a given Source. * */ - public void createMigratingVm( + default void createMigratingVm( com.google.cloud.vmmigration.v1.CreateMigratingVmRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2431,7 +2431,7 @@ public void createMigratingVm( * Lists MigratingVms in a given Source. * */ - public void listMigratingVms( + default void listMigratingVms( com.google.cloud.vmmigration.v1.ListMigratingVmsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2446,7 +2446,7 @@ public void listMigratingVms( * Gets details of a single MigratingVm. * */ - public void getMigratingVm( + default void getMigratingVm( com.google.cloud.vmmigration.v1.GetMigratingVmRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2460,7 +2460,7 @@ public void getMigratingVm( * Updates the parameters of a single MigratingVm. * */ - public void updateMigratingVm( + default void updateMigratingVm( com.google.cloud.vmmigration.v1.UpdateMigratingVmRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2474,7 +2474,7 @@ public void updateMigratingVm( * Deletes a single MigratingVm. * */ - public void deleteMigratingVm( + default void deleteMigratingVm( com.google.cloud.vmmigration.v1.DeleteMigratingVmRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2489,7 +2489,7 @@ public void deleteMigratingVm( * data and creating snapshots, in replication cycles scheduled by the policy. * */ - public void startMigration( + default void startMigration( com.google.cloud.vmmigration.v1.StartMigrationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2506,7 +2506,7 @@ public void startMigration( * start the process of uploading data and creating snapshots. * */ - public void resumeMigration( + default void resumeMigration( com.google.cloud.vmmigration.v1.ResumeMigrationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2522,7 +2522,7 @@ public void resumeMigration( * be triggered while the VM is paused. * */ - public void pauseMigration( + default void pauseMigration( com.google.cloud.vmmigration.v1.PauseMigrationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2537,7 +2537,7 @@ public void pauseMigration( * longer being used. Only applicable after cutover is done. * */ - public void finalizeMigration( + default void finalizeMigration( com.google.cloud.vmmigration.v1.FinalizeMigrationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2551,7 +2551,7 @@ public void finalizeMigration( * Initiates a Clone of a specific migrating VM. * */ - public void createCloneJob( + default void createCloneJob( com.google.cloud.vmmigration.v1.CreateCloneJobRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2565,7 +2565,7 @@ public void createCloneJob( * Initiates the cancellation of a running clone job. * */ - public void cancelCloneJob( + default void cancelCloneJob( com.google.cloud.vmmigration.v1.CancelCloneJobRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2579,7 +2579,7 @@ public void cancelCloneJob( * Lists CloneJobs of a given migrating VM. * */ - public void listCloneJobs( + default void listCloneJobs( com.google.cloud.vmmigration.v1.ListCloneJobsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2594,7 +2594,7 @@ public void listCloneJobs( * Gets details of a single CloneJob. * */ - public void getCloneJob( + default void getCloneJob( com.google.cloud.vmmigration.v1.GetCloneJobRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2610,7 +2610,7 @@ public void getCloneJob( * and the job is initiated. * */ - public void createCutoverJob( + default void createCutoverJob( com.google.cloud.vmmigration.v1.CreateCutoverJobRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2624,7 +2624,7 @@ public void createCutoverJob( * Initiates the cancellation of a running cutover job. * */ - public void cancelCutoverJob( + default void cancelCutoverJob( com.google.cloud.vmmigration.v1.CancelCutoverJobRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2638,7 +2638,7 @@ public void cancelCutoverJob( * Lists CutoverJobs of a given migrating VM. * */ - public void listCutoverJobs( + default void listCutoverJobs( com.google.cloud.vmmigration.v1.ListCutoverJobsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2653,7 +2653,7 @@ public void listCutoverJobs( * Gets details of a single CutoverJob. * */ - public void getCutoverJob( + default void getCutoverJob( com.google.cloud.vmmigration.v1.GetCutoverJobRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2667,7 +2667,7 @@ public void getCutoverJob( * Lists Groups in a given project and location. * */ - public void listGroups( + default void listGroups( com.google.cloud.vmmigration.v1.ListGroupsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2681,7 +2681,7 @@ public void listGroups( * Gets details of a single Group. * */ - public void getGroup( + default void getGroup( com.google.cloud.vmmigration.v1.GetGroupRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetGroupMethod(), responseObserver); @@ -2694,7 +2694,7 @@ public void getGroup( * Creates a new Group in a given project and location. * */ - public void createGroup( + default void createGroup( com.google.cloud.vmmigration.v1.CreateGroupRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2708,7 +2708,7 @@ public void createGroup( * Updates the parameters of a single Group. * */ - public void updateGroup( + default void updateGroup( com.google.cloud.vmmigration.v1.UpdateGroupRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2722,7 +2722,7 @@ public void updateGroup( * Deletes a single Group. * */ - public void deleteGroup( + default void deleteGroup( com.google.cloud.vmmigration.v1.DeleteGroupRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2736,7 +2736,7 @@ public void deleteGroup( * Adds a MigratingVm to a Group. * */ - public void addGroupMigration( + default void addGroupMigration( com.google.cloud.vmmigration.v1.AddGroupMigrationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2750,7 +2750,7 @@ public void addGroupMigration( * Removes a MigratingVm from a Group. * */ - public void removeGroupMigration( + default void removeGroupMigration( com.google.cloud.vmmigration.v1.RemoveGroupMigrationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2766,7 +2766,7 @@ public void removeGroupMigration( * for location is `global`. * */ - public void listTargetProjects( + default void listTargetProjects( com.google.cloud.vmmigration.v1.ListTargetProjectsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2783,7 +2783,7 @@ public void listTargetProjects( * for location is `global`. * */ - public void getTargetProject( + default void getTargetProject( com.google.cloud.vmmigration.v1.GetTargetProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2800,7 +2800,7 @@ public void getTargetProject( * for location is `global`. * */ - public void createTargetProject( + default void createTargetProject( com.google.cloud.vmmigration.v1.CreateTargetProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2816,7 +2816,7 @@ public void createTargetProject( * for location is `global`. * */ - public void updateTargetProject( + default void updateTargetProject( com.google.cloud.vmmigration.v1.UpdateTargetProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2832,7 +2832,7 @@ public void updateTargetProject( * for location is `global`. * */ - public void deleteTargetProject( + default void deleteTargetProject( com.google.cloud.vmmigration.v1.DeleteTargetProjectRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2846,7 +2846,7 @@ public void deleteTargetProject( * Lists ReplicationCycles in a given MigratingVM. * */ - public void listReplicationCycles( + default void listReplicationCycles( com.google.cloud.vmmigration.v1.ListReplicationCyclesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2861,316 +2861,33 @@ public void listReplicationCycles( * Gets details of a single ReplicationCycle. * */ - public void getReplicationCycle( + default void getReplicationCycle( com.google.cloud.vmmigration.v1.GetReplicationCycleRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getGetReplicationCycleMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service VmMigration. + * + *
+   * VM Migration Service
+   * 
+ */ + public abstract static class VmMigrationImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListSourcesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListSourcesRequest, - com.google.cloud.vmmigration.v1.ListSourcesResponse>( - this, METHODID_LIST_SOURCES))) - .addMethod( - getGetSourceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetSourceRequest, - com.google.cloud.vmmigration.v1.Source>(this, METHODID_GET_SOURCE))) - .addMethod( - getCreateSourceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CreateSourceRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_SOURCE))) - .addMethod( - getUpdateSourceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.UpdateSourceRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_SOURCE))) - .addMethod( - getDeleteSourceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.DeleteSourceRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_SOURCE))) - .addMethod( - getFetchInventoryMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.FetchInventoryRequest, - com.google.cloud.vmmigration.v1.FetchInventoryResponse>( - this, METHODID_FETCH_INVENTORY))) - .addMethod( - getListUtilizationReportsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListUtilizationReportsRequest, - com.google.cloud.vmmigration.v1.ListUtilizationReportsResponse>( - this, METHODID_LIST_UTILIZATION_REPORTS))) - .addMethod( - getGetUtilizationReportMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetUtilizationReportRequest, - com.google.cloud.vmmigration.v1.UtilizationReport>( - this, METHODID_GET_UTILIZATION_REPORT))) - .addMethod( - getCreateUtilizationReportMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CreateUtilizationReportRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_UTILIZATION_REPORT))) - .addMethod( - getDeleteUtilizationReportMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.DeleteUtilizationReportRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_UTILIZATION_REPORT))) - .addMethod( - getListDatacenterConnectorsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListDatacenterConnectorsRequest, - com.google.cloud.vmmigration.v1.ListDatacenterConnectorsResponse>( - this, METHODID_LIST_DATACENTER_CONNECTORS))) - .addMethod( - getGetDatacenterConnectorMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetDatacenterConnectorRequest, - com.google.cloud.vmmigration.v1.DatacenterConnector>( - this, METHODID_GET_DATACENTER_CONNECTOR))) - .addMethod( - getCreateDatacenterConnectorMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CreateDatacenterConnectorRequest, - com.google.longrunning.Operation>( - this, METHODID_CREATE_DATACENTER_CONNECTOR))) - .addMethod( - getDeleteDatacenterConnectorMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.DeleteDatacenterConnectorRequest, - com.google.longrunning.Operation>( - this, METHODID_DELETE_DATACENTER_CONNECTOR))) - .addMethod( - getUpgradeApplianceMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.UpgradeApplianceRequest, - com.google.longrunning.Operation>(this, METHODID_UPGRADE_APPLIANCE))) - .addMethod( - getCreateMigratingVmMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CreateMigratingVmRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_MIGRATING_VM))) - .addMethod( - getListMigratingVmsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListMigratingVmsRequest, - com.google.cloud.vmmigration.v1.ListMigratingVmsResponse>( - this, METHODID_LIST_MIGRATING_VMS))) - .addMethod( - getGetMigratingVmMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetMigratingVmRequest, - com.google.cloud.vmmigration.v1.MigratingVm>( - this, METHODID_GET_MIGRATING_VM))) - .addMethod( - getUpdateMigratingVmMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.UpdateMigratingVmRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_MIGRATING_VM))) - .addMethod( - getDeleteMigratingVmMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.DeleteMigratingVmRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_MIGRATING_VM))) - .addMethod( - getStartMigrationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.StartMigrationRequest, - com.google.longrunning.Operation>(this, METHODID_START_MIGRATION))) - .addMethod( - getResumeMigrationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ResumeMigrationRequest, - com.google.longrunning.Operation>(this, METHODID_RESUME_MIGRATION))) - .addMethod( - getPauseMigrationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.PauseMigrationRequest, - com.google.longrunning.Operation>(this, METHODID_PAUSE_MIGRATION))) - .addMethod( - getFinalizeMigrationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.FinalizeMigrationRequest, - com.google.longrunning.Operation>(this, METHODID_FINALIZE_MIGRATION))) - .addMethod( - getCreateCloneJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CreateCloneJobRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_CLONE_JOB))) - .addMethod( - getCancelCloneJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CancelCloneJobRequest, - com.google.longrunning.Operation>(this, METHODID_CANCEL_CLONE_JOB))) - .addMethod( - getListCloneJobsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListCloneJobsRequest, - com.google.cloud.vmmigration.v1.ListCloneJobsResponse>( - this, METHODID_LIST_CLONE_JOBS))) - .addMethod( - getGetCloneJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetCloneJobRequest, - com.google.cloud.vmmigration.v1.CloneJob>(this, METHODID_GET_CLONE_JOB))) - .addMethod( - getCreateCutoverJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CreateCutoverJobRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_CUTOVER_JOB))) - .addMethod( - getCancelCutoverJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CancelCutoverJobRequest, - com.google.longrunning.Operation>(this, METHODID_CANCEL_CUTOVER_JOB))) - .addMethod( - getListCutoverJobsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListCutoverJobsRequest, - com.google.cloud.vmmigration.v1.ListCutoverJobsResponse>( - this, METHODID_LIST_CUTOVER_JOBS))) - .addMethod( - getGetCutoverJobMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetCutoverJobRequest, - com.google.cloud.vmmigration.v1.CutoverJob>(this, METHODID_GET_CUTOVER_JOB))) - .addMethod( - getListGroupsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListGroupsRequest, - com.google.cloud.vmmigration.v1.ListGroupsResponse>( - this, METHODID_LIST_GROUPS))) - .addMethod( - getGetGroupMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetGroupRequest, - com.google.cloud.vmmigration.v1.Group>(this, METHODID_GET_GROUP))) - .addMethod( - getCreateGroupMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CreateGroupRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_GROUP))) - .addMethod( - getUpdateGroupMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.UpdateGroupRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_GROUP))) - .addMethod( - getDeleteGroupMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.DeleteGroupRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_GROUP))) - .addMethod( - getAddGroupMigrationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.AddGroupMigrationRequest, - com.google.longrunning.Operation>(this, METHODID_ADD_GROUP_MIGRATION))) - .addMethod( - getRemoveGroupMigrationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.RemoveGroupMigrationRequest, - com.google.longrunning.Operation>(this, METHODID_REMOVE_GROUP_MIGRATION))) - .addMethod( - getListTargetProjectsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListTargetProjectsRequest, - com.google.cloud.vmmigration.v1.ListTargetProjectsResponse>( - this, METHODID_LIST_TARGET_PROJECTS))) - .addMethod( - getGetTargetProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetTargetProjectRequest, - com.google.cloud.vmmigration.v1.TargetProject>( - this, METHODID_GET_TARGET_PROJECT))) - .addMethod( - getCreateTargetProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.CreateTargetProjectRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_TARGET_PROJECT))) - .addMethod( - getUpdateTargetProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.UpdateTargetProjectRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_TARGET_PROJECT))) - .addMethod( - getDeleteTargetProjectMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.DeleteTargetProjectRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_TARGET_PROJECT))) - .addMethod( - getListReplicationCyclesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.ListReplicationCyclesRequest, - com.google.cloud.vmmigration.v1.ListReplicationCyclesResponse>( - this, METHODID_LIST_REPLICATION_CYCLES))) - .addMethod( - getGetReplicationCycleMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmmigration.v1.GetReplicationCycleRequest, - com.google.cloud.vmmigration.v1.ReplicationCycle>( - this, METHODID_GET_REPLICATION_CYCLE))) - .build(); + return VmMigrationGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service VmMigration. * *
    * VM Migration Service
@@ -3958,7 +3675,7 @@ public void getReplicationCycle(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service VmMigration.
    *
    * 
    * VM Migration Service
@@ -4601,7 +4318,7 @@ public com.google.cloud.vmmigration.v1.ReplicationCycle getReplicationCycle(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service VmMigration.
    *
    * 
    * VM Migration Service
@@ -5320,10 +5037,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final VmMigrationImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(VmMigrationImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -5602,6 +5319,304 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListSourcesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListSourcesRequest,
+                    com.google.cloud.vmmigration.v1.ListSourcesResponse>(
+                    service, METHODID_LIST_SOURCES)))
+        .addMethod(
+            getGetSourceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetSourceRequest,
+                    com.google.cloud.vmmigration.v1.Source>(service, METHODID_GET_SOURCE)))
+        .addMethod(
+            getCreateSourceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CreateSourceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_SOURCE)))
+        .addMethod(
+            getUpdateSourceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.UpdateSourceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_SOURCE)))
+        .addMethod(
+            getDeleteSourceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.DeleteSourceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_SOURCE)))
+        .addMethod(
+            getFetchInventoryMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.FetchInventoryRequest,
+                    com.google.cloud.vmmigration.v1.FetchInventoryResponse>(
+                    service, METHODID_FETCH_INVENTORY)))
+        .addMethod(
+            getListUtilizationReportsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListUtilizationReportsRequest,
+                    com.google.cloud.vmmigration.v1.ListUtilizationReportsResponse>(
+                    service, METHODID_LIST_UTILIZATION_REPORTS)))
+        .addMethod(
+            getGetUtilizationReportMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetUtilizationReportRequest,
+                    com.google.cloud.vmmigration.v1.UtilizationReport>(
+                    service, METHODID_GET_UTILIZATION_REPORT)))
+        .addMethod(
+            getCreateUtilizationReportMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CreateUtilizationReportRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_UTILIZATION_REPORT)))
+        .addMethod(
+            getDeleteUtilizationReportMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.DeleteUtilizationReportRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_UTILIZATION_REPORT)))
+        .addMethod(
+            getListDatacenterConnectorsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListDatacenterConnectorsRequest,
+                    com.google.cloud.vmmigration.v1.ListDatacenterConnectorsResponse>(
+                    service, METHODID_LIST_DATACENTER_CONNECTORS)))
+        .addMethod(
+            getGetDatacenterConnectorMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetDatacenterConnectorRequest,
+                    com.google.cloud.vmmigration.v1.DatacenterConnector>(
+                    service, METHODID_GET_DATACENTER_CONNECTOR)))
+        .addMethod(
+            getCreateDatacenterConnectorMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CreateDatacenterConnectorRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_CREATE_DATACENTER_CONNECTOR)))
+        .addMethod(
+            getDeleteDatacenterConnectorMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.DeleteDatacenterConnectorRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_DELETE_DATACENTER_CONNECTOR)))
+        .addMethod(
+            getUpgradeApplianceMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.UpgradeApplianceRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPGRADE_APPLIANCE)))
+        .addMethod(
+            getCreateMigratingVmMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CreateMigratingVmRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_MIGRATING_VM)))
+        .addMethod(
+            getListMigratingVmsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListMigratingVmsRequest,
+                    com.google.cloud.vmmigration.v1.ListMigratingVmsResponse>(
+                    service, METHODID_LIST_MIGRATING_VMS)))
+        .addMethod(
+            getGetMigratingVmMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetMigratingVmRequest,
+                    com.google.cloud.vmmigration.v1.MigratingVm>(
+                    service, METHODID_GET_MIGRATING_VM)))
+        .addMethod(
+            getUpdateMigratingVmMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.UpdateMigratingVmRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_MIGRATING_VM)))
+        .addMethod(
+            getDeleteMigratingVmMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.DeleteMigratingVmRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_MIGRATING_VM)))
+        .addMethod(
+            getStartMigrationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.StartMigrationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_START_MIGRATION)))
+        .addMethod(
+            getResumeMigrationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ResumeMigrationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESUME_MIGRATION)))
+        .addMethod(
+            getPauseMigrationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.PauseMigrationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_PAUSE_MIGRATION)))
+        .addMethod(
+            getFinalizeMigrationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.FinalizeMigrationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_FINALIZE_MIGRATION)))
+        .addMethod(
+            getCreateCloneJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CreateCloneJobRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_CLONE_JOB)))
+        .addMethod(
+            getCancelCloneJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CancelCloneJobRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CANCEL_CLONE_JOB)))
+        .addMethod(
+            getListCloneJobsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListCloneJobsRequest,
+                    com.google.cloud.vmmigration.v1.ListCloneJobsResponse>(
+                    service, METHODID_LIST_CLONE_JOBS)))
+        .addMethod(
+            getGetCloneJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetCloneJobRequest,
+                    com.google.cloud.vmmigration.v1.CloneJob>(service, METHODID_GET_CLONE_JOB)))
+        .addMethod(
+            getCreateCutoverJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CreateCutoverJobRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_CUTOVER_JOB)))
+        .addMethod(
+            getCancelCutoverJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CancelCutoverJobRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CANCEL_CUTOVER_JOB)))
+        .addMethod(
+            getListCutoverJobsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListCutoverJobsRequest,
+                    com.google.cloud.vmmigration.v1.ListCutoverJobsResponse>(
+                    service, METHODID_LIST_CUTOVER_JOBS)))
+        .addMethod(
+            getGetCutoverJobMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetCutoverJobRequest,
+                    com.google.cloud.vmmigration.v1.CutoverJob>(service, METHODID_GET_CUTOVER_JOB)))
+        .addMethod(
+            getListGroupsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListGroupsRequest,
+                    com.google.cloud.vmmigration.v1.ListGroupsResponse>(
+                    service, METHODID_LIST_GROUPS)))
+        .addMethod(
+            getGetGroupMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetGroupRequest,
+                    com.google.cloud.vmmigration.v1.Group>(service, METHODID_GET_GROUP)))
+        .addMethod(
+            getCreateGroupMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CreateGroupRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_GROUP)))
+        .addMethod(
+            getUpdateGroupMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.UpdateGroupRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_GROUP)))
+        .addMethod(
+            getDeleteGroupMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.DeleteGroupRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_GROUP)))
+        .addMethod(
+            getAddGroupMigrationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.AddGroupMigrationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_ADD_GROUP_MIGRATION)))
+        .addMethod(
+            getRemoveGroupMigrationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.RemoveGroupMigrationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_REMOVE_GROUP_MIGRATION)))
+        .addMethod(
+            getListTargetProjectsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListTargetProjectsRequest,
+                    com.google.cloud.vmmigration.v1.ListTargetProjectsResponse>(
+                    service, METHODID_LIST_TARGET_PROJECTS)))
+        .addMethod(
+            getGetTargetProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetTargetProjectRequest,
+                    com.google.cloud.vmmigration.v1.TargetProject>(
+                    service, METHODID_GET_TARGET_PROJECT)))
+        .addMethod(
+            getCreateTargetProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.CreateTargetProjectRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_TARGET_PROJECT)))
+        .addMethod(
+            getUpdateTargetProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.UpdateTargetProjectRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_TARGET_PROJECT)))
+        .addMethod(
+            getDeleteTargetProjectMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.DeleteTargetProjectRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_TARGET_PROJECT)))
+        .addMethod(
+            getListReplicationCyclesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.ListReplicationCyclesRequest,
+                    com.google.cloud.vmmigration.v1.ListReplicationCyclesResponse>(
+                    service, METHODID_LIST_REPLICATION_CYCLES)))
+        .addMethod(
+            getGetReplicationCycleMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmmigration.v1.GetReplicationCycleRequest,
+                    com.google.cloud.vmmigration.v1.ReplicationCycle>(
+                    service, METHODID_GET_REPLICATION_CYCLE)))
+        .build();
+  }
+
   private abstract static class VmMigrationBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vmwareengine/README.md b/java-vmwareengine/README.md
index 228f75b0e2e3..cf7b6ef79a20 100644
--- a/java-vmwareengine/README.md
+++ b/java-vmwareengine/README.md
@@ -16,9 +16,9 @@ Java idiomatic client for [Google Cloud VMware Engine][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 Google Cloud VMware Engine [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Google Cloud VMware Engine.
 [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/java-vmwareengine/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-vmwareengine.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-vmwareengine&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vmwareengine/0.7.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/java-vmwareengine/blob/main/CONTRIBUTING.md
 [code-of-conduct]: https://github.com/googleapis/java-vmwareengine/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
diff --git a/java-vmwareengine/grpc-google-cloud-vmwareengine-v1/src/main/java/com/google/cloud/vmwareengine/v1/VmwareEngineGrpc.java b/java-vmwareengine/grpc-google-cloud-vmwareengine-v1/src/main/java/com/google/cloud/vmwareengine/v1/VmwareEngineGrpc.java
index 37512dd2f13b..5df4976f3b0d 100644
--- a/java-vmwareengine/grpc-google-cloud-vmwareengine-v1/src/main/java/com/google/cloud/vmwareengine/v1/VmwareEngineGrpc.java
+++ b/java-vmwareengine/grpc-google-cloud-vmwareengine-v1/src/main/java/com/google/cloud/vmwareengine/v1/VmwareEngineGrpc.java
@@ -1549,7 +1549,7 @@ public VmwareEngineFutureStub newStub(
    * VMwareEngine manages VMware's private clusters in the Cloud.
    * 
*/ - public abstract static class VmwareEngineImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -1558,7 +1558,7 @@ public abstract static class VmwareEngineImplBase implements io.grpc.BindableSer * Lists `PrivateCloud` resources in a given project and location. *
*/ - public void listPrivateClouds( + default void listPrivateClouds( com.google.cloud.vmwareengine.v1.ListPrivateCloudsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1573,7 +1573,7 @@ public void listPrivateClouds( * Retrieves a `PrivateCloud` resource by its resource name. *
*/ - public void getPrivateCloud( + default void getPrivateCloud( com.google.cloud.vmwareengine.v1.GetPrivateCloudRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1593,7 +1593,7 @@ public void getPrivateCloud( * for that private cloud. * */ - public void createPrivateCloud( + default void createPrivateCloud( com.google.cloud.vmwareengine.v1.CreatePrivateCloudRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1613,7 +1613,7 @@ public void createPrivateCloud( * processing fully completes. * */ - public void updatePrivateCloud( + default void updatePrivateCloud( com.google.cloud.vmwareengine.v1.UpdatePrivateCloudRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1640,7 +1640,7 @@ public void updatePrivateCloud( * when it is completely purged. * */ - public void deletePrivateCloud( + default void deletePrivateCloud( com.google.cloud.vmwareengine.v1.DeletePrivateCloudRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1657,7 +1657,7 @@ public void deletePrivateCloud( * the time when deletion can no longer be reversed. * */ - public void undeletePrivateCloud( + default void undeletePrivateCloud( com.google.cloud.vmwareengine.v1.UndeletePrivateCloudRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1671,7 +1671,7 @@ public void undeletePrivateCloud( * Lists `Cluster` resources in a given private cloud. * */ - public void listClusters( + default void listClusters( com.google.cloud.vmwareengine.v1.ListClustersRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1686,7 +1686,7 @@ public void listClusters( * Retrieves a `Cluster` resource by its resource name. * */ - public void getCluster( + default void getCluster( com.google.cloud.vmwareengine.v1.GetClusterRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetClusterMethod(), responseObserver); @@ -1702,7 +1702,7 @@ public void getCluster( * quota](https://cloud.google.com/vmware-engine/quotas). * */ - public void createCluster( + default void createCluster( com.google.cloud.vmwareengine.v1.CreateClusterRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1722,7 +1722,7 @@ public void createCluster( * processing fully completes. * */ - public void updateCluster( + default void updateCluster( com.google.cloud.vmwareengine.v1.UpdateClusterRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1739,7 +1739,7 @@ public void updateCluster( * method. * */ - public void deleteCluster( + default void deleteCluster( com.google.cloud.vmwareengine.v1.DeleteClusterRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1753,7 +1753,7 @@ public void deleteCluster( * Lists subnets in a given private cloud. * */ - public void listSubnets( + default void listSubnets( com.google.cloud.vmwareengine.v1.ListSubnetsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1768,7 +1768,7 @@ public void listSubnets( * Lists node types * */ - public void listNodeTypes( + default void listNodeTypes( com.google.cloud.vmwareengine.v1.ListNodeTypesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1783,7 +1783,7 @@ public void listNodeTypes( * Gets details of a single `NodeType`. * */ - public void getNodeType( + default void getNodeType( com.google.cloud.vmwareengine.v1.GetNodeTypeRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1797,7 +1797,7 @@ public void getNodeType( * Gets details of credentials for NSX appliance. * */ - public void showNsxCredentials( + default void showNsxCredentials( com.google.cloud.vmwareengine.v1.ShowNsxCredentialsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1812,7 +1812,7 @@ public void showNsxCredentials( * Gets details of credentials for Vcenter appliance. * */ - public void showVcenterCredentials( + default void showVcenterCredentials( com.google.cloud.vmwareengine.v1.ShowVcenterCredentialsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1827,7 +1827,7 @@ public void showVcenterCredentials( * Resets credentials of the NSX appliance. * */ - public void resetNsxCredentials( + default void resetNsxCredentials( com.google.cloud.vmwareengine.v1.ResetNsxCredentialsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1841,7 +1841,7 @@ public void resetNsxCredentials( * Resets credentials of the Vcenter appliance. * */ - public void resetVcenterCredentials( + default void resetVcenterCredentials( com.google.cloud.vmwareengine.v1.ResetVcenterCredentialsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1855,7 +1855,7 @@ public void resetVcenterCredentials( * Creates a new HCX activation key in a given private cloud. * */ - public void createHcxActivationKey( + default void createHcxActivationKey( com.google.cloud.vmwareengine.v1.CreateHcxActivationKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1869,7 +1869,7 @@ public void createHcxActivationKey( * Lists `HcxActivationKey` resources in a given private cloud. * */ - public void listHcxActivationKeys( + default void listHcxActivationKeys( com.google.cloud.vmwareengine.v1.ListHcxActivationKeysRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1884,7 +1884,7 @@ public void listHcxActivationKeys( * Retrieves a `HcxActivationKey` resource by its resource name. * */ - public void getHcxActivationKey( + default void getHcxActivationKey( com.google.cloud.vmwareengine.v1.GetHcxActivationKeyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1899,7 +1899,7 @@ public void getHcxActivationKey( * Retrieves a `NetworkPolicy` resource by its resource name. * */ - public void getNetworkPolicy( + default void getNetworkPolicy( com.google.cloud.vmwareengine.v1.GetNetworkPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1914,7 +1914,7 @@ public void getNetworkPolicy( * Lists `NetworkPolicy` resources in a specified project and location. * */ - public void listNetworkPolicies( + default void listNetworkPolicies( com.google.cloud.vmwareengine.v1.ListNetworkPoliciesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1931,7 +1931,7 @@ public void listNetworkPolicies( * another network policy already exists in the same scope. * */ - public void createNetworkPolicy( + default void createNetworkPolicy( com.google.cloud.vmwareengine.v1.CreateNetworkPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1955,7 +1955,7 @@ public void createNetworkPolicy( * processing fully completes. * */ - public void updateNetworkPolicy( + default void updateNetworkPolicy( com.google.cloud.vmwareengine.v1.UpdateNetworkPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1971,7 +1971,7 @@ public void updateNetworkPolicy( * IP or internet access service. * */ - public void deleteNetworkPolicy( + default void deleteNetworkPolicy( com.google.cloud.vmwareengine.v1.DeleteNetworkPolicyRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1985,7 +1985,7 @@ public void deleteNetworkPolicy( * Creates a new VMware Engine network that can be used by a private cloud. * */ - public void createVmwareEngineNetwork( + default void createVmwareEngineNetwork( com.google.cloud.vmwareengine.v1.CreateVmwareEngineNetworkRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2001,7 +2001,7 @@ public void createVmwareEngineNetwork( * applied. * */ - public void updateVmwareEngineNetwork( + default void updateVmwareEngineNetwork( com.google.cloud.vmwareengine.v1.UpdateVmwareEngineNetworkRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2018,7 +2018,7 @@ public void updateVmwareEngineNetwork( * refer to the same VMware Engine network. * */ - public void deleteVmwareEngineNetwork( + default void deleteVmwareEngineNetwork( com.google.cloud.vmwareengine.v1.DeleteVmwareEngineNetworkRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -2035,7 +2035,7 @@ public void deleteVmwareEngineNetwork( * (for example, `CREATING`, `ACTIVE`, `DELETING`). * */ - public void getVmwareEngineNetwork( + default void getVmwareEngineNetwork( com.google.cloud.vmwareengine.v1.GetVmwareEngineNetworkRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -2050,7 +2050,7 @@ public void getVmwareEngineNetwork( * Lists `VmwareEngineNetwork` resources in a given project and location. * */ - public void listVmwareEngineNetworks( + default void listVmwareEngineNetworks( com.google.cloud.vmwareengine.v1.ListVmwareEngineNetworksRequest request, io.grpc.stub.StreamObserver< com.google.cloud.vmwareengine.v1.ListVmwareEngineNetworksResponse> @@ -2058,218 +2058,26 @@ public void listVmwareEngineNetworks( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListVmwareEngineNetworksMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service VmwareEngine. + * + *
+   * VMwareEngine manages VMware's private clusters in the Cloud.
+   * 
+ */ + public abstract static class VmwareEngineImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListPrivateCloudsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ListPrivateCloudsRequest, - com.google.cloud.vmwareengine.v1.ListPrivateCloudsResponse>( - this, METHODID_LIST_PRIVATE_CLOUDS))) - .addMethod( - getGetPrivateCloudMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.GetPrivateCloudRequest, - com.google.cloud.vmwareengine.v1.PrivateCloud>( - this, METHODID_GET_PRIVATE_CLOUD))) - .addMethod( - getCreatePrivateCloudMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.CreatePrivateCloudRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_PRIVATE_CLOUD))) - .addMethod( - getUpdatePrivateCloudMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.UpdatePrivateCloudRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_PRIVATE_CLOUD))) - .addMethod( - getDeletePrivateCloudMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.DeletePrivateCloudRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_PRIVATE_CLOUD))) - .addMethod( - getUndeletePrivateCloudMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.UndeletePrivateCloudRequest, - com.google.longrunning.Operation>(this, METHODID_UNDELETE_PRIVATE_CLOUD))) - .addMethod( - getListClustersMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ListClustersRequest, - com.google.cloud.vmwareengine.v1.ListClustersResponse>( - this, METHODID_LIST_CLUSTERS))) - .addMethod( - getGetClusterMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.GetClusterRequest, - com.google.cloud.vmwareengine.v1.Cluster>(this, METHODID_GET_CLUSTER))) - .addMethod( - getCreateClusterMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.CreateClusterRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_CLUSTER))) - .addMethod( - getUpdateClusterMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.UpdateClusterRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_CLUSTER))) - .addMethod( - getDeleteClusterMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.DeleteClusterRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_CLUSTER))) - .addMethod( - getListSubnetsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ListSubnetsRequest, - com.google.cloud.vmwareengine.v1.ListSubnetsResponse>( - this, METHODID_LIST_SUBNETS))) - .addMethod( - getListNodeTypesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ListNodeTypesRequest, - com.google.cloud.vmwareengine.v1.ListNodeTypesResponse>( - this, METHODID_LIST_NODE_TYPES))) - .addMethod( - getGetNodeTypeMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.GetNodeTypeRequest, - com.google.cloud.vmwareengine.v1.NodeType>(this, METHODID_GET_NODE_TYPE))) - .addMethod( - getShowNsxCredentialsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ShowNsxCredentialsRequest, - com.google.cloud.vmwareengine.v1.Credentials>( - this, METHODID_SHOW_NSX_CREDENTIALS))) - .addMethod( - getShowVcenterCredentialsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ShowVcenterCredentialsRequest, - com.google.cloud.vmwareengine.v1.Credentials>( - this, METHODID_SHOW_VCENTER_CREDENTIALS))) - .addMethod( - getResetNsxCredentialsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ResetNsxCredentialsRequest, - com.google.longrunning.Operation>(this, METHODID_RESET_NSX_CREDENTIALS))) - .addMethod( - getResetVcenterCredentialsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ResetVcenterCredentialsRequest, - com.google.longrunning.Operation>(this, METHODID_RESET_VCENTER_CREDENTIALS))) - .addMethod( - getCreateHcxActivationKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.CreateHcxActivationKeyRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_HCX_ACTIVATION_KEY))) - .addMethod( - getListHcxActivationKeysMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ListHcxActivationKeysRequest, - com.google.cloud.vmwareengine.v1.ListHcxActivationKeysResponse>( - this, METHODID_LIST_HCX_ACTIVATION_KEYS))) - .addMethod( - getGetHcxActivationKeyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.GetHcxActivationKeyRequest, - com.google.cloud.vmwareengine.v1.HcxActivationKey>( - this, METHODID_GET_HCX_ACTIVATION_KEY))) - .addMethod( - getGetNetworkPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.GetNetworkPolicyRequest, - com.google.cloud.vmwareengine.v1.NetworkPolicy>( - this, METHODID_GET_NETWORK_POLICY))) - .addMethod( - getListNetworkPoliciesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ListNetworkPoliciesRequest, - com.google.cloud.vmwareengine.v1.ListNetworkPoliciesResponse>( - this, METHODID_LIST_NETWORK_POLICIES))) - .addMethod( - getCreateNetworkPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.CreateNetworkPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_NETWORK_POLICY))) - .addMethod( - getUpdateNetworkPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.UpdateNetworkPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_NETWORK_POLICY))) - .addMethod( - getDeleteNetworkPolicyMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.DeleteNetworkPolicyRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_NETWORK_POLICY))) - .addMethod( - getCreateVmwareEngineNetworkMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.CreateVmwareEngineNetworkRequest, - com.google.longrunning.Operation>( - this, METHODID_CREATE_VMWARE_ENGINE_NETWORK))) - .addMethod( - getUpdateVmwareEngineNetworkMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.UpdateVmwareEngineNetworkRequest, - com.google.longrunning.Operation>( - this, METHODID_UPDATE_VMWARE_ENGINE_NETWORK))) - .addMethod( - getDeleteVmwareEngineNetworkMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.DeleteVmwareEngineNetworkRequest, - com.google.longrunning.Operation>( - this, METHODID_DELETE_VMWARE_ENGINE_NETWORK))) - .addMethod( - getGetVmwareEngineNetworkMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.GetVmwareEngineNetworkRequest, - com.google.cloud.vmwareengine.v1.VmwareEngineNetwork>( - this, METHODID_GET_VMWARE_ENGINE_NETWORK))) - .addMethod( - getListVmwareEngineNetworksMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vmwareengine.v1.ListVmwareEngineNetworksRequest, - com.google.cloud.vmwareengine.v1.ListVmwareEngineNetworksResponse>( - this, METHODID_LIST_VMWARE_ENGINE_NETWORKS))) - .build(); + return VmwareEngineGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service VmwareEngine. * *
    * VMwareEngine manages VMware's private clusters in the Cloud.
@@ -2857,7 +2665,7 @@ public void listVmwareEngineNetworks(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service VmwareEngine.
    *
    * 
    * VMwareEngine manages VMware's private clusters in the Cloud.
@@ -3342,7 +3150,7 @@ public com.google.cloud.vmwareengine.v1.VmwareEngineNetwork getVmwareEngineNetwo
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service VmwareEngine.
    *
    * 
    * VMwareEngine manages VMware's private clusters in the Cloud.
@@ -3886,10 +3694,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final VmwareEngineImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(VmwareEngineImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -4088,6 +3896,213 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListPrivateCloudsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ListPrivateCloudsRequest,
+                    com.google.cloud.vmwareengine.v1.ListPrivateCloudsResponse>(
+                    service, METHODID_LIST_PRIVATE_CLOUDS)))
+        .addMethod(
+            getGetPrivateCloudMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.GetPrivateCloudRequest,
+                    com.google.cloud.vmwareengine.v1.PrivateCloud>(
+                    service, METHODID_GET_PRIVATE_CLOUD)))
+        .addMethod(
+            getCreatePrivateCloudMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.CreatePrivateCloudRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_PRIVATE_CLOUD)))
+        .addMethod(
+            getUpdatePrivateCloudMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.UpdatePrivateCloudRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_PRIVATE_CLOUD)))
+        .addMethod(
+            getDeletePrivateCloudMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.DeletePrivateCloudRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_PRIVATE_CLOUD)))
+        .addMethod(
+            getUndeletePrivateCloudMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.UndeletePrivateCloudRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UNDELETE_PRIVATE_CLOUD)))
+        .addMethod(
+            getListClustersMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ListClustersRequest,
+                    com.google.cloud.vmwareengine.v1.ListClustersResponse>(
+                    service, METHODID_LIST_CLUSTERS)))
+        .addMethod(
+            getGetClusterMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.GetClusterRequest,
+                    com.google.cloud.vmwareengine.v1.Cluster>(service, METHODID_GET_CLUSTER)))
+        .addMethod(
+            getCreateClusterMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.CreateClusterRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_CLUSTER)))
+        .addMethod(
+            getUpdateClusterMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.UpdateClusterRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_CLUSTER)))
+        .addMethod(
+            getDeleteClusterMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.DeleteClusterRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_CLUSTER)))
+        .addMethod(
+            getListSubnetsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ListSubnetsRequest,
+                    com.google.cloud.vmwareengine.v1.ListSubnetsResponse>(
+                    service, METHODID_LIST_SUBNETS)))
+        .addMethod(
+            getListNodeTypesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ListNodeTypesRequest,
+                    com.google.cloud.vmwareengine.v1.ListNodeTypesResponse>(
+                    service, METHODID_LIST_NODE_TYPES)))
+        .addMethod(
+            getGetNodeTypeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.GetNodeTypeRequest,
+                    com.google.cloud.vmwareengine.v1.NodeType>(service, METHODID_GET_NODE_TYPE)))
+        .addMethod(
+            getShowNsxCredentialsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ShowNsxCredentialsRequest,
+                    com.google.cloud.vmwareengine.v1.Credentials>(
+                    service, METHODID_SHOW_NSX_CREDENTIALS)))
+        .addMethod(
+            getShowVcenterCredentialsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ShowVcenterCredentialsRequest,
+                    com.google.cloud.vmwareengine.v1.Credentials>(
+                    service, METHODID_SHOW_VCENTER_CREDENTIALS)))
+        .addMethod(
+            getResetNsxCredentialsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ResetNsxCredentialsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESET_NSX_CREDENTIALS)))
+        .addMethod(
+            getResetVcenterCredentialsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ResetVcenterCredentialsRequest,
+                    com.google.longrunning.Operation>(service, METHODID_RESET_VCENTER_CREDENTIALS)))
+        .addMethod(
+            getCreateHcxActivationKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.CreateHcxActivationKeyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_HCX_ACTIVATION_KEY)))
+        .addMethod(
+            getListHcxActivationKeysMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ListHcxActivationKeysRequest,
+                    com.google.cloud.vmwareengine.v1.ListHcxActivationKeysResponse>(
+                    service, METHODID_LIST_HCX_ACTIVATION_KEYS)))
+        .addMethod(
+            getGetHcxActivationKeyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.GetHcxActivationKeyRequest,
+                    com.google.cloud.vmwareengine.v1.HcxActivationKey>(
+                    service, METHODID_GET_HCX_ACTIVATION_KEY)))
+        .addMethod(
+            getGetNetworkPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.GetNetworkPolicyRequest,
+                    com.google.cloud.vmwareengine.v1.NetworkPolicy>(
+                    service, METHODID_GET_NETWORK_POLICY)))
+        .addMethod(
+            getListNetworkPoliciesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ListNetworkPoliciesRequest,
+                    com.google.cloud.vmwareengine.v1.ListNetworkPoliciesResponse>(
+                    service, METHODID_LIST_NETWORK_POLICIES)))
+        .addMethod(
+            getCreateNetworkPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.CreateNetworkPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_NETWORK_POLICY)))
+        .addMethod(
+            getUpdateNetworkPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.UpdateNetworkPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_NETWORK_POLICY)))
+        .addMethod(
+            getDeleteNetworkPolicyMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.DeleteNetworkPolicyRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_NETWORK_POLICY)))
+        .addMethod(
+            getCreateVmwareEngineNetworkMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.CreateVmwareEngineNetworkRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_CREATE_VMWARE_ENGINE_NETWORK)))
+        .addMethod(
+            getUpdateVmwareEngineNetworkMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.UpdateVmwareEngineNetworkRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_UPDATE_VMWARE_ENGINE_NETWORK)))
+        .addMethod(
+            getDeleteVmwareEngineNetworkMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.DeleteVmwareEngineNetworkRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_DELETE_VMWARE_ENGINE_NETWORK)))
+        .addMethod(
+            getGetVmwareEngineNetworkMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.GetVmwareEngineNetworkRequest,
+                    com.google.cloud.vmwareengine.v1.VmwareEngineNetwork>(
+                    service, METHODID_GET_VMWARE_ENGINE_NETWORK)))
+        .addMethod(
+            getListVmwareEngineNetworksMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vmwareengine.v1.ListVmwareEngineNetworksRequest,
+                    com.google.cloud.vmwareengine.v1.ListVmwareEngineNetworksResponse>(
+                    service, METHODID_LIST_VMWARE_ENGINE_NETWORKS)))
+        .build();
+  }
+
   private abstract static class VmwareEngineBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-vpcaccess/README.md b/java-vpcaccess/README.md
index ff0bf7a619d0..298d66f78e3c 100644
--- a/java-vpcaccess/README.md
+++ b/java-vpcaccess/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Serverless VPC Access][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 Serverless VPC Access [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Serverless VPC Access.
 [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-vpcaccess.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-vpcaccess&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-vpcaccess/2.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-vpcaccess/grpc-google-cloud-vpcaccess-v1/src/main/java/com/google/cloud/vpcaccess/v1/VpcAccessServiceGrpc.java b/java-vpcaccess/grpc-google-cloud-vpcaccess-v1/src/main/java/com/google/cloud/vpcaccess/v1/VpcAccessServiceGrpc.java
index ccc23836a1e1..d38b6f404100 100644
--- a/java-vpcaccess/grpc-google-cloud-vpcaccess-v1/src/main/java/com/google/cloud/vpcaccess/v1/VpcAccessServiceGrpc.java
+++ b/java-vpcaccess/grpc-google-cloud-vpcaccess-v1/src/main/java/com/google/cloud/vpcaccess/v1/VpcAccessServiceGrpc.java
@@ -266,7 +266,7 @@ public VpcAccessServiceFutureStub newStub(
    * Virtual Private Cloud networks.
    * 
*/ - public abstract static class VpcAccessServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -275,7 +275,7 @@ public abstract static class VpcAccessServiceImplBase implements io.grpc.Bindabl * Creates a Serverless VPC Access connector, returns an operation. *
*/ - public void createConnector( + default void createConnector( com.google.cloud.vpcaccess.v1.CreateConnectorRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -290,7 +290,7 @@ public void createConnector( * does not exist. *
*/ - public void getConnector( + default void getConnector( com.google.cloud.vpcaccess.v1.GetConnectorRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -304,7 +304,7 @@ public void getConnector( * Lists Serverless VPC Access connectors. * */ - public void listConnectors( + default void listConnectors( com.google.cloud.vpcaccess.v1.ListConnectorsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -320,47 +320,34 @@ public void listConnectors( * resource does not exist. * */ - public void deleteConnector( + default void deleteConnector( com.google.cloud.vpcaccess.v1.DeleteConnectorRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteConnectorMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service VpcAccessService. + * + *
+   * Serverless VPC Access API allows users to create and manage connectors for
+   * App Engine, Cloud Functions and Cloud Run to have internal connections to
+   * Virtual Private Cloud networks.
+   * 
+ */ + public abstract static class VpcAccessServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateConnectorMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vpcaccess.v1.CreateConnectorRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_CONNECTOR))) - .addMethod( - getGetConnectorMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vpcaccess.v1.GetConnectorRequest, - com.google.cloud.vpcaccess.v1.Connector>(this, METHODID_GET_CONNECTOR))) - .addMethod( - getListConnectorsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vpcaccess.v1.ListConnectorsRequest, - com.google.cloud.vpcaccess.v1.ListConnectorsResponse>( - this, METHODID_LIST_CONNECTORS))) - .addMethod( - getDeleteConnectorMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.vpcaccess.v1.DeleteConnectorRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_CONNECTOR))) - .build(); + return VpcAccessServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service VpcAccessService. * *
    * Serverless VPC Access API allows users to create and manage connectors for
@@ -448,7 +435,7 @@ public void deleteConnector(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service VpcAccessService.
    *
    * 
    * Serverless VPC Access API allows users to create and manage connectors for
@@ -524,7 +511,7 @@ public com.google.longrunning.Operation deleteConnector(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service VpcAccessService.
    *
    * 
    * Serverless VPC Access API allows users to create and manage connectors for
@@ -611,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 VpcAccessServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(VpcAccessServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -661,6 +648,36 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateConnectorMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vpcaccess.v1.CreateConnectorRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_CONNECTOR)))
+        .addMethod(
+            getGetConnectorMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vpcaccess.v1.GetConnectorRequest,
+                    com.google.cloud.vpcaccess.v1.Connector>(service, METHODID_GET_CONNECTOR)))
+        .addMethod(
+            getListConnectorsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vpcaccess.v1.ListConnectorsRequest,
+                    com.google.cloud.vpcaccess.v1.ListConnectorsResponse>(
+                    service, METHODID_LIST_CONNECTORS)))
+        .addMethod(
+            getDeleteConnectorMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.vpcaccess.v1.DeleteConnectorRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_CONNECTOR)))
+        .build();
+  }
+
   private abstract static class VpcAccessServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-webrisk/README.md b/java-webrisk/README.md
index 4369c6d53e3a..69279804c185 100644
--- a/java-webrisk/README.md
+++ b/java-webrisk/README.md
@@ -13,8 +13,8 @@ Java idiomatic client for [Web Risk][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-webrisk" % "2.12.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 Web Risk [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-webrisk.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-webrisk&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-webrisk/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-webrisk/grpc-google-cloud-webrisk-v1/src/main/java/com/google/webrisk/v1/WebRiskServiceGrpc.java b/java-webrisk/grpc-google-cloud-webrisk-v1/src/main/java/com/google/webrisk/v1/WebRiskServiceGrpc.java
index 102d6cb3b32f..9bb6f3ce90a6 100644
--- a/java-webrisk/grpc-google-cloud-webrisk-v1/src/main/java/com/google/webrisk/v1/WebRiskServiceGrpc.java
+++ b/java-webrisk/grpc-google-cloud-webrisk-v1/src/main/java/com/google/webrisk/v1/WebRiskServiceGrpc.java
@@ -260,7 +260,7 @@ public WebRiskServiceFutureStub newStub(
    * website and in client applications.
    * 
*/ - public abstract static class WebRiskServiceImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -274,7 +274,7 @@ public abstract static class WebRiskServiceImplBase implements io.grpc.BindableS * for each list. *
*/ - public void computeThreatListDiff( + default void computeThreatListDiff( com.google.webrisk.v1.ComputeThreatListDiffRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -293,7 +293,7 @@ public void computeThreatListDiff( * empty response will be returned. *
*/ - public void searchUris( + default void searchUris( com.google.webrisk.v1.SearchUrisRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getSearchUrisMethod(), responseObserver); @@ -310,7 +310,7 @@ public void searchUris( * hash match of a threat. * */ - public void searchHashes( + default void searchHashes( com.google.webrisk.v1.SearchHashesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -330,47 +330,33 @@ public void searchHashes( * out to Sales or your customer engineer to obtain access. * */ - public void createSubmission( + default void createSubmission( com.google.webrisk.v1.CreateSubmissionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getCreateSubmissionMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service WebRiskService. + * + *
+   * Web Risk API defines an interface to detect malicious URLs on your
+   * website and in client applications.
+   * 
+ */ + public abstract static class WebRiskServiceImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getComputeThreatListDiffMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.webrisk.v1.ComputeThreatListDiffRequest, - com.google.webrisk.v1.ComputeThreatListDiffResponse>( - this, METHODID_COMPUTE_THREAT_LIST_DIFF))) - .addMethod( - getSearchUrisMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.webrisk.v1.SearchUrisRequest, - com.google.webrisk.v1.SearchUrisResponse>(this, METHODID_SEARCH_URIS))) - .addMethod( - getSearchHashesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.webrisk.v1.SearchHashesRequest, - com.google.webrisk.v1.SearchHashesResponse>(this, METHODID_SEARCH_HASHES))) - .addMethod( - getCreateSubmissionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.webrisk.v1.CreateSubmissionRequest, - com.google.webrisk.v1.Submission>(this, METHODID_CREATE_SUBMISSION))) - .build(); + return WebRiskServiceGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service WebRiskService. * *
    * Web Risk API defines an interface to detect malicious URLs on your
@@ -472,7 +458,7 @@ public void createSubmission(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service WebRiskService.
    *
    * 
    * Web Risk API defines an interface to detect malicious URLs on your
@@ -564,7 +550,7 @@ public com.google.webrisk.v1.Submission createSubmission(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service WebRiskService.
    *
    * 
    * Web Risk API defines an interface to detect malicious URLs on your
@@ -668,10 +654,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final WebRiskServiceImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(WebRiskServiceImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -719,6 +705,36 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getComputeThreatListDiffMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.webrisk.v1.ComputeThreatListDiffRequest,
+                    com.google.webrisk.v1.ComputeThreatListDiffResponse>(
+                    service, METHODID_COMPUTE_THREAT_LIST_DIFF)))
+        .addMethod(
+            getSearchUrisMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.webrisk.v1.SearchUrisRequest,
+                    com.google.webrisk.v1.SearchUrisResponse>(service, METHODID_SEARCH_URIS)))
+        .addMethod(
+            getSearchHashesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.webrisk.v1.SearchHashesRequest,
+                    com.google.webrisk.v1.SearchHashesResponse>(service, METHODID_SEARCH_HASHES)))
+        .addMethod(
+            getCreateSubmissionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.webrisk.v1.CreateSubmissionRequest,
+                    com.google.webrisk.v1.Submission>(service, METHODID_CREATE_SUBMISSION)))
+        .build();
+  }
+
   private abstract static class WebRiskServiceBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-webrisk/grpc-google-cloud-webrisk-v1beta1/src/main/java/com/google/webrisk/v1beta1/WebRiskServiceV1Beta1Grpc.java b/java-webrisk/grpc-google-cloud-webrisk-v1beta1/src/main/java/com/google/webrisk/v1beta1/WebRiskServiceV1Beta1Grpc.java
index 08399b041e3d..393176c69058 100644
--- a/java-webrisk/grpc-google-cloud-webrisk-v1beta1/src/main/java/com/google/webrisk/v1beta1/WebRiskServiceV1Beta1Grpc.java
+++ b/java-webrisk/grpc-google-cloud-webrisk-v1beta1/src/main/java/com/google/webrisk/v1beta1/WebRiskServiceV1Beta1Grpc.java
@@ -227,7 +227,7 @@ public WebRiskServiceV1Beta1FutureStub newStub(
    * website and in client applications.
    * 
*/ - public abstract static class WebRiskServiceV1Beta1ImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -236,7 +236,7 @@ public abstract static class WebRiskServiceV1Beta1ImplBase implements io.grpc.Bi * Gets the most recent threat list diffs. *
*/ - public void computeThreatListDiff( + default void computeThreatListDiff( com.google.webrisk.v1beta1.ComputeThreatListDiffRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -251,7 +251,7 @@ public void computeThreatListDiff( * This method is used to check whether a URI is on a given threatList. *
*/ - public void searchUris( + default void searchUris( com.google.webrisk.v1beta1.SearchUrisRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -269,43 +269,34 @@ public void searchUris( * hash match of a threat. * */ - public void searchHashes( + default void searchHashes( com.google.webrisk.v1beta1.SearchHashesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getSearchHashesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service WebRiskServiceV1Beta1. + * + *
+   * Web Risk v1beta1 API defines an interface to detect malicious URLs on your
+   * website and in client applications.
+   * 
+ */ + public abstract static class WebRiskServiceV1Beta1ImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getComputeThreatListDiffMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.webrisk.v1beta1.ComputeThreatListDiffRequest, - com.google.webrisk.v1beta1.ComputeThreatListDiffResponse>( - this, METHODID_COMPUTE_THREAT_LIST_DIFF))) - .addMethod( - getSearchUrisMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.webrisk.v1beta1.SearchUrisRequest, - com.google.webrisk.v1beta1.SearchUrisResponse>(this, METHODID_SEARCH_URIS))) - .addMethod( - getSearchHashesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.webrisk.v1beta1.SearchHashesRequest, - com.google.webrisk.v1beta1.SearchHashesResponse>( - this, METHODID_SEARCH_HASHES))) - .build(); + return WebRiskServiceV1Beta1Grpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service WebRiskServiceV1Beta1. * *
    * Web Risk v1beta1 API defines an interface to detect malicious URLs on your
@@ -379,7 +370,7 @@ public void searchHashes(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service WebRiskServiceV1Beta1.
    *
    * 
    * Web Risk v1beta1 API defines an interface to detect malicious URLs on your
@@ -444,7 +435,8 @@ public com.google.webrisk.v1beta1.SearchHashesResponse searchHashes(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service
+   * WebRiskServiceV1Beta1.
    *
    * 
    * Web Risk v1beta1 API defines an interface to detect malicious URLs on your
@@ -520,10 +512,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final WebRiskServiceV1Beta1ImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(WebRiskServiceV1Beta1ImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -567,6 +559,31 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getComputeThreatListDiffMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.webrisk.v1beta1.ComputeThreatListDiffRequest,
+                    com.google.webrisk.v1beta1.ComputeThreatListDiffResponse>(
+                    service, METHODID_COMPUTE_THREAT_LIST_DIFF)))
+        .addMethod(
+            getSearchUrisMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.webrisk.v1beta1.SearchUrisRequest,
+                    com.google.webrisk.v1beta1.SearchUrisResponse>(service, METHODID_SEARCH_URIS)))
+        .addMethod(
+            getSearchHashesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.webrisk.v1beta1.SearchHashesRequest,
+                    com.google.webrisk.v1beta1.SearchHashesResponse>(
+                    service, METHODID_SEARCH_HASHES)))
+        .build();
+  }
+
   private abstract static class WebRiskServiceV1Beta1BaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-websecurityscanner/README.md b/java-websecurityscanner/README.md
index ee74818f197f..231918ac2dd0 100644
--- a/java-websecurityscanner/README.md
+++ b/java-websecurityscanner/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud Security Scanner][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 Security Scanner [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-websecurityscanner.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-websecurityscanner&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-websecurityscanner/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-websecurityscanner/grpc-google-cloud-websecurityscanner-v1/src/main/java/com/google/cloud/websecurityscanner/v1/WebSecurityScannerGrpc.java b/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1/src/main/java/com/google/cloud/websecurityscanner/v1/WebSecurityScannerGrpc.java
index ce8eb5ce00ef..a8e1f2c70303 100644
--- a/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1/src/main/java/com/google/cloud/websecurityscanner/v1/WebSecurityScannerGrpc.java
+++ b/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1/src/main/java/com/google/cloud/websecurityscanner/v1/WebSecurityScannerGrpc.java
@@ -697,7 +697,7 @@ public WebSecurityScannerFutureStub newStub(
    * attempts to exercise as many user inputs and event handlers as possible.
    * 
*/ - public abstract static class WebSecurityScannerImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -706,7 +706,7 @@ public abstract static class WebSecurityScannerImplBase implements io.grpc.Binda * Creates a new ScanConfig. *
*/ - public void createScanConfig( + default void createScanConfig( com.google.cloud.websecurityscanner.v1.CreateScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -721,7 +721,7 @@ public void createScanConfig( * Deletes an existing ScanConfig and its child resources. *
*/ - public void deleteScanConfig( + default void deleteScanConfig( com.google.cloud.websecurityscanner.v1.DeleteScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -735,7 +735,7 @@ public void deleteScanConfig( * Gets a ScanConfig. * */ - public void getScanConfig( + default void getScanConfig( com.google.cloud.websecurityscanner.v1.GetScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -750,7 +750,7 @@ public void getScanConfig( * Lists ScanConfigs under a given project. * */ - public void listScanConfigs( + default void listScanConfigs( com.google.cloud.websecurityscanner.v1.ListScanConfigsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -765,7 +765,7 @@ public void listScanConfigs( * Updates a ScanConfig. This method support partial update of a ScanConfig. * */ - public void updateScanConfig( + default void updateScanConfig( com.google.cloud.websecurityscanner.v1.UpdateScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -780,7 +780,7 @@ public void updateScanConfig( * Start a ScanRun according to the given ScanConfig. * */ - public void startScanRun( + default void startScanRun( com.google.cloud.websecurityscanner.v1.StartScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -795,7 +795,7 @@ public void startScanRun( * Gets a ScanRun. * */ - public void getScanRun( + default void getScanRun( com.google.cloud.websecurityscanner.v1.GetScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -810,7 +810,7 @@ public void getScanRun( * stop time. * */ - public void listScanRuns( + default void listScanRuns( com.google.cloud.websecurityscanner.v1.ListScanRunsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -825,7 +825,7 @@ public void listScanRuns( * Stops a ScanRun. The stopped ScanRun is returned. * */ - public void stopScanRun( + default void stopScanRun( com.google.cloud.websecurityscanner.v1.StopScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -840,7 +840,7 @@ public void stopScanRun( * List CrawledUrls under a given ScanRun. * */ - public void listCrawledUrls( + default void listCrawledUrls( com.google.cloud.websecurityscanner.v1.ListCrawledUrlsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -855,7 +855,7 @@ public void listCrawledUrls( * Gets a Finding. * */ - public void getFinding( + default void getFinding( com.google.cloud.websecurityscanner.v1.GetFindingRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -869,7 +869,7 @@ public void getFinding( * List Findings under a given ScanRun. * */ - public void listFindings( + default void listFindings( com.google.cloud.websecurityscanner.v1.ListFindingsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -884,7 +884,7 @@ public void listFindings( * List all FindingTypeStats under a given ScanRun. * */ - public void listFindingTypeStats( + default void listFindingTypeStats( com.google.cloud.websecurityscanner.v1.ListFindingTypeStatsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1.ListFindingTypeStatsResponse> @@ -892,104 +892,28 @@ public void listFindingTypeStats( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListFindingTypeStatsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service WebSecurityScanner. + * + *
+   * Web Security Scanner Service identifies security vulnerabilities in web
+   * applications hosted on Google Cloud. It crawls your application, and
+   * attempts to exercise as many user inputs and event handlers as possible.
+   * 
+ */ + public abstract static class WebSecurityScannerImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.CreateScanConfigRequest, - com.google.cloud.websecurityscanner.v1.ScanConfig>( - this, METHODID_CREATE_SCAN_CONFIG))) - .addMethod( - getDeleteScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.DeleteScanConfigRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_SCAN_CONFIG))) - .addMethod( - getGetScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.GetScanConfigRequest, - com.google.cloud.websecurityscanner.v1.ScanConfig>( - this, METHODID_GET_SCAN_CONFIG))) - .addMethod( - getListScanConfigsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.ListScanConfigsRequest, - com.google.cloud.websecurityscanner.v1.ListScanConfigsResponse>( - this, METHODID_LIST_SCAN_CONFIGS))) - .addMethod( - getUpdateScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.UpdateScanConfigRequest, - com.google.cloud.websecurityscanner.v1.ScanConfig>( - this, METHODID_UPDATE_SCAN_CONFIG))) - .addMethod( - getStartScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.StartScanRunRequest, - com.google.cloud.websecurityscanner.v1.ScanRun>( - this, METHODID_START_SCAN_RUN))) - .addMethod( - getGetScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.GetScanRunRequest, - com.google.cloud.websecurityscanner.v1.ScanRun>(this, METHODID_GET_SCAN_RUN))) - .addMethod( - getListScanRunsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.ListScanRunsRequest, - com.google.cloud.websecurityscanner.v1.ListScanRunsResponse>( - this, METHODID_LIST_SCAN_RUNS))) - .addMethod( - getStopScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.StopScanRunRequest, - com.google.cloud.websecurityscanner.v1.ScanRun>( - this, METHODID_STOP_SCAN_RUN))) - .addMethod( - getListCrawledUrlsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.ListCrawledUrlsRequest, - com.google.cloud.websecurityscanner.v1.ListCrawledUrlsResponse>( - this, METHODID_LIST_CRAWLED_URLS))) - .addMethod( - getGetFindingMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.GetFindingRequest, - com.google.cloud.websecurityscanner.v1.Finding>(this, METHODID_GET_FINDING))) - .addMethod( - getListFindingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.ListFindingsRequest, - com.google.cloud.websecurityscanner.v1.ListFindingsResponse>( - this, METHODID_LIST_FINDINGS))) - .addMethod( - getListFindingTypeStatsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1.ListFindingTypeStatsRequest, - com.google.cloud.websecurityscanner.v1.ListFindingTypeStatsResponse>( - this, METHODID_LIST_FINDING_TYPE_STATS))) - .build(); + return WebSecurityScannerGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service WebSecurityScanner. * *
    * Web Security Scanner Service identifies security vulnerabilities in web
@@ -1229,7 +1153,7 @@ public void listFindingTypeStats(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service WebSecurityScanner.
    *
    * 
    * Web Security Scanner Service identifies security vulnerabilities in web
@@ -1422,7 +1346,7 @@ public com.google.cloud.websecurityscanner.v1.ListFindingTypeStatsResponse listF
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service WebSecurityScanner.
    *
    * 
    * Web Security Scanner Service identifies security vulnerabilities in web
@@ -1645,10 +1569,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final WebSecurityScannerImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(WebSecurityScannerImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1755,6 +1679,100 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.CreateScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1.ScanConfig>(
+                    service, METHODID_CREATE_SCAN_CONFIG)))
+        .addMethod(
+            getDeleteScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.DeleteScanConfigRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_SCAN_CONFIG)))
+        .addMethod(
+            getGetScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.GetScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1.ScanConfig>(
+                    service, METHODID_GET_SCAN_CONFIG)))
+        .addMethod(
+            getListScanConfigsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.ListScanConfigsRequest,
+                    com.google.cloud.websecurityscanner.v1.ListScanConfigsResponse>(
+                    service, METHODID_LIST_SCAN_CONFIGS)))
+        .addMethod(
+            getUpdateScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.UpdateScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1.ScanConfig>(
+                    service, METHODID_UPDATE_SCAN_CONFIG)))
+        .addMethod(
+            getStartScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.StartScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1.ScanRun>(
+                    service, METHODID_START_SCAN_RUN)))
+        .addMethod(
+            getGetScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.GetScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1.ScanRun>(
+                    service, METHODID_GET_SCAN_RUN)))
+        .addMethod(
+            getListScanRunsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.ListScanRunsRequest,
+                    com.google.cloud.websecurityscanner.v1.ListScanRunsResponse>(
+                    service, METHODID_LIST_SCAN_RUNS)))
+        .addMethod(
+            getStopScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.StopScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1.ScanRun>(
+                    service, METHODID_STOP_SCAN_RUN)))
+        .addMethod(
+            getListCrawledUrlsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.ListCrawledUrlsRequest,
+                    com.google.cloud.websecurityscanner.v1.ListCrawledUrlsResponse>(
+                    service, METHODID_LIST_CRAWLED_URLS)))
+        .addMethod(
+            getGetFindingMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.GetFindingRequest,
+                    com.google.cloud.websecurityscanner.v1.Finding>(service, METHODID_GET_FINDING)))
+        .addMethod(
+            getListFindingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.ListFindingsRequest,
+                    com.google.cloud.websecurityscanner.v1.ListFindingsResponse>(
+                    service, METHODID_LIST_FINDINGS)))
+        .addMethod(
+            getListFindingTypeStatsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1.ListFindingTypeStatsRequest,
+                    com.google.cloud.websecurityscanner.v1.ListFindingTypeStatsResponse>(
+                    service, METHODID_LIST_FINDING_TYPE_STATS)))
+        .build();
+  }
+
   private abstract static class WebSecurityScannerBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1alpha/src/main/java/com/google/cloud/websecurityscanner/v1alpha/WebSecurityScannerGrpc.java b/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1alpha/src/main/java/com/google/cloud/websecurityscanner/v1alpha/WebSecurityScannerGrpc.java
index bd372ac9bc78..b7581a908bfc 100644
--- a/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1alpha/src/main/java/com/google/cloud/websecurityscanner/v1alpha/WebSecurityScannerGrpc.java
+++ b/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1alpha/src/main/java/com/google/cloud/websecurityscanner/v1alpha/WebSecurityScannerGrpc.java
@@ -704,7 +704,7 @@ public WebSecurityScannerFutureStub newStub(
    * attempts to exercise as many user inputs and event handlers as possible.
    * 
*/ - public abstract static class WebSecurityScannerImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -713,7 +713,7 @@ public abstract static class WebSecurityScannerImplBase implements io.grpc.Binda * Creates a new ScanConfig. *
*/ - public void createScanConfig( + default void createScanConfig( com.google.cloud.websecurityscanner.v1alpha.CreateScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -728,7 +728,7 @@ public void createScanConfig( * Deletes an existing ScanConfig and its child resources. *
*/ - public void deleteScanConfig( + default void deleteScanConfig( com.google.cloud.websecurityscanner.v1alpha.DeleteScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -742,7 +742,7 @@ public void deleteScanConfig( * Gets a ScanConfig. * */ - public void getScanConfig( + default void getScanConfig( com.google.cloud.websecurityscanner.v1alpha.GetScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -757,7 +757,7 @@ public void getScanConfig( * Lists ScanConfigs under a given project. * */ - public void listScanConfigs( + default void listScanConfigs( com.google.cloud.websecurityscanner.v1alpha.ListScanConfigsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1alpha.ListScanConfigsResponse> @@ -773,7 +773,7 @@ public void listScanConfigs( * Updates a ScanConfig. This method support partial update of a ScanConfig. * */ - public void updateScanConfig( + default void updateScanConfig( com.google.cloud.websecurityscanner.v1alpha.UpdateScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -788,7 +788,7 @@ public void updateScanConfig( * Start a ScanRun according to the given ScanConfig. * */ - public void startScanRun( + default void startScanRun( com.google.cloud.websecurityscanner.v1alpha.StartScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -803,7 +803,7 @@ public void startScanRun( * Gets a ScanRun. * */ - public void getScanRun( + default void getScanRun( com.google.cloud.websecurityscanner.v1alpha.GetScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -818,7 +818,7 @@ public void getScanRun( * stop time. * */ - public void listScanRuns( + default void listScanRuns( com.google.cloud.websecurityscanner.v1alpha.ListScanRunsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1alpha.ListScanRunsResponse> @@ -834,7 +834,7 @@ public void listScanRuns( * Stops a ScanRun. The stopped ScanRun is returned. * */ - public void stopScanRun( + default void stopScanRun( com.google.cloud.websecurityscanner.v1alpha.StopScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -849,7 +849,7 @@ public void stopScanRun( * List CrawledUrls under a given ScanRun. * */ - public void listCrawledUrls( + default void listCrawledUrls( com.google.cloud.websecurityscanner.v1alpha.ListCrawledUrlsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1alpha.ListCrawledUrlsResponse> @@ -865,7 +865,7 @@ public void listCrawledUrls( * Gets a Finding. * */ - public void getFinding( + default void getFinding( com.google.cloud.websecurityscanner.v1alpha.GetFindingRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -879,7 +879,7 @@ public void getFinding( * List Findings under a given ScanRun. * */ - public void listFindings( + default void listFindings( com.google.cloud.websecurityscanner.v1alpha.ListFindingsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1alpha.ListFindingsResponse> @@ -895,7 +895,7 @@ public void listFindings( * List all FindingTypeStats under a given ScanRun. * */ - public void listFindingTypeStats( + default void listFindingTypeStats( com.google.cloud.websecurityscanner.v1alpha.ListFindingTypeStatsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1alpha.ListFindingTypeStatsResponse> @@ -903,106 +903,28 @@ public void listFindingTypeStats( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListFindingTypeStatsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service WebSecurityScanner. + * + *
+   * Cloud Web Security Scanner Service identifies security vulnerabilities in web
+   * applications hosted on Google Cloud Platform. It crawls your application, and
+   * attempts to exercise as many user inputs and event handlers as possible.
+   * 
+ */ + public abstract static class WebSecurityScannerImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.CreateScanConfigRequest, - com.google.cloud.websecurityscanner.v1alpha.ScanConfig>( - this, METHODID_CREATE_SCAN_CONFIG))) - .addMethod( - getDeleteScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.DeleteScanConfigRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_SCAN_CONFIG))) - .addMethod( - getGetScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.GetScanConfigRequest, - com.google.cloud.websecurityscanner.v1alpha.ScanConfig>( - this, METHODID_GET_SCAN_CONFIG))) - .addMethod( - getListScanConfigsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.ListScanConfigsRequest, - com.google.cloud.websecurityscanner.v1alpha.ListScanConfigsResponse>( - this, METHODID_LIST_SCAN_CONFIGS))) - .addMethod( - getUpdateScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.UpdateScanConfigRequest, - com.google.cloud.websecurityscanner.v1alpha.ScanConfig>( - this, METHODID_UPDATE_SCAN_CONFIG))) - .addMethod( - getStartScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.StartScanRunRequest, - com.google.cloud.websecurityscanner.v1alpha.ScanRun>( - this, METHODID_START_SCAN_RUN))) - .addMethod( - getGetScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.GetScanRunRequest, - com.google.cloud.websecurityscanner.v1alpha.ScanRun>( - this, METHODID_GET_SCAN_RUN))) - .addMethod( - getListScanRunsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.ListScanRunsRequest, - com.google.cloud.websecurityscanner.v1alpha.ListScanRunsResponse>( - this, METHODID_LIST_SCAN_RUNS))) - .addMethod( - getStopScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.StopScanRunRequest, - com.google.cloud.websecurityscanner.v1alpha.ScanRun>( - this, METHODID_STOP_SCAN_RUN))) - .addMethod( - getListCrawledUrlsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.ListCrawledUrlsRequest, - com.google.cloud.websecurityscanner.v1alpha.ListCrawledUrlsResponse>( - this, METHODID_LIST_CRAWLED_URLS))) - .addMethod( - getGetFindingMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.GetFindingRequest, - com.google.cloud.websecurityscanner.v1alpha.Finding>( - this, METHODID_GET_FINDING))) - .addMethod( - getListFindingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.ListFindingsRequest, - com.google.cloud.websecurityscanner.v1alpha.ListFindingsResponse>( - this, METHODID_LIST_FINDINGS))) - .addMethod( - getListFindingTypeStatsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1alpha.ListFindingTypeStatsRequest, - com.google.cloud.websecurityscanner.v1alpha.ListFindingTypeStatsResponse>( - this, METHODID_LIST_FINDING_TYPE_STATS))) - .build(); + return WebSecurityScannerGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service WebSecurityScanner. * *
    * Cloud Web Security Scanner Service identifies security vulnerabilities in web
@@ -1246,7 +1168,7 @@ public void listFindingTypeStats(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service WebSecurityScanner.
    *
    * 
    * Cloud Web Security Scanner Service identifies security vulnerabilities in web
@@ -1440,7 +1362,7 @@ public com.google.cloud.websecurityscanner.v1alpha.ListFindingsResponse listFind
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service WebSecurityScanner.
    *
    * 
    * Cloud Web Security Scanner Service identifies security vulnerabilities in web
@@ -1668,10 +1590,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final WebSecurityScannerImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(WebSecurityScannerImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1778,6 +1700,101 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.CreateScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ScanConfig>(
+                    service, METHODID_CREATE_SCAN_CONFIG)))
+        .addMethod(
+            getDeleteScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.DeleteScanConfigRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_SCAN_CONFIG)))
+        .addMethod(
+            getGetScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.GetScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ScanConfig>(
+                    service, METHODID_GET_SCAN_CONFIG)))
+        .addMethod(
+            getListScanConfigsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.ListScanConfigsRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ListScanConfigsResponse>(
+                    service, METHODID_LIST_SCAN_CONFIGS)))
+        .addMethod(
+            getUpdateScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.UpdateScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ScanConfig>(
+                    service, METHODID_UPDATE_SCAN_CONFIG)))
+        .addMethod(
+            getStartScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.StartScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ScanRun>(
+                    service, METHODID_START_SCAN_RUN)))
+        .addMethod(
+            getGetScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.GetScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ScanRun>(
+                    service, METHODID_GET_SCAN_RUN)))
+        .addMethod(
+            getListScanRunsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.ListScanRunsRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ListScanRunsResponse>(
+                    service, METHODID_LIST_SCAN_RUNS)))
+        .addMethod(
+            getStopScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.StopScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ScanRun>(
+                    service, METHODID_STOP_SCAN_RUN)))
+        .addMethod(
+            getListCrawledUrlsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.ListCrawledUrlsRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ListCrawledUrlsResponse>(
+                    service, METHODID_LIST_CRAWLED_URLS)))
+        .addMethod(
+            getGetFindingMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.GetFindingRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.Finding>(
+                    service, METHODID_GET_FINDING)))
+        .addMethod(
+            getListFindingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.ListFindingsRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ListFindingsResponse>(
+                    service, METHODID_LIST_FINDINGS)))
+        .addMethod(
+            getListFindingTypeStatsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1alpha.ListFindingTypeStatsRequest,
+                    com.google.cloud.websecurityscanner.v1alpha.ListFindingTypeStatsResponse>(
+                    service, METHODID_LIST_FINDING_TYPE_STATS)))
+        .build();
+  }
+
   private abstract static class WebSecurityScannerBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1beta/src/main/java/com/google/cloud/websecurityscanner/v1beta/WebSecurityScannerGrpc.java b/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1beta/src/main/java/com/google/cloud/websecurityscanner/v1beta/WebSecurityScannerGrpc.java
index 2e13b8367459..4135b96c3740 100644
--- a/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1beta/src/main/java/com/google/cloud/websecurityscanner/v1beta/WebSecurityScannerGrpc.java
+++ b/java-websecurityscanner/grpc-google-cloud-websecurityscanner-v1beta/src/main/java/com/google/cloud/websecurityscanner/v1beta/WebSecurityScannerGrpc.java
@@ -704,7 +704,7 @@ public WebSecurityScannerFutureStub newStub(
    * attempts to exercise as many user inputs and event handlers as possible.
    * 
*/ - public abstract static class WebSecurityScannerImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -713,7 +713,7 @@ public abstract static class WebSecurityScannerImplBase implements io.grpc.Binda * Creates a new ScanConfig. *
*/ - public void createScanConfig( + default void createScanConfig( com.google.cloud.websecurityscanner.v1beta.CreateScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -728,7 +728,7 @@ public void createScanConfig( * Deletes an existing ScanConfig and its child resources. *
*/ - public void deleteScanConfig( + default void deleteScanConfig( com.google.cloud.websecurityscanner.v1beta.DeleteScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -742,7 +742,7 @@ public void deleteScanConfig( * Gets a ScanConfig. * */ - public void getScanConfig( + default void getScanConfig( com.google.cloud.websecurityscanner.v1beta.GetScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -757,7 +757,7 @@ public void getScanConfig( * Lists ScanConfigs under a given project. * */ - public void listScanConfigs( + default void listScanConfigs( com.google.cloud.websecurityscanner.v1beta.ListScanConfigsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1beta.ListScanConfigsResponse> @@ -773,7 +773,7 @@ public void listScanConfigs( * Updates a ScanConfig. This method support partial update of a ScanConfig. * */ - public void updateScanConfig( + default void updateScanConfig( com.google.cloud.websecurityscanner.v1beta.UpdateScanConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -788,7 +788,7 @@ public void updateScanConfig( * Start a ScanRun according to the given ScanConfig. * */ - public void startScanRun( + default void startScanRun( com.google.cloud.websecurityscanner.v1beta.StartScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -803,7 +803,7 @@ public void startScanRun( * Gets a ScanRun. * */ - public void getScanRun( + default void getScanRun( com.google.cloud.websecurityscanner.v1beta.GetScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -818,7 +818,7 @@ public void getScanRun( * stop time. * */ - public void listScanRuns( + default void listScanRuns( com.google.cloud.websecurityscanner.v1beta.ListScanRunsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -833,7 +833,7 @@ public void listScanRuns( * Stops a ScanRun. The stopped ScanRun is returned. * */ - public void stopScanRun( + default void stopScanRun( com.google.cloud.websecurityscanner.v1beta.StopScanRunRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -848,7 +848,7 @@ public void stopScanRun( * List CrawledUrls under a given ScanRun. * */ - public void listCrawledUrls( + default void listCrawledUrls( com.google.cloud.websecurityscanner.v1beta.ListCrawledUrlsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1beta.ListCrawledUrlsResponse> @@ -864,7 +864,7 @@ public void listCrawledUrls( * Gets a Finding. * */ - public void getFinding( + default void getFinding( com.google.cloud.websecurityscanner.v1beta.GetFindingRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -878,7 +878,7 @@ public void getFinding( * List Findings under a given ScanRun. * */ - public void listFindings( + default void listFindings( com.google.cloud.websecurityscanner.v1beta.ListFindingsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -893,7 +893,7 @@ public void listFindings( * List all FindingTypeStats under a given ScanRun. * */ - public void listFindingTypeStats( + default void listFindingTypeStats( com.google.cloud.websecurityscanner.v1beta.ListFindingTypeStatsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.websecurityscanner.v1beta.ListFindingTypeStatsResponse> @@ -901,106 +901,28 @@ public void listFindingTypeStats( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getListFindingTypeStatsMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service WebSecurityScanner. + * + *
+   * Cloud Web Security Scanner Service identifies security vulnerabilities in web
+   * applications hosted on Google Cloud Platform. It crawls your application, and
+   * attempts to exercise as many user inputs and event handlers as possible.
+   * 
+ */ + public abstract static class WebSecurityScannerImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getCreateScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.CreateScanConfigRequest, - com.google.cloud.websecurityscanner.v1beta.ScanConfig>( - this, METHODID_CREATE_SCAN_CONFIG))) - .addMethod( - getDeleteScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.DeleteScanConfigRequest, - com.google.protobuf.Empty>(this, METHODID_DELETE_SCAN_CONFIG))) - .addMethod( - getGetScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.GetScanConfigRequest, - com.google.cloud.websecurityscanner.v1beta.ScanConfig>( - this, METHODID_GET_SCAN_CONFIG))) - .addMethod( - getListScanConfigsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.ListScanConfigsRequest, - com.google.cloud.websecurityscanner.v1beta.ListScanConfigsResponse>( - this, METHODID_LIST_SCAN_CONFIGS))) - .addMethod( - getUpdateScanConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.UpdateScanConfigRequest, - com.google.cloud.websecurityscanner.v1beta.ScanConfig>( - this, METHODID_UPDATE_SCAN_CONFIG))) - .addMethod( - getStartScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.StartScanRunRequest, - com.google.cloud.websecurityscanner.v1beta.ScanRun>( - this, METHODID_START_SCAN_RUN))) - .addMethod( - getGetScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.GetScanRunRequest, - com.google.cloud.websecurityscanner.v1beta.ScanRun>( - this, METHODID_GET_SCAN_RUN))) - .addMethod( - getListScanRunsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.ListScanRunsRequest, - com.google.cloud.websecurityscanner.v1beta.ListScanRunsResponse>( - this, METHODID_LIST_SCAN_RUNS))) - .addMethod( - getStopScanRunMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.StopScanRunRequest, - com.google.cloud.websecurityscanner.v1beta.ScanRun>( - this, METHODID_STOP_SCAN_RUN))) - .addMethod( - getListCrawledUrlsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.ListCrawledUrlsRequest, - com.google.cloud.websecurityscanner.v1beta.ListCrawledUrlsResponse>( - this, METHODID_LIST_CRAWLED_URLS))) - .addMethod( - getGetFindingMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.GetFindingRequest, - com.google.cloud.websecurityscanner.v1beta.Finding>( - this, METHODID_GET_FINDING))) - .addMethod( - getListFindingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.ListFindingsRequest, - com.google.cloud.websecurityscanner.v1beta.ListFindingsResponse>( - this, METHODID_LIST_FINDINGS))) - .addMethod( - getListFindingTypeStatsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.websecurityscanner.v1beta.ListFindingTypeStatsRequest, - com.google.cloud.websecurityscanner.v1beta.ListFindingTypeStatsResponse>( - this, METHODID_LIST_FINDING_TYPE_STATS))) - .build(); + return WebSecurityScannerGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service WebSecurityScanner. * *
    * Cloud Web Security Scanner Service identifies security vulnerabilities in web
@@ -1242,7 +1164,7 @@ public void listFindingTypeStats(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service WebSecurityScanner.
    *
    * 
    * Cloud Web Security Scanner Service identifies security vulnerabilities in web
@@ -1436,7 +1358,7 @@ public com.google.cloud.websecurityscanner.v1beta.ListFindingsResponse listFindi
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service WebSecurityScanner.
    *
    * 
    * Cloud Web Security Scanner Service identifies security vulnerabilities in web
@@ -1662,10 +1584,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final WebSecurityScannerImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(WebSecurityScannerImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -1772,6 +1694,101 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getCreateScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.CreateScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ScanConfig>(
+                    service, METHODID_CREATE_SCAN_CONFIG)))
+        .addMethod(
+            getDeleteScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.DeleteScanConfigRequest,
+                    com.google.protobuf.Empty>(service, METHODID_DELETE_SCAN_CONFIG)))
+        .addMethod(
+            getGetScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.GetScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ScanConfig>(
+                    service, METHODID_GET_SCAN_CONFIG)))
+        .addMethod(
+            getListScanConfigsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.ListScanConfigsRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ListScanConfigsResponse>(
+                    service, METHODID_LIST_SCAN_CONFIGS)))
+        .addMethod(
+            getUpdateScanConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.UpdateScanConfigRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ScanConfig>(
+                    service, METHODID_UPDATE_SCAN_CONFIG)))
+        .addMethod(
+            getStartScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.StartScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ScanRun>(
+                    service, METHODID_START_SCAN_RUN)))
+        .addMethod(
+            getGetScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.GetScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ScanRun>(
+                    service, METHODID_GET_SCAN_RUN)))
+        .addMethod(
+            getListScanRunsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.ListScanRunsRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ListScanRunsResponse>(
+                    service, METHODID_LIST_SCAN_RUNS)))
+        .addMethod(
+            getStopScanRunMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.StopScanRunRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ScanRun>(
+                    service, METHODID_STOP_SCAN_RUN)))
+        .addMethod(
+            getListCrawledUrlsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.ListCrawledUrlsRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ListCrawledUrlsResponse>(
+                    service, METHODID_LIST_CRAWLED_URLS)))
+        .addMethod(
+            getGetFindingMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.GetFindingRequest,
+                    com.google.cloud.websecurityscanner.v1beta.Finding>(
+                    service, METHODID_GET_FINDING)))
+        .addMethod(
+            getListFindingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.ListFindingsRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ListFindingsResponse>(
+                    service, METHODID_LIST_FINDINGS)))
+        .addMethod(
+            getListFindingTypeStatsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.websecurityscanner.v1beta.ListFindingTypeStatsRequest,
+                    com.google.cloud.websecurityscanner.v1beta.ListFindingTypeStatsResponse>(
+                    service, METHODID_LIST_FINDING_TYPE_STATS)))
+        .build();
+  }
+
   private abstract static class WebSecurityScannerBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-workflow-executions/README.md b/java-workflow-executions/README.md
index 2362e0ad314b..e95a94d01932 100644
--- a/java-workflow-executions/README.md
+++ b/java-workflow-executions/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud Workflow Executions][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 Workflow Executions [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud Workflow Executions.
 [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-workflow-executions.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-workflow-executions&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workflow-executions/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-workflow-executions/grpc-google-cloud-workflow-executions-v1/src/main/java/com/google/cloud/workflows/executions/v1/ExecutionsGrpc.java b/java-workflow-executions/grpc-google-cloud-workflow-executions-v1/src/main/java/com/google/cloud/workflows/executions/v1/ExecutionsGrpc.java
index 01ed5871645d..6d688902071f 100644
--- a/java-workflow-executions/grpc-google-cloud-workflow-executions-v1/src/main/java/com/google/cloud/workflows/executions/v1/ExecutionsGrpc.java
+++ b/java-workflow-executions/grpc-google-cloud-workflow-executions-v1/src/main/java/com/google/cloud/workflows/executions/v1/ExecutionsGrpc.java
@@ -270,7 +270,7 @@ public ExecutionsFutureStub newStub(
    * [Workflows][google.cloud.workflows.v1.Workflow] called executions.
    * 
*/ - public abstract static class ExecutionsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -282,7 +282,7 @@ public abstract static class ExecutionsImplBase implements io.grpc.BindableServi * first). *
*/ - public void listExecutions( + default void listExecutions( com.google.cloud.workflows.executions.v1.ListExecutionsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -297,7 +297,7 @@ public void listExecutions( * Creates a new execution using the latest revision of the given workflow. *
*/ - public void createExecution( + default void createExecution( com.google.cloud.workflows.executions.v1.CreateExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -312,7 +312,7 @@ public void createExecution( * Returns an execution of the given name. * */ - public void getExecution( + default void getExecution( com.google.cloud.workflows.executions.v1.GetExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -327,51 +327,33 @@ public void getExecution( * Cancels an execution of the given name. * */ - public void cancelExecution( + default void cancelExecution( com.google.cloud.workflows.executions.v1.CancelExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getCancelExecutionMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Executions. + * + *
+   * Executions is used to start and manage running instances of
+   * [Workflows][google.cloud.workflows.v1.Workflow] called executions.
+   * 
+ */ + public abstract static class ExecutionsImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListExecutionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.executions.v1.ListExecutionsRequest, - com.google.cloud.workflows.executions.v1.ListExecutionsResponse>( - this, METHODID_LIST_EXECUTIONS))) - .addMethod( - getCreateExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.executions.v1.CreateExecutionRequest, - com.google.cloud.workflows.executions.v1.Execution>( - this, METHODID_CREATE_EXECUTION))) - .addMethod( - getGetExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.executions.v1.GetExecutionRequest, - com.google.cloud.workflows.executions.v1.Execution>( - this, METHODID_GET_EXECUTION))) - .addMethod( - getCancelExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.executions.v1.CancelExecutionRequest, - com.google.cloud.workflows.executions.v1.Execution>( - this, METHODID_CANCEL_EXECUTION))) - .build(); + return ExecutionsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Executions. * *
    * Executions is used to start and manage running instances of
@@ -461,7 +443,7 @@ public void cancelExecution(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Executions.
    *
    * 
    * Executions is used to start and manage running instances of
@@ -537,7 +519,7 @@ public com.google.cloud.workflows.executions.v1.Execution cancelExecution(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Executions.
    *
    * 
    * Executions is used to start and manage running instances of
@@ -625,10 +607,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ExecutionsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ExecutionsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -678,6 +660,39 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListExecutionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.executions.v1.ListExecutionsRequest,
+                    com.google.cloud.workflows.executions.v1.ListExecutionsResponse>(
+                    service, METHODID_LIST_EXECUTIONS)))
+        .addMethod(
+            getCreateExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.executions.v1.CreateExecutionRequest,
+                    com.google.cloud.workflows.executions.v1.Execution>(
+                    service, METHODID_CREATE_EXECUTION)))
+        .addMethod(
+            getGetExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.executions.v1.GetExecutionRequest,
+                    com.google.cloud.workflows.executions.v1.Execution>(
+                    service, METHODID_GET_EXECUTION)))
+        .addMethod(
+            getCancelExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.executions.v1.CancelExecutionRequest,
+                    com.google.cloud.workflows.executions.v1.Execution>(
+                    service, METHODID_CANCEL_EXECUTION)))
+        .build();
+  }
+
   private abstract static class ExecutionsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-workflow-executions/grpc-google-cloud-workflow-executions-v1beta/src/main/java/com/google/cloud/workflows/executions/v1beta/ExecutionsGrpc.java b/java-workflow-executions/grpc-google-cloud-workflow-executions-v1beta/src/main/java/com/google/cloud/workflows/executions/v1beta/ExecutionsGrpc.java
index ebfd50b860c1..e10a3607f472 100644
--- a/java-workflow-executions/grpc-google-cloud-workflow-executions-v1beta/src/main/java/com/google/cloud/workflows/executions/v1beta/ExecutionsGrpc.java
+++ b/java-workflow-executions/grpc-google-cloud-workflow-executions-v1beta/src/main/java/com/google/cloud/workflows/executions/v1beta/ExecutionsGrpc.java
@@ -270,7 +270,7 @@ public ExecutionsFutureStub newStub(
    * [Workflows][google.cloud.workflows.v1beta.Workflow] called executions.
    * 
*/ - public abstract static class ExecutionsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -282,7 +282,7 @@ public abstract static class ExecutionsImplBase implements io.grpc.BindableServi * first). *
*/ - public void listExecutions( + default void listExecutions( com.google.cloud.workflows.executions.v1beta.ListExecutionsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.workflows.executions.v1beta.ListExecutionsResponse> @@ -298,7 +298,7 @@ public void listExecutions( * Creates a new execution using the latest revision of the given workflow. *
*/ - public void createExecution( + default void createExecution( com.google.cloud.workflows.executions.v1beta.CreateExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -313,7 +313,7 @@ public void createExecution( * Returns an execution of the given name. * */ - public void getExecution( + default void getExecution( com.google.cloud.workflows.executions.v1beta.GetExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -328,51 +328,33 @@ public void getExecution( * Cancels an execution of the given name. * */ - public void cancelExecution( + default void cancelExecution( com.google.cloud.workflows.executions.v1beta.CancelExecutionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getCancelExecutionMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Executions. + * + *
+   * Executions is used to start and manage running instances of
+   * [Workflows][google.cloud.workflows.v1beta.Workflow] called executions.
+   * 
+ */ + public abstract static class ExecutionsImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListExecutionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.executions.v1beta.ListExecutionsRequest, - com.google.cloud.workflows.executions.v1beta.ListExecutionsResponse>( - this, METHODID_LIST_EXECUTIONS))) - .addMethod( - getCreateExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.executions.v1beta.CreateExecutionRequest, - com.google.cloud.workflows.executions.v1beta.Execution>( - this, METHODID_CREATE_EXECUTION))) - .addMethod( - getGetExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.executions.v1beta.GetExecutionRequest, - com.google.cloud.workflows.executions.v1beta.Execution>( - this, METHODID_GET_EXECUTION))) - .addMethod( - getCancelExecutionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.executions.v1beta.CancelExecutionRequest, - com.google.cloud.workflows.executions.v1beta.Execution>( - this, METHODID_CANCEL_EXECUTION))) - .build(); + return ExecutionsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Executions. * *
    * Executions is used to start and manage running instances of
@@ -463,7 +445,7 @@ public void cancelExecution(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Executions.
    *
    * 
    * Executions is used to start and manage running instances of
@@ -539,7 +521,7 @@ public com.google.cloud.workflows.executions.v1beta.Execution cancelExecution(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Executions.
    *
    * 
    * Executions is used to start and manage running instances of
@@ -629,10 +611,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ExecutionsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ExecutionsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -682,6 +664,39 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListExecutionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.executions.v1beta.ListExecutionsRequest,
+                    com.google.cloud.workflows.executions.v1beta.ListExecutionsResponse>(
+                    service, METHODID_LIST_EXECUTIONS)))
+        .addMethod(
+            getCreateExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.executions.v1beta.CreateExecutionRequest,
+                    com.google.cloud.workflows.executions.v1beta.Execution>(
+                    service, METHODID_CREATE_EXECUTION)))
+        .addMethod(
+            getGetExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.executions.v1beta.GetExecutionRequest,
+                    com.google.cloud.workflows.executions.v1beta.Execution>(
+                    service, METHODID_GET_EXECUTION)))
+        .addMethod(
+            getCancelExecutionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.executions.v1beta.CancelExecutionRequest,
+                    com.google.cloud.workflows.executions.v1beta.Execution>(
+                    service, METHODID_CANCEL_EXECUTION)))
+        .build();
+  }
+
   private abstract static class ExecutionsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-workflows/README.md b/java-workflows/README.md
index 5fd9b6331551..593381c62762 100644
--- a/java-workflows/README.md
+++ b/java-workflows/README.md
@@ -13,9 +13,9 @@ Java idiomatic client for [Cloud Workflows][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 Workflows [API enabled][enable-api].
 You will need to [enable billing][enable-billing] to use Google Cloud Workflows.
 [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-workflows.svg
-[maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-workflows&core=gav
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workflows/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-workflows/grpc-google-cloud-workflows-v1/src/main/java/com/google/cloud/workflows/v1/WorkflowsGrpc.java b/java-workflows/grpc-google-cloud-workflows-v1/src/main/java/com/google/cloud/workflows/v1/WorkflowsGrpc.java
index 84b65fcbc397..771d1cc04b15 100644
--- a/java-workflows/grpc-google-cloud-workflows-v1/src/main/java/com/google/cloud/workflows/v1/WorkflowsGrpc.java
+++ b/java-workflows/grpc-google-cloud-workflows-v1/src/main/java/com/google/cloud/workflows/v1/WorkflowsGrpc.java
@@ -301,7 +301,7 @@ public WorkflowsFutureStub newStub(
    * networking interruptions.
    * 
*/ - public abstract static class WorkflowsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -311,7 +311,7 @@ public abstract static class WorkflowsImplBase implements io.grpc.BindableServic * The default order is not specified. *
*/ - public void listWorkflows( + default void listWorkflows( com.google.cloud.workflows.v1.ListWorkflowsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -326,7 +326,7 @@ public void listWorkflows( * Gets details of a single Workflow. *
*/ - public void getWorkflow( + default void getWorkflow( com.google.cloud.workflows.v1.GetWorkflowRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -342,7 +342,7 @@ public void getWorkflow( * will return [ALREADY_EXISTS][google.rpc.Code.ALREADY_EXISTS] error. * */ - public void createWorkflow( + default void createWorkflow( com.google.cloud.workflows.v1.CreateWorkflowRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -358,7 +358,7 @@ public void createWorkflow( * workflow. * */ - public void deleteWorkflow( + default void deleteWorkflow( com.google.cloud.workflows.v1.DeleteWorkflowRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -376,53 +376,33 @@ public void deleteWorkflow( * in new workflow executions. * */ - public void updateWorkflow( + default void updateWorkflow( com.google.cloud.workflows.v1.UpdateWorkflowRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getUpdateWorkflowMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Workflows. + * + *
+   * Workflows is used to deploy and execute workflow programs.
+   * Workflows makes sure the program executes reliably, despite hardware and
+   * networking interruptions.
+   * 
+ */ + public abstract static class WorkflowsImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListWorkflowsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1.ListWorkflowsRequest, - com.google.cloud.workflows.v1.ListWorkflowsResponse>( - this, METHODID_LIST_WORKFLOWS))) - .addMethod( - getGetWorkflowMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1.GetWorkflowRequest, - com.google.cloud.workflows.v1.Workflow>(this, METHODID_GET_WORKFLOW))) - .addMethod( - getCreateWorkflowMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1.CreateWorkflowRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_WORKFLOW))) - .addMethod( - getDeleteWorkflowMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1.DeleteWorkflowRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_WORKFLOW))) - .addMethod( - getUpdateWorkflowMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1.UpdateWorkflowRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_WORKFLOW))) - .build(); + return WorkflowsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Workflows. * *
    * Workflows is used to deploy and execute workflow programs.
@@ -532,7 +512,7 @@ public void updateWorkflow(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Workflows.
    *
    * 
    * Workflows is used to deploy and execute workflow programs.
@@ -628,7 +608,7 @@ public com.google.longrunning.Operation updateWorkflow(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Workflows.
    *
    * 
    * Workflows is used to deploy and execute workflow programs.
@@ -735,10 +715,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final WorkflowsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(WorkflowsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -790,6 +770,42 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListWorkflowsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1.ListWorkflowsRequest,
+                    com.google.cloud.workflows.v1.ListWorkflowsResponse>(
+                    service, METHODID_LIST_WORKFLOWS)))
+        .addMethod(
+            getGetWorkflowMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1.GetWorkflowRequest,
+                    com.google.cloud.workflows.v1.Workflow>(service, METHODID_GET_WORKFLOW)))
+        .addMethod(
+            getCreateWorkflowMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1.CreateWorkflowRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_WORKFLOW)))
+        .addMethod(
+            getDeleteWorkflowMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1.DeleteWorkflowRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_WORKFLOW)))
+        .addMethod(
+            getUpdateWorkflowMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1.UpdateWorkflowRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_WORKFLOW)))
+        .build();
+  }
+
   private abstract static class WorkflowsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-workflows/grpc-google-cloud-workflows-v1beta/src/main/java/com/google/cloud/workflows/v1beta/WorkflowsGrpc.java b/java-workflows/grpc-google-cloud-workflows-v1beta/src/main/java/com/google/cloud/workflows/v1beta/WorkflowsGrpc.java
index d1977c879da5..9ad6ae9fe72e 100644
--- a/java-workflows/grpc-google-cloud-workflows-v1beta/src/main/java/com/google/cloud/workflows/v1beta/WorkflowsGrpc.java
+++ b/java-workflows/grpc-google-cloud-workflows-v1beta/src/main/java/com/google/cloud/workflows/v1beta/WorkflowsGrpc.java
@@ -306,7 +306,7 @@ public WorkflowsFutureStub newStub(
    * networking interruptions.
    * 
*/ - public abstract static class WorkflowsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -316,7 +316,7 @@ public abstract static class WorkflowsImplBase implements io.grpc.BindableServic * The default order is not specified. *
*/ - public void listWorkflows( + default void listWorkflows( com.google.cloud.workflows.v1beta.ListWorkflowsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -331,7 +331,7 @@ public void listWorkflows( * Gets details of a single Workflow. *
*/ - public void getWorkflow( + default void getWorkflow( com.google.cloud.workflows.v1beta.GetWorkflowRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -347,7 +347,7 @@ public void getWorkflow( * will return [ALREADY_EXISTS][google.rpc.Code.ALREADY_EXISTS] error. * */ - public void createWorkflow( + default void createWorkflow( com.google.cloud.workflows.v1beta.CreateWorkflowRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -363,7 +363,7 @@ public void createWorkflow( * workflow. * */ - public void deleteWorkflow( + default void deleteWorkflow( com.google.cloud.workflows.v1beta.DeleteWorkflowRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -381,53 +381,33 @@ public void deleteWorkflow( * in new workflow executions. * */ - public void updateWorkflow( + default void updateWorkflow( com.google.cloud.workflows.v1beta.UpdateWorkflowRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getUpdateWorkflowMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Workflows. + * + *
+   * Workflows is used to deploy and execute workflow programs.
+   * Workflows makes sure the program executes reliably, despite hardware and
+   * networking interruptions.
+   * 
+ */ + public abstract static class WorkflowsImplBase implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListWorkflowsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1beta.ListWorkflowsRequest, - com.google.cloud.workflows.v1beta.ListWorkflowsResponse>( - this, METHODID_LIST_WORKFLOWS))) - .addMethod( - getGetWorkflowMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1beta.GetWorkflowRequest, - com.google.cloud.workflows.v1beta.Workflow>(this, METHODID_GET_WORKFLOW))) - .addMethod( - getCreateWorkflowMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1beta.CreateWorkflowRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_WORKFLOW))) - .addMethod( - getDeleteWorkflowMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1beta.DeleteWorkflowRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_WORKFLOW))) - .addMethod( - getUpdateWorkflowMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workflows.v1beta.UpdateWorkflowRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_WORKFLOW))) - .build(); + return WorkflowsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Workflows. * *
    * Workflows is used to deploy and execute workflow programs.
@@ -537,7 +517,7 @@ public void updateWorkflow(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Workflows.
    *
    * 
    * Workflows is used to deploy and execute workflow programs.
@@ -633,7 +613,7 @@ public com.google.longrunning.Operation updateWorkflow(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Workflows.
    *
    * 
    * Workflows is used to deploy and execute workflow programs.
@@ -740,10 +720,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final WorkflowsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(WorkflowsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -795,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(
+            getListWorkflowsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1beta.ListWorkflowsRequest,
+                    com.google.cloud.workflows.v1beta.ListWorkflowsResponse>(
+                    service, METHODID_LIST_WORKFLOWS)))
+        .addMethod(
+            getGetWorkflowMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1beta.GetWorkflowRequest,
+                    com.google.cloud.workflows.v1beta.Workflow>(service, METHODID_GET_WORKFLOW)))
+        .addMethod(
+            getCreateWorkflowMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1beta.CreateWorkflowRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_WORKFLOW)))
+        .addMethod(
+            getDeleteWorkflowMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1beta.DeleteWorkflowRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_WORKFLOW)))
+        .addMethod(
+            getUpdateWorkflowMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workflows.v1beta.UpdateWorkflowRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_WORKFLOW)))
+        .build();
+  }
+
   private abstract static class WorkflowsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/java-workstations/README.md b/java-workstations/README.md
index beb4da4dc9da..4535e46d513b 100644
--- a/java-workstations/README.md
+++ b/java-workstations/README.md
@@ -16,27 +16,29 @@ Java idiomatic client for [Cloud Workstations][product-docs].
 
 
 If you are using Maven, add this to your pom.xml file:
+
 
 
 ```xml
 
   com.google.cloud
   google-cloud-workstations
-  0.0.0
+  0.1.0
 
 ```
 
 If you are using Gradle without BOM, add this to your dependencies:
 
 ```Groovy
-implementation 'com.google.cloud:google-cloud-workstations:0.0.0'
+implementation 'com.google.cloud:google-cloud-workstations:0.1.0'
 ```
 
 If you are using SBT, add this to your dependencies:
 
 ```Scala
-libraryDependencies += "com.google.cloud" % "google-cloud-workstations" % "0.0.0"
+libraryDependencies += "com.google.cloud" % "google-cloud-workstations" % "0.1.0"
 ```
+
 
 ## Authentication
 
@@ -177,7 +179,7 @@ Java is a registered trademark of Oracle and/or its affiliates.
 [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-workstations/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-workstations.svg
-[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workstations/0.0.0
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-workstations/0.1.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
diff --git a/java-workstations/grpc-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsGrpc.java b/java-workstations/grpc-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsGrpc.java
index ee57f0d9be96..383b2de9423b 100644
--- a/java-workstations/grpc-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsGrpc.java
+++ b/java-workstations/grpc-google-cloud-workstations-v1beta/src/main/java/com/google/cloud/workstations/v1beta/WorkstationsGrpc.java
@@ -1052,7 +1052,7 @@ public WorkstationsFutureStub newStub(
    * Service for interacting with Cloud Workstations.
    * 
*/ - public abstract static class WorkstationsImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -1061,7 +1061,7 @@ public abstract static class WorkstationsImplBase implements io.grpc.BindableSer * Returns the requested workstation cluster. *
*/ - public void getWorkstationCluster( + default void getWorkstationCluster( com.google.cloud.workstations.v1beta.GetWorkstationClusterRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1076,7 +1076,7 @@ public void getWorkstationCluster( * Returns all workstation clusters in the specified location. *
*/ - public void listWorkstationClusters( + default void listWorkstationClusters( com.google.cloud.workstations.v1beta.ListWorkstationClustersRequest request, io.grpc.stub.StreamObserver< com.google.cloud.workstations.v1beta.ListWorkstationClustersResponse> @@ -1092,7 +1092,7 @@ public void listWorkstationClusters( * Creates a new workstation cluster. * */ - public void createWorkstationCluster( + default void createWorkstationCluster( com.google.cloud.workstations.v1beta.CreateWorkstationClusterRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1106,7 +1106,7 @@ public void createWorkstationCluster( * Updates an existing workstation cluster. * */ - public void updateWorkstationCluster( + default void updateWorkstationCluster( com.google.cloud.workstations.v1beta.UpdateWorkstationClusterRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1120,7 +1120,7 @@ public void updateWorkstationCluster( * Deletes the specified workstation cluster. * */ - public void deleteWorkstationCluster( + default void deleteWorkstationCluster( com.google.cloud.workstations.v1beta.DeleteWorkstationClusterRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1134,7 +1134,7 @@ public void deleteWorkstationCluster( * Returns the requested workstation configuration. * */ - public void getWorkstationConfig( + default void getWorkstationConfig( com.google.cloud.workstations.v1beta.GetWorkstationConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1149,7 +1149,7 @@ public void getWorkstationConfig( * Returns all workstation configurations in the specified cluster. * */ - public void listWorkstationConfigs( + default void listWorkstationConfigs( com.google.cloud.workstations.v1beta.ListWorkstationConfigsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.workstations.v1beta.ListWorkstationConfigsResponse> @@ -1166,7 +1166,7 @@ public void listWorkstationConfigs( * the caller has the "workstations.workstation.create" permission. * */ - public void listUsableWorkstationConfigs( + default void listUsableWorkstationConfigs( com.google.cloud.workstations.v1beta.ListUsableWorkstationConfigsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.workstations.v1beta.ListUsableWorkstationConfigsResponse> @@ -1182,7 +1182,7 @@ public void listUsableWorkstationConfigs( * Creates a new workstation configuration. * */ - public void createWorkstationConfig( + default void createWorkstationConfig( com.google.cloud.workstations.v1beta.CreateWorkstationConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1196,7 +1196,7 @@ public void createWorkstationConfig( * Updates an existing workstation configuration. * */ - public void updateWorkstationConfig( + default void updateWorkstationConfig( com.google.cloud.workstations.v1beta.UpdateWorkstationConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1210,7 +1210,7 @@ public void updateWorkstationConfig( * Deletes the specified workstation configuration. * */ - public void deleteWorkstationConfig( + default void deleteWorkstationConfig( com.google.cloud.workstations.v1beta.DeleteWorkstationConfigRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1224,7 +1224,7 @@ public void deleteWorkstationConfig( * Returns the requested workstation. * */ - public void getWorkstation( + default void getWorkstation( com.google.cloud.workstations.v1beta.GetWorkstationRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1239,7 +1239,7 @@ public void getWorkstation( * Returns all Workstations using the specified config. * */ - public void listWorkstations( + default void listWorkstations( com.google.cloud.workstations.v1beta.ListWorkstationsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1255,7 +1255,7 @@ public void listWorkstations( * the "workstations.workstations.use" permission. * */ - public void listUsableWorkstations( + default void listUsableWorkstations( com.google.cloud.workstations.v1beta.ListUsableWorkstationsRequest request, io.grpc.stub.StreamObserver< com.google.cloud.workstations.v1beta.ListUsableWorkstationsResponse> @@ -1271,7 +1271,7 @@ public void listUsableWorkstations( * Creates a new workstation. * */ - public void createWorkstation( + default void createWorkstation( com.google.cloud.workstations.v1beta.CreateWorkstationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1285,7 +1285,7 @@ public void createWorkstation( * Updates an existing workstation. * */ - public void updateWorkstation( + default void updateWorkstation( com.google.cloud.workstations.v1beta.UpdateWorkstationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1299,7 +1299,7 @@ public void updateWorkstation( * Deletes the specified workstation. * */ - public void deleteWorkstation( + default void deleteWorkstation( com.google.cloud.workstations.v1beta.DeleteWorkstationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1313,7 +1313,7 @@ public void deleteWorkstation( * Starts running a workstation so that users can connect to it. * */ - public void startWorkstation( + default void startWorkstation( com.google.cloud.workstations.v1beta.StartWorkstationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1327,7 +1327,7 @@ public void startWorkstation( * Stops running a workstation, reducing costs. * */ - public void stopWorkstation( + default void stopWorkstation( com.google.cloud.workstations.v1beta.StopWorkstationRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1342,7 +1342,7 @@ public void stopWorkstation( * authorized traffic to a workstation. * */ - public void generateAccessToken( + default void generateAccessToken( com.google.cloud.workstations.v1beta.GenerateAccessTokenRequest request, io.grpc.stub.StreamObserver< com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse> @@ -1350,145 +1350,26 @@ public void generateAccessToken( io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getGenerateAccessTokenMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service Workstations. + * + *
+   * Service for interacting with Cloud Workstations.
+   * 
+ */ + public abstract static class WorkstationsImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getGetWorkstationClusterMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.GetWorkstationClusterRequest, - com.google.cloud.workstations.v1beta.WorkstationCluster>( - this, METHODID_GET_WORKSTATION_CLUSTER))) - .addMethod( - getListWorkstationClustersMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.ListWorkstationClustersRequest, - com.google.cloud.workstations.v1beta.ListWorkstationClustersResponse>( - this, METHODID_LIST_WORKSTATION_CLUSTERS))) - .addMethod( - getCreateWorkstationClusterMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.CreateWorkstationClusterRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_WORKSTATION_CLUSTER))) - .addMethod( - getUpdateWorkstationClusterMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.UpdateWorkstationClusterRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_WORKSTATION_CLUSTER))) - .addMethod( - getDeleteWorkstationClusterMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.DeleteWorkstationClusterRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_WORKSTATION_CLUSTER))) - .addMethod( - getGetWorkstationConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.GetWorkstationConfigRequest, - com.google.cloud.workstations.v1beta.WorkstationConfig>( - this, METHODID_GET_WORKSTATION_CONFIG))) - .addMethod( - getListWorkstationConfigsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.ListWorkstationConfigsRequest, - com.google.cloud.workstations.v1beta.ListWorkstationConfigsResponse>( - this, METHODID_LIST_WORKSTATION_CONFIGS))) - .addMethod( - getListUsableWorkstationConfigsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.ListUsableWorkstationConfigsRequest, - com.google.cloud.workstations.v1beta.ListUsableWorkstationConfigsResponse>( - this, METHODID_LIST_USABLE_WORKSTATION_CONFIGS))) - .addMethod( - getCreateWorkstationConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.CreateWorkstationConfigRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_WORKSTATION_CONFIG))) - .addMethod( - getUpdateWorkstationConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.UpdateWorkstationConfigRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_WORKSTATION_CONFIG))) - .addMethod( - getDeleteWorkstationConfigMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.DeleteWorkstationConfigRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_WORKSTATION_CONFIG))) - .addMethod( - getGetWorkstationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.GetWorkstationRequest, - com.google.cloud.workstations.v1beta.Workstation>( - this, METHODID_GET_WORKSTATION))) - .addMethod( - getListWorkstationsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.ListWorkstationsRequest, - com.google.cloud.workstations.v1beta.ListWorkstationsResponse>( - this, METHODID_LIST_WORKSTATIONS))) - .addMethod( - getListUsableWorkstationsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.ListUsableWorkstationsRequest, - com.google.cloud.workstations.v1beta.ListUsableWorkstationsResponse>( - this, METHODID_LIST_USABLE_WORKSTATIONS))) - .addMethod( - getCreateWorkstationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.CreateWorkstationRequest, - com.google.longrunning.Operation>(this, METHODID_CREATE_WORKSTATION))) - .addMethod( - getUpdateWorkstationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.UpdateWorkstationRequest, - com.google.longrunning.Operation>(this, METHODID_UPDATE_WORKSTATION))) - .addMethod( - getDeleteWorkstationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.DeleteWorkstationRequest, - com.google.longrunning.Operation>(this, METHODID_DELETE_WORKSTATION))) - .addMethod( - getStartWorkstationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.StartWorkstationRequest, - com.google.longrunning.Operation>(this, METHODID_START_WORKSTATION))) - .addMethod( - getStopWorkstationMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.StopWorkstationRequest, - com.google.longrunning.Operation>(this, METHODID_STOP_WORKSTATION))) - .addMethod( - getGenerateAccessTokenMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.cloud.workstations.v1beta.GenerateAccessTokenRequest, - com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse>( - this, METHODID_GENERATE_ACCESS_TOKEN))) - .build(); + return WorkstationsGrpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service Workstations. * *
    * Service for interacting with Cloud Workstations.
@@ -1844,7 +1725,7 @@ public void generateAccessToken(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service Workstations.
    *
    * 
    * Service for interacting with Cloud Workstations.
@@ -2131,7 +2012,7 @@ public com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse generate
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service Workstations.
    *
    * 
    * Service for interacting with Cloud Workstations.
@@ -2461,10 +2342,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final WorkstationsImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(WorkstationsImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -2604,6 +2485,143 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getGetWorkstationClusterMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.GetWorkstationClusterRequest,
+                    com.google.cloud.workstations.v1beta.WorkstationCluster>(
+                    service, METHODID_GET_WORKSTATION_CLUSTER)))
+        .addMethod(
+            getListWorkstationClustersMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.ListWorkstationClustersRequest,
+                    com.google.cloud.workstations.v1beta.ListWorkstationClustersResponse>(
+                    service, METHODID_LIST_WORKSTATION_CLUSTERS)))
+        .addMethod(
+            getCreateWorkstationClusterMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.CreateWorkstationClusterRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_CREATE_WORKSTATION_CLUSTER)))
+        .addMethod(
+            getUpdateWorkstationClusterMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.UpdateWorkstationClusterRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_UPDATE_WORKSTATION_CLUSTER)))
+        .addMethod(
+            getDeleteWorkstationClusterMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.DeleteWorkstationClusterRequest,
+                    com.google.longrunning.Operation>(
+                    service, METHODID_DELETE_WORKSTATION_CLUSTER)))
+        .addMethod(
+            getGetWorkstationConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.GetWorkstationConfigRequest,
+                    com.google.cloud.workstations.v1beta.WorkstationConfig>(
+                    service, METHODID_GET_WORKSTATION_CONFIG)))
+        .addMethod(
+            getListWorkstationConfigsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.ListWorkstationConfigsRequest,
+                    com.google.cloud.workstations.v1beta.ListWorkstationConfigsResponse>(
+                    service, METHODID_LIST_WORKSTATION_CONFIGS)))
+        .addMethod(
+            getListUsableWorkstationConfigsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.ListUsableWorkstationConfigsRequest,
+                    com.google.cloud.workstations.v1beta.ListUsableWorkstationConfigsResponse>(
+                    service, METHODID_LIST_USABLE_WORKSTATION_CONFIGS)))
+        .addMethod(
+            getCreateWorkstationConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.CreateWorkstationConfigRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_WORKSTATION_CONFIG)))
+        .addMethod(
+            getUpdateWorkstationConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.UpdateWorkstationConfigRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_WORKSTATION_CONFIG)))
+        .addMethod(
+            getDeleteWorkstationConfigMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.DeleteWorkstationConfigRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_WORKSTATION_CONFIG)))
+        .addMethod(
+            getGetWorkstationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.GetWorkstationRequest,
+                    com.google.cloud.workstations.v1beta.Workstation>(
+                    service, METHODID_GET_WORKSTATION)))
+        .addMethod(
+            getListWorkstationsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.ListWorkstationsRequest,
+                    com.google.cloud.workstations.v1beta.ListWorkstationsResponse>(
+                    service, METHODID_LIST_WORKSTATIONS)))
+        .addMethod(
+            getListUsableWorkstationsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.ListUsableWorkstationsRequest,
+                    com.google.cloud.workstations.v1beta.ListUsableWorkstationsResponse>(
+                    service, METHODID_LIST_USABLE_WORKSTATIONS)))
+        .addMethod(
+            getCreateWorkstationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.CreateWorkstationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_CREATE_WORKSTATION)))
+        .addMethod(
+            getUpdateWorkstationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.UpdateWorkstationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_UPDATE_WORKSTATION)))
+        .addMethod(
+            getDeleteWorkstationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.DeleteWorkstationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_DELETE_WORKSTATION)))
+        .addMethod(
+            getStartWorkstationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.StartWorkstationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_START_WORKSTATION)))
+        .addMethod(
+            getStopWorkstationMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.StopWorkstationRequest,
+                    com.google.longrunning.Operation>(service, METHODID_STOP_WORKSTATION)))
+        .addMethod(
+            getGenerateAccessTokenMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.cloud.workstations.v1beta.GenerateAccessTokenRequest,
+                    com.google.cloud.workstations.v1beta.GenerateAccessTokenResponse>(
+                    service, METHODID_GENERATE_ACCESS_TOKEN)))
+        .build();
+  }
+
   private abstract static class WorkstationsBaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {