diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml index 91bb69e63..cd0bf038c 100644 --- a/.github/.OwlBot.lock.yaml +++ b/.github/.OwlBot.lock.yaml @@ -13,4 +13,4 @@ # limitations under the License. docker: image: gcr.io/cloud-devrel-public-resources/owlbot-java:latest - digest: sha256:bf5639d265d70f6137d57d42ae781a6f4e26d4085ff4e018e71350480f9b3996 + digest: sha256:944c07e458ce227ca49a423affedf088e31e2ee70908dd21682238d58f1beb60 \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index a2f3250be..0af44e2b3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [3.14.8](https://github.com/googleapis/java-logging/compare/v3.14.7...v3.14.8) (2023-04-14) + + +### Dependencies + +* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.7.0 ([#1318](https://github.com/googleapis/java-logging/issues/1318)) ([973d260](https://github.com/googleapis/java-logging/commit/973d2601bc1639b09d4dd89dd2b6f90cd1b779e9)) + ## [3.14.7](https://github.com/googleapis/java-logging/compare/v3.14.6...v3.14.7) (2023-03-28) diff --git a/README.md b/README.md index 9543f2b5d..371f9c22d 100644 --- a/README.md +++ b/README.md @@ -36,14 +36,15 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: ``` -If you are using Maven without BOM, add this to your dependencies: +If you are using Maven without the BOM, add this to your dependencies: + ```xml com.google.cloud google-cloud-logging - 3.14.6 + 3.14.7 ``` @@ -51,20 +52,20 @@ If you are using Maven without BOM, add this to your dependencies: If you are using Gradle 5.x or later, add this to your dependencies: ```Groovy -implementation platform('com.google.cloud:libraries-bom:26.11.0') +implementation platform('com.google.cloud:libraries-bom:26.12.0') implementation 'com.google.cloud:google-cloud-logging' ``` If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-logging:3.14.6' +implementation 'com.google.cloud:google-cloud-logging:3.14.7' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-logging" % "3.14.6" +libraryDependencies += "com.google.cloud" % "google-cloud-logging" % "3.14.7" ``` @@ -451,7 +452,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-logging/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-logging.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-logging/3.14.6 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-logging/3.14.7 [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 @@ -459,7 +460,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [developer-console]: https://console.developers.google.com/ [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects [cloud-cli]: https://cloud.google.com/cli -[troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting +[troubleshooting]: https://github.com/googleapis/google-cloud-java/blob/main/TROUBLESHOOTING.md [contributing]: https://github.com/googleapis/java-logging/blob/main/CONTRIBUTING.md [code-of-conduct]: https://github.com/googleapis/java-logging/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct [license]: https://github.com/googleapis/java-logging/blob/main/LICENSE diff --git a/google-cloud-logging-bom/pom.xml b/google-cloud-logging-bom/pom.xml index bc27f1f4c..6f5f97d01 100644 --- a/google-cloud-logging-bom/pom.xml +++ b/google-cloud-logging-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-logging-bom - 3.14.7 + 3.14.8 pom com.google.cloud @@ -53,17 +53,17 @@ com.google.cloud google-cloud-logging - 3.14.7 + 3.14.8 com.google.api.grpc grpc-google-cloud-logging-v2 - 0.103.7 + 0.103.8 com.google.api.grpc proto-google-cloud-logging-v2 - 0.103.7 + 0.103.8 diff --git a/google-cloud-logging/pom.xml b/google-cloud-logging/pom.xml index 02aed7088..9c50f87fa 100644 --- a/google-cloud-logging/pom.xml +++ b/google-cloud-logging/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-logging - 3.14.7 + 3.14.8 jar Google Cloud Logging https://github.com/googleapis/java-logging @@ -11,7 +11,7 @@ com.google.cloud google-cloud-logging-parent - 3.14.7 + 3.14.8 google-cloud-logging diff --git a/google-cloud-logging/src/main/java/com/google/cloud/logging/Instrumentation.java b/google-cloud-logging/src/main/java/com/google/cloud/logging/Instrumentation.java index 7fbaf2539..70f0583da 100644 --- a/google-cloud-logging/src/main/java/com/google/cloud/logging/Instrumentation.java +++ b/google-cloud-logging/src/main/java/com/google/cloud/logging/Instrumentation.java @@ -41,7 +41,7 @@ public final class Instrumentation { // See // https://github.com/googleapis/release-please/blob/main/docs/customizing.md#updating-arbitrary-files // {x-version-update-start:google-cloud-logging:current} - public static final String DEFAULT_INSTRUMENTATION_VERSION = "3.14.7"; + public static final String DEFAULT_INSTRUMENTATION_VERSION = "3.14.8"; // {x-version-update-end} public static final String INSTRUMENTATION_LOG_NAME = "diagnostic-log"; public static final int MAX_DIAGNOSTIC_VALUE_LENGTH = 14; diff --git a/grpc-google-cloud-logging-v2/pom.xml b/grpc-google-cloud-logging-v2/pom.xml index 356505c18..bb0bbf78a 100644 --- a/grpc-google-cloud-logging-v2/pom.xml +++ b/grpc-google-cloud-logging-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-logging-v2 - 0.103.7 + 0.103.8 grpc-google-cloud-logging-v2 GRPC library for grpc-google-cloud-logging-v2 com.google.cloud google-cloud-logging-parent - 3.14.7 + 3.14.8 diff --git a/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/ConfigServiceV2Grpc.java b/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/ConfigServiceV2Grpc.java index 7345bd826..3519aaf66 100644 --- a/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/ConfigServiceV2Grpc.java +++ b/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/ConfigServiceV2Grpc.java @@ -1146,7 +1146,7 @@ public ConfigServiceV2FutureStub newStub( * Service for configuring sinks used to route log entries. * */ - public abstract static class ConfigServiceV2ImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -1155,7 +1155,7 @@ public abstract static class ConfigServiceV2ImplBase implements io.grpc.Bindable * Lists log buckets. * */ - public void listBuckets( + default void listBuckets( com.google.logging.v2.ListBucketsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1169,7 +1169,7 @@ public void listBuckets( * Gets a log bucket. * */ - public void getBucket( + default void getBucket( com.google.logging.v2.GetBucketRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetBucketMethod(), responseObserver); @@ -1183,7 +1183,7 @@ public void getBucket( * has been created, the bucket's location cannot be changed. * */ - public void createBucket( + default void createBucket( com.google.logging.v2.CreateBucketRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1203,7 +1203,7 @@ public void createBucket( * After a bucket has been created, the bucket's location cannot be changed. * */ - public void updateBucket( + default void updateBucket( com.google.logging.v2.UpdateBucketRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1220,7 +1220,7 @@ public void updateBucket( * will be permanently deleted. * */ - public void deleteBucket( + default void deleteBucket( com.google.logging.v2.DeleteBucketRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1235,7 +1235,7 @@ public void deleteBucket( * within the grace period of 7 days. * */ - public void undeleteBucket( + default void undeleteBucket( com.google.logging.v2.UndeleteBucketRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1249,7 +1249,7 @@ public void undeleteBucket( * Lists views on a log bucket. * */ - public void listViews( + default void listViews( com.google.logging.v2.ListViewsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getListViewsMethod(), responseObserver); @@ -1262,7 +1262,7 @@ public void listViews( * Gets a view on a log bucket.. * */ - public void getView( + default void getView( com.google.logging.v2.GetViewRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetViewMethod(), responseObserver); @@ -1276,7 +1276,7 @@ public void getView( * maximum of 30 views. * */ - public void createView( + default void createView( com.google.logging.v2.CreateViewRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getCreateViewMethod(), responseObserver); @@ -1293,7 +1293,7 @@ public void createView( * few minutes. * */ - public void updateView( + default void updateView( com.google.logging.v2.UpdateViewRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getUpdateViewMethod(), responseObserver); @@ -1309,7 +1309,7 @@ public void updateView( * few minutes. * */ - public void deleteView( + default void deleteView( com.google.logging.v2.DeleteViewRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getDeleteViewMethod(), responseObserver); @@ -1322,7 +1322,7 @@ public void deleteView( * Lists sinks. * */ - public void listSinks( + default void listSinks( com.google.logging.v2.ListSinksRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getListSinksMethod(), responseObserver); @@ -1335,7 +1335,7 @@ public void listSinks( * Gets a sink. * */ - public void getSink( + default void getSink( com.google.logging.v2.GetSinkRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getGetSinkMethod(), responseObserver); @@ -1351,7 +1351,7 @@ public void getSink( * export log entries only from the resource owning the sink. * */ - public void createSink( + default void createSink( com.google.logging.v2.CreateSinkRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getCreateSinkMethod(), responseObserver); @@ -1367,7 +1367,7 @@ public void createSink( * `unique_writer_identity` field. * */ - public void updateSink( + default void updateSink( com.google.logging.v2.UpdateSinkRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getUpdateSinkMethod(), responseObserver); @@ -1381,7 +1381,7 @@ public void updateSink( * service account is also deleted. * */ - public void deleteSink( + default void deleteSink( com.google.logging.v2.DeleteSinkRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getDeleteSinkMethod(), responseObserver); @@ -1394,7 +1394,7 @@ public void deleteSink( * Lists all the exclusions on the _Default sink in a parent resource. * */ - public void listExclusions( + default void listExclusions( com.google.logging.v2.ListExclusionsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -1409,7 +1409,7 @@ public void listExclusions( * Gets the description of an exclusion in the _Default sink. * */ - public void getExclusion( + default void getExclusion( com.google.logging.v2.GetExclusionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1425,7 +1425,7 @@ public void getExclusion( * can have up to 10 exclusions in a resource. * */ - public void createExclusion( + default void createExclusion( com.google.logging.v2.CreateExclusionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1440,7 +1440,7 @@ public void createExclusion( * sink. * */ - public void updateExclusion( + default void updateExclusion( com.google.logging.v2.UpdateExclusionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1454,7 +1454,7 @@ public void updateExclusion( * Deletes an exclusion in the _Default sink. * */ - public void deleteExclusion( + default void deleteExclusion( com.google.logging.v2.DeleteExclusionRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1475,7 +1475,7 @@ public void deleteExclusion( * for more information. * */ - public void getCmekSettings( + default void getCmekSettings( com.google.logging.v2.GetCmekSettingsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1500,7 +1500,7 @@ public void getCmekSettings( * for more information. * */ - public void updateCmekSettings( + default void updateCmekSettings( com.google.logging.v2.UpdateCmekSettingsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1521,7 +1521,7 @@ public void updateCmekSettings( * for more information. * */ - public void getSettings( + default void getSettings( com.google.logging.v2.GetSettingsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1547,7 +1547,7 @@ public void getSettings( * for more information. * */ - public void updateSettings( + default void updateSettings( com.google.logging.v2.UpdateSettingsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -1561,179 +1561,32 @@ public void updateSettings( * Copies a set of log entries from a log bucket to a Cloud Storage bucket. * */ - public void copyLogEntries( + default void copyLogEntries( com.google.logging.v2.CopyLogEntriesRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getCopyLogEntriesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service ConfigServiceV2. + * + *
+   * Service for configuring sinks used to route log entries.
+   * 
+ */ + public abstract static class ConfigServiceV2ImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListBucketsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.ListBucketsRequest, - com.google.logging.v2.ListBucketsResponse>(this, METHODID_LIST_BUCKETS))) - .addMethod( - getGetBucketMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.GetBucketRequest, com.google.logging.v2.LogBucket>( - this, METHODID_GET_BUCKET))) - .addMethod( - getCreateBucketMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.CreateBucketRequest, com.google.logging.v2.LogBucket>( - this, METHODID_CREATE_BUCKET))) - .addMethod( - getUpdateBucketMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.UpdateBucketRequest, com.google.logging.v2.LogBucket>( - this, METHODID_UPDATE_BUCKET))) - .addMethod( - getDeleteBucketMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.DeleteBucketRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_BUCKET))) - .addMethod( - getUndeleteBucketMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.UndeleteBucketRequest, com.google.protobuf.Empty>( - this, METHODID_UNDELETE_BUCKET))) - .addMethod( - getListViewsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.ListViewsRequest, - com.google.logging.v2.ListViewsResponse>(this, METHODID_LIST_VIEWS))) - .addMethod( - getGetViewMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.GetViewRequest, com.google.logging.v2.LogView>( - this, METHODID_GET_VIEW))) - .addMethod( - getCreateViewMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.CreateViewRequest, com.google.logging.v2.LogView>( - this, METHODID_CREATE_VIEW))) - .addMethod( - getUpdateViewMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.UpdateViewRequest, com.google.logging.v2.LogView>( - this, METHODID_UPDATE_VIEW))) - .addMethod( - getDeleteViewMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.DeleteViewRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_VIEW))) - .addMethod( - getListSinksMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.ListSinksRequest, - com.google.logging.v2.ListSinksResponse>(this, METHODID_LIST_SINKS))) - .addMethod( - getGetSinkMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.GetSinkRequest, com.google.logging.v2.LogSink>( - this, METHODID_GET_SINK))) - .addMethod( - getCreateSinkMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.CreateSinkRequest, com.google.logging.v2.LogSink>( - this, METHODID_CREATE_SINK))) - .addMethod( - getUpdateSinkMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.UpdateSinkRequest, com.google.logging.v2.LogSink>( - this, METHODID_UPDATE_SINK))) - .addMethod( - getDeleteSinkMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.DeleteSinkRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_SINK))) - .addMethod( - getListExclusionsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.ListExclusionsRequest, - com.google.logging.v2.ListExclusionsResponse>( - this, METHODID_LIST_EXCLUSIONS))) - .addMethod( - getGetExclusionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.GetExclusionRequest, - com.google.logging.v2.LogExclusion>(this, METHODID_GET_EXCLUSION))) - .addMethod( - getCreateExclusionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.CreateExclusionRequest, - com.google.logging.v2.LogExclusion>(this, METHODID_CREATE_EXCLUSION))) - .addMethod( - getUpdateExclusionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.UpdateExclusionRequest, - com.google.logging.v2.LogExclusion>(this, METHODID_UPDATE_EXCLUSION))) - .addMethod( - getDeleteExclusionMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.DeleteExclusionRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_EXCLUSION))) - .addMethod( - getGetCmekSettingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.GetCmekSettingsRequest, - com.google.logging.v2.CmekSettings>(this, METHODID_GET_CMEK_SETTINGS))) - .addMethod( - getUpdateCmekSettingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.UpdateCmekSettingsRequest, - com.google.logging.v2.CmekSettings>(this, METHODID_UPDATE_CMEK_SETTINGS))) - .addMethod( - getGetSettingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.GetSettingsRequest, com.google.logging.v2.Settings>( - this, METHODID_GET_SETTINGS))) - .addMethod( - getUpdateSettingsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.UpdateSettingsRequest, com.google.logging.v2.Settings>( - this, METHODID_UPDATE_SETTINGS))) - .addMethod( - getCopyLogEntriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.CopyLogEntriesRequest, - com.google.longrunning.Operation>(this, METHODID_COPY_LOG_ENTRIES))) - .build(); + return ConfigServiceV2Grpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service ConfigServiceV2. * *
    * Service for configuring sinks used to route log entries.
@@ -2213,7 +2066,7 @@ public void copyLogEntries(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service ConfigServiceV2.
    *
    * 
    * Service for configuring sinks used to route log entries.
@@ -2633,7 +2486,7 @@ public com.google.longrunning.Operation copyLogEntries(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service ConfigServiceV2.
    *
    * 
    * Service for configuring sinks used to route log entries.
@@ -3092,10 +2945,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final ConfigServiceV2ImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(ConfigServiceV2ImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -3254,6 +3107,168 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListBucketsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.ListBucketsRequest,
+                    com.google.logging.v2.ListBucketsResponse>(service, METHODID_LIST_BUCKETS)))
+        .addMethod(
+            getGetBucketMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.GetBucketRequest, com.google.logging.v2.LogBucket>(
+                    service, METHODID_GET_BUCKET)))
+        .addMethod(
+            getCreateBucketMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.CreateBucketRequest, com.google.logging.v2.LogBucket>(
+                    service, METHODID_CREATE_BUCKET)))
+        .addMethod(
+            getUpdateBucketMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.UpdateBucketRequest, com.google.logging.v2.LogBucket>(
+                    service, METHODID_UPDATE_BUCKET)))
+        .addMethod(
+            getDeleteBucketMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.DeleteBucketRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_BUCKET)))
+        .addMethod(
+            getUndeleteBucketMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.UndeleteBucketRequest, com.google.protobuf.Empty>(
+                    service, METHODID_UNDELETE_BUCKET)))
+        .addMethod(
+            getListViewsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.ListViewsRequest,
+                    com.google.logging.v2.ListViewsResponse>(service, METHODID_LIST_VIEWS)))
+        .addMethod(
+            getGetViewMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.GetViewRequest, com.google.logging.v2.LogView>(
+                    service, METHODID_GET_VIEW)))
+        .addMethod(
+            getCreateViewMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.CreateViewRequest, com.google.logging.v2.LogView>(
+                    service, METHODID_CREATE_VIEW)))
+        .addMethod(
+            getUpdateViewMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.UpdateViewRequest, com.google.logging.v2.LogView>(
+                    service, METHODID_UPDATE_VIEW)))
+        .addMethod(
+            getDeleteViewMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.DeleteViewRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_VIEW)))
+        .addMethod(
+            getListSinksMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.ListSinksRequest,
+                    com.google.logging.v2.ListSinksResponse>(service, METHODID_LIST_SINKS)))
+        .addMethod(
+            getGetSinkMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.GetSinkRequest, com.google.logging.v2.LogSink>(
+                    service, METHODID_GET_SINK)))
+        .addMethod(
+            getCreateSinkMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.CreateSinkRequest, com.google.logging.v2.LogSink>(
+                    service, METHODID_CREATE_SINK)))
+        .addMethod(
+            getUpdateSinkMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.UpdateSinkRequest, com.google.logging.v2.LogSink>(
+                    service, METHODID_UPDATE_SINK)))
+        .addMethod(
+            getDeleteSinkMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.DeleteSinkRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_SINK)))
+        .addMethod(
+            getListExclusionsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.ListExclusionsRequest,
+                    com.google.logging.v2.ListExclusionsResponse>(
+                    service, METHODID_LIST_EXCLUSIONS)))
+        .addMethod(
+            getGetExclusionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.GetExclusionRequest, com.google.logging.v2.LogExclusion>(
+                    service, METHODID_GET_EXCLUSION)))
+        .addMethod(
+            getCreateExclusionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.CreateExclusionRequest,
+                    com.google.logging.v2.LogExclusion>(service, METHODID_CREATE_EXCLUSION)))
+        .addMethod(
+            getUpdateExclusionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.UpdateExclusionRequest,
+                    com.google.logging.v2.LogExclusion>(service, METHODID_UPDATE_EXCLUSION)))
+        .addMethod(
+            getDeleteExclusionMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.DeleteExclusionRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_EXCLUSION)))
+        .addMethod(
+            getGetCmekSettingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.GetCmekSettingsRequest,
+                    com.google.logging.v2.CmekSettings>(service, METHODID_GET_CMEK_SETTINGS)))
+        .addMethod(
+            getUpdateCmekSettingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.UpdateCmekSettingsRequest,
+                    com.google.logging.v2.CmekSettings>(service, METHODID_UPDATE_CMEK_SETTINGS)))
+        .addMethod(
+            getGetSettingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.GetSettingsRequest, com.google.logging.v2.Settings>(
+                    service, METHODID_GET_SETTINGS)))
+        .addMethod(
+            getUpdateSettingsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.UpdateSettingsRequest, com.google.logging.v2.Settings>(
+                    service, METHODID_UPDATE_SETTINGS)))
+        .addMethod(
+            getCopyLogEntriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.CopyLogEntriesRequest, com.google.longrunning.Operation>(
+                    service, METHODID_COPY_LOG_ENTRIES)))
+        .build();
+  }
+
   private abstract static class ConfigServiceV2BaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/LoggingServiceV2Grpc.java b/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/LoggingServiceV2Grpc.java
index dd74ab68c..3f3d4baae 100644
--- a/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/LoggingServiceV2Grpc.java
+++ b/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/LoggingServiceV2Grpc.java
@@ -348,7 +348,7 @@ public LoggingServiceV2FutureStub newStub(
    * Service for ingesting and querying logs.
    * 
*/ - public abstract static class LoggingServiceV2ImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -360,7 +360,7 @@ public abstract static class LoggingServiceV2ImplBase implements io.grpc.Bindabl * delete operation with a timestamp before the operation will be deleted. *
*/ - public void deleteLog( + default void deleteLog( com.google.logging.v2.DeleteLogRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getDeleteLogMethod(), responseObserver); @@ -379,7 +379,7 @@ public void deleteLog( * folders) *
*/ - public void writeLogEntries( + default void writeLogEntries( com.google.logging.v2.WriteLogEntriesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -397,7 +397,7 @@ public void writeLogEntries( * Logs](https://cloud.google.com/logging/docs/export). * */ - public void listLogEntries( + default void listLogEntries( com.google.logging.v2.ListLogEntriesRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -412,7 +412,7 @@ public void listLogEntries( * Lists the descriptors for monitored resource types used by Logging. * */ - public void listMonitoredResourceDescriptors( + default void listMonitoredResourceDescriptors( com.google.logging.v2.ListMonitoredResourceDescriptorsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -428,7 +428,7 @@ public void listMonitoredResourceDescriptors( * Only logs that have entries are listed. * */ - public void listLogs( + default void listLogs( com.google.logging.v2.ListLogsRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getListLogsMethod(), responseObserver); @@ -442,62 +442,32 @@ public void listLogs( * terminated, it will continue reading logs. * */ - public io.grpc.stub.StreamObserver tailLogEntries( + default io.grpc.stub.StreamObserver tailLogEntries( io.grpc.stub.StreamObserver responseObserver) { return io.grpc.stub.ServerCalls.asyncUnimplementedStreamingCall( getTailLogEntriesMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service LoggingServiceV2. + * + *
+   * Service for ingesting and querying logs.
+   * 
+ */ + public abstract static class LoggingServiceV2ImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getDeleteLogMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.DeleteLogRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_LOG))) - .addMethod( - getWriteLogEntriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.WriteLogEntriesRequest, - com.google.logging.v2.WriteLogEntriesResponse>( - this, METHODID_WRITE_LOG_ENTRIES))) - .addMethod( - getListLogEntriesMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.ListLogEntriesRequest, - com.google.logging.v2.ListLogEntriesResponse>( - this, METHODID_LIST_LOG_ENTRIES))) - .addMethod( - getListMonitoredResourceDescriptorsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.ListMonitoredResourceDescriptorsRequest, - com.google.logging.v2.ListMonitoredResourceDescriptorsResponse>( - this, METHODID_LIST_MONITORED_RESOURCE_DESCRIPTORS))) - .addMethod( - getListLogsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.ListLogsRequest, - com.google.logging.v2.ListLogsResponse>(this, METHODID_LIST_LOGS))) - .addMethod( - getTailLogEntriesMethod(), - io.grpc.stub.ServerCalls.asyncBidiStreamingCall( - new MethodHandlers< - com.google.logging.v2.TailLogEntriesRequest, - com.google.logging.v2.TailLogEntriesResponse>( - this, METHODID_TAIL_LOG_ENTRIES))) - .build(); + return LoggingServiceV2Grpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service LoggingServiceV2. * *
    * Service for ingesting and querying logs.
@@ -623,7 +593,7 @@ public io.grpc.stub.StreamObserver
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service LoggingServiceV2.
    *
    * 
    * Service for ingesting and querying logs.
@@ -721,7 +691,7 @@ public com.google.logging.v2.ListLogsResponse listLogs(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service LoggingServiceV2.
    *
    * 
    * Service for ingesting and querying logs.
@@ -836,10 +806,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final LoggingServiceV2ImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(LoggingServiceV2ImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -899,6 +869,51 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getDeleteLogMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.DeleteLogRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_LOG)))
+        .addMethod(
+            getWriteLogEntriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.WriteLogEntriesRequest,
+                    com.google.logging.v2.WriteLogEntriesResponse>(
+                    service, METHODID_WRITE_LOG_ENTRIES)))
+        .addMethod(
+            getListLogEntriesMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.ListLogEntriesRequest,
+                    com.google.logging.v2.ListLogEntriesResponse>(
+                    service, METHODID_LIST_LOG_ENTRIES)))
+        .addMethod(
+            getListMonitoredResourceDescriptorsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.ListMonitoredResourceDescriptorsRequest,
+                    com.google.logging.v2.ListMonitoredResourceDescriptorsResponse>(
+                    service, METHODID_LIST_MONITORED_RESOURCE_DESCRIPTORS)))
+        .addMethod(
+            getListLogsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.ListLogsRequest, com.google.logging.v2.ListLogsResponse>(
+                    service, METHODID_LIST_LOGS)))
+        .addMethod(
+            getTailLogEntriesMethod(),
+            io.grpc.stub.ServerCalls.asyncBidiStreamingCall(
+                new MethodHandlers<
+                    com.google.logging.v2.TailLogEntriesRequest,
+                    com.google.logging.v2.TailLogEntriesResponse>(
+                    service, METHODID_TAIL_LOG_ENTRIES)))
+        .build();
+  }
+
   private abstract static class LoggingServiceV2BaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/MetricsServiceV2Grpc.java b/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/MetricsServiceV2Grpc.java
index d6b9a75ca..771318fbb 100644
--- a/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/MetricsServiceV2Grpc.java
+++ b/grpc-google-cloud-logging-v2/src/main/java/com/google/logging/v2/MetricsServiceV2Grpc.java
@@ -292,7 +292,7 @@ public MetricsServiceV2FutureStub newStub(
    * Service for configuring logs-based metrics.
    * 
*/ - public abstract static class MetricsServiceV2ImplBase implements io.grpc.BindableService { + public interface AsyncService { /** * @@ -301,7 +301,7 @@ public abstract static class MetricsServiceV2ImplBase implements io.grpc.Bindabl * Lists logs-based metrics. *
*/ - public void listLogMetrics( + default void listLogMetrics( com.google.logging.v2.ListLogMetricsRequest request, io.grpc.stub.StreamObserver responseObserver) { @@ -316,7 +316,7 @@ public void listLogMetrics( * Gets a logs-based metric. *
*/ - public void getLogMetric( + default void getLogMetric( com.google.logging.v2.GetLogMetricRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -330,7 +330,7 @@ public void getLogMetric( * Creates a logs-based metric. * */ - public void createLogMetric( + default void createLogMetric( com.google.logging.v2.CreateLogMetricRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -344,7 +344,7 @@ public void createLogMetric( * Creates or updates a logs-based metric. * */ - public void updateLogMetric( + default void updateLogMetric( com.google.logging.v2.UpdateLogMetricRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( @@ -358,53 +358,32 @@ public void updateLogMetric( * Deletes a logs-based metric. * */ - public void deleteLogMetric( + default void deleteLogMetric( com.google.logging.v2.DeleteLogMetricRequest request, io.grpc.stub.StreamObserver responseObserver) { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( getDeleteLogMetricMethod(), responseObserver); } + } + + /** + * Base class for the server implementation of the service MetricsServiceV2. + * + *
+   * Service for configuring logs-based metrics.
+   * 
+ */ + public abstract static class MetricsServiceV2ImplBase + implements io.grpc.BindableService, AsyncService { @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { - return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) - .addMethod( - getListLogMetricsMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.ListLogMetricsRequest, - com.google.logging.v2.ListLogMetricsResponse>( - this, METHODID_LIST_LOG_METRICS))) - .addMethod( - getGetLogMetricMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.GetLogMetricRequest, com.google.logging.v2.LogMetric>( - this, METHODID_GET_LOG_METRIC))) - .addMethod( - getCreateLogMetricMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.CreateLogMetricRequest, - com.google.logging.v2.LogMetric>(this, METHODID_CREATE_LOG_METRIC))) - .addMethod( - getUpdateLogMetricMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.UpdateLogMetricRequest, - com.google.logging.v2.LogMetric>(this, METHODID_UPDATE_LOG_METRIC))) - .addMethod( - getDeleteLogMetricMethod(), - io.grpc.stub.ServerCalls.asyncUnaryCall( - new MethodHandlers< - com.google.logging.v2.DeleteLogMetricRequest, com.google.protobuf.Empty>( - this, METHODID_DELETE_LOG_METRIC))) - .build(); + return MetricsServiceV2Grpc.bindService(this); } } /** - * + * A stub to allow clients to do asynchronous rpc calls to service MetricsServiceV2. * *
    * Service for configuring logs-based metrics.
@@ -504,7 +483,7 @@ public void deleteLogMetric(
   }
 
   /**
-   *
+   * A stub to allow clients to do synchronous rpc calls to service MetricsServiceV2.
    *
    * 
    * Service for configuring logs-based metrics.
@@ -589,7 +568,7 @@ public com.google.protobuf.Empty deleteLogMetric(
   }
 
   /**
-   *
+   * A stub to allow clients to do ListenableFuture-style rpc calls to service MetricsServiceV2.
    *
    * 
    * Service for configuring logs-based metrics.
@@ -685,10 +664,10 @@ private static final class MethodHandlers
           io.grpc.stub.ServerCalls.ServerStreamingMethod,
           io.grpc.stub.ServerCalls.ClientStreamingMethod,
           io.grpc.stub.ServerCalls.BidiStreamingMethod {
-    private final MetricsServiceV2ImplBase serviceImpl;
+    private final AsyncService serviceImpl;
     private final int methodId;
 
-    MethodHandlers(MetricsServiceV2ImplBase serviceImpl, int methodId) {
+    MethodHandlers(AsyncService serviceImpl, int methodId) {
       this.serviceImpl = serviceImpl;
       this.methodId = methodId;
     }
@@ -739,6 +718,42 @@ public io.grpc.stub.StreamObserver invoke(
     }
   }
 
+  public static final io.grpc.ServerServiceDefinition bindService(AsyncService service) {
+    return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+        .addMethod(
+            getListLogMetricsMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.ListLogMetricsRequest,
+                    com.google.logging.v2.ListLogMetricsResponse>(
+                    service, METHODID_LIST_LOG_METRICS)))
+        .addMethod(
+            getGetLogMetricMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.GetLogMetricRequest, com.google.logging.v2.LogMetric>(
+                    service, METHODID_GET_LOG_METRIC)))
+        .addMethod(
+            getCreateLogMetricMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.CreateLogMetricRequest, com.google.logging.v2.LogMetric>(
+                    service, METHODID_CREATE_LOG_METRIC)))
+        .addMethod(
+            getUpdateLogMetricMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.UpdateLogMetricRequest, com.google.logging.v2.LogMetric>(
+                    service, METHODID_UPDATE_LOG_METRIC)))
+        .addMethod(
+            getDeleteLogMetricMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+                new MethodHandlers<
+                    com.google.logging.v2.DeleteLogMetricRequest, com.google.protobuf.Empty>(
+                    service, METHODID_DELETE_LOG_METRIC)))
+        .build();
+  }
+
   private abstract static class MetricsServiceV2BaseDescriptorSupplier
       implements io.grpc.protobuf.ProtoFileDescriptorSupplier,
           io.grpc.protobuf.ProtoServiceDescriptorSupplier {
diff --git a/pom.xml b/pom.xml
index d67ff91da..11695509a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
   com.google.cloud
   google-cloud-logging-parent
   pom
-  3.14.7
+  3.14.8
   Google Cloud Logging Parent
   https://github.com/googleapis/java-logging
   
@@ -61,23 +61,23 @@
       
         com.google.api.grpc
         proto-google-cloud-logging-v2
-        0.103.7
+        0.103.8
       
       
         com.google.api.grpc
         grpc-google-cloud-logging-v2
-        0.103.7
+        0.103.8
       
       
         com.google.cloud
         google-cloud-logging
-        3.14.7
+        3.14.8
       
 
       
         com.google.cloud
         google-cloud-shared-dependencies
-        3.6.0
+        3.7.0
         pom
         import
       
diff --git a/proto-google-cloud-logging-v2/pom.xml b/proto-google-cloud-logging-v2/pom.xml
index 53f7df675..06dbb2cb2 100644
--- a/proto-google-cloud-logging-v2/pom.xml
+++ b/proto-google-cloud-logging-v2/pom.xml
@@ -4,13 +4,13 @@
   4.0.0
   com.google.api.grpc
   proto-google-cloud-logging-v2
-  0.103.7
+  0.103.8
   proto-google-cloud-logging-v2
   PROTO library for proto-google-cloud-logging-v2
   
     com.google.cloud
     google-cloud-logging-parent
-    3.14.7
+    3.14.8
   
   
     
diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml
index b51dac3a2..8174cbf62 100644
--- a/samples/install-without-bom/pom.xml
+++ b/samples/install-without-bom/pom.xml
@@ -28,7 +28,7 @@
     
       com.google.cloud
       google-cloud-logging
-      3.14.6
+      3.14.7
     
     
 
diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml
index d50ec8738..0746c0c08 100644
--- a/samples/snapshot/pom.xml
+++ b/samples/snapshot/pom.xml
@@ -28,7 +28,7 @@
     
       com.google.cloud
       google-cloud-logging
-      3.14.7
+      3.14.8
     
     
     
diff --git a/versions.txt b/versions.txt
index 27de76c43..3df781c0e 100644
--- a/versions.txt
+++ b/versions.txt
@@ -1,6 +1,6 @@
 # Format:
 # module:released-version:current-version
 
-google-cloud-logging:3.14.7:3.14.7
-grpc-google-cloud-logging-v2:0.103.7:0.103.7
-proto-google-cloud-logging-v2:0.103.7:0.103.7
+google-cloud-logging:3.14.8:3.14.8
+grpc-google-cloud-logging-v2:0.103.8:0.103.8
+proto-google-cloud-logging-v2:0.103.8:0.103.8