diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml new file mode 100644 index 00000000..3f7432a5 --- /dev/null +++ b/.github/.OwlBot.lock.yaml @@ -0,0 +1,3 @@ +docker: + image: gcr.io/repo-automation-bots/owlbot-java:latest + digest: sha256:12cbdc4f137152a1a8b83f50ebc1a4098be0d3baff78b46efaec306f7cfafd13 diff --git a/.github/.OwlBot.yaml b/.github/.OwlBot.yaml new file mode 100644 index 00000000..7c7b39a7 --- /dev/null +++ b/.github/.OwlBot.yaml @@ -0,0 +1,32 @@ +# Copyright 2021 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +docker: + image: "gcr.io/repo-automation-bots/owlbot-java:latest" + +deep-remove-regex: +- "/grpc-google-.*/src" +- "/proto-google-.*/src" +- "/google-.*/src" + +deep-preserve-regex: +- "/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java" + +deep-copy-regex: +- source: "/google/cloud/memcache/(v.*)/.*-java/proto-google-.*/src" + dest: "/owl-bot-staging/$1/proto-google-cloud-memcache-$1/src" +- source: "/google/cloud/memcache/(v.*)/.*-java/grpc-google-.*/src" + dest: "/owl-bot-staging/$1/grpc-google-cloud-memcache-$1/src" +- source: "/google/cloud/memcache/(v.*)/.*-java/gapic-google-.*/src" + dest: "/owl-bot-staging/$1/google-cloud-memcache/src" diff --git a/.github/readme/synth.metadata/synth.metadata b/.github/readme/synth.metadata/synth.metadata index 87e38a92..2a971477 100644 --- a/.github/readme/synth.metadata/synth.metadata +++ b/.github/readme/synth.metadata/synth.metadata @@ -4,14 +4,14 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/java-memcache.git", - "sha": "e9941e155c3a0bf7aea2dbc332c7e134864c8ebb" + "sha": "fb28171ff5cdd777bfb80523dd6f6266cd3b69b7" } }, { "git": { "name": "synthtool", "remote": "https://github.com/googleapis/synthtool.git", - "sha": "26558bae8976a985d73c2d98c31d8612273f907d" + "sha": "3d32990b6f4b57be77455e3ca89e6e21cd0c06b3" } } ] diff --git a/.github/release-please.yml b/.github/release-please.yml index 8ca7f9ca..7bf58076 100644 --- a/.github/release-please.yml +++ b/.github/release-please.yml @@ -1,3 +1,8 @@ bumpMinorPreMajor: true handleGHRelease: true releaseType: java-yoshi +branches: + - bumpMinorPreMajor: true + handleGHRelease: true + releaseType: java-yoshi + branch: java7 diff --git a/.github/sync-repo-settings.yaml b/.github/sync-repo-settings.yaml index 6bddd18e..ffd39f6f 100644 --- a/.github/sync-repo-settings.yaml +++ b/.github/sync-repo-settings.yaml @@ -1,49 +1,44 @@ - -# Whether or not rebase-merging is enabled on this repository. -# Defaults to `true` rebaseMergeAllowed: false - -# Whether or not squash-merging is enabled on this repository. -# Defaults to `true` squashMergeAllowed: true - -# Whether or not PRs are merged with a merge commit on this repository. -# Defaults to `false` mergeCommitAllowed: false - -# Rules for master branch protection branchProtectionRules: -# Identifies the protection rule pattern. Name of the branch to be protected. -# Defaults to `master` -- pattern: master - # Can admins overwrite branch protection. - # Defaults to `true` - isAdminEnforced: true - # Number of approving reviews required to update matching branches. - # Defaults to `1` - requiredApprovingReviewCount: 1 - # Are reviews from code owners required to update matching branches. - # Defaults to `false` - requiresCodeOwnerReviews: true - # Require up to date branches - requiresStrictStatusChecks: false - # List of required status check contexts that must pass for commits to be accepted to matching branches. - requiredStatusCheckContexts: - - "dependencies (8)" - - "dependencies (11)" - - "linkage-monitor" - - "lint" - - "clirr" - - "units (7)" - - "units (8)" - - "units (11)" - - "Kokoro - Test: Integration" - - "cla/google" -# List of explicit permissions to add (additive only) + - pattern: master + isAdminEnforced: true + requiredApprovingReviewCount: 1 + requiresCodeOwnerReviews: true + requiresStrictStatusChecks: false + requiredStatusCheckContexts: + - dependencies (8) + - dependencies (11) + - linkage-monitor + - lint + - clirr + - units (8) + - units (11) + - 'Kokoro - Test: Integration' + - cla/google + - OwlBot Post Processor + - pattern: java7 + isAdminEnforced: true + requiredApprovingReviewCount: 1 + requiresCodeOwnerReviews: true + requiresStrictStatusChecks: false + requiredStatusCheckContexts: + - dependencies (8) + - dependencies (11) + - linkage-monitor + - lint + - clirr + - units (7) + - units (8) + - units (11) + - 'Kokoro - Test: Integration' + - cla/google + - OwlBot Post Processor permissionRules: -- team: yoshi-admins - permission: admin -- team: yoshi-java-admins - permission: admin -- team: yoshi-java - permission: push \ No newline at end of file + - team: yoshi-admins + permission: admin + - team: yoshi-java-admins + permission: admin + - team: yoshi-java + permission: push diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 0195b32f..65ae6ecd 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java: [7, 8, 11] + java: [8, 11] steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v1 diff --git a/CHANGELOG.md b/CHANGELOG.md index 2553ed65..8b13e139 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,21 @@ # Changelog +## [2.0.0](https://www.github.com/googleapis/java-memcache/compare/v1.1.2...v2.0.0) (2021-08-06) + + +### ⚠ BREAKING CHANGES + +* release gapic-generator-java v2.0.0 (#464) + +### Features + +* release gapic-generator-java v2.0.0 ([#464](https://www.github.com/googleapis/java-memcache/issues/464)) ([4eda9b4](https://www.github.com/googleapis/java-memcache/commit/4eda9b434551afb052126fc86a9552fd4c3bc691)) + + +### Dependencies + +* update dependency com.google.cloud:google-cloud-shared-dependencies to v2 ([#465](https://www.github.com/googleapis/java-memcache/issues/465)) ([020c418](https://www.github.com/googleapis/java-memcache/commit/020c4187420f2e47f1e5479779afff481583f17e)) + ### [1.1.2](https://www.github.com/googleapis/java-memcache/compare/v1.1.1...v1.1.2) (2021-07-02) diff --git a/README.md b/README.md index 51edbae1..b81cf90e 100644 --- a/README.md +++ b/README.md @@ -8,16 +8,18 @@ Java idiomatic client for [Cloud Memcache][product-docs]. - [Product Documentation][product-docs] - [Client Library Documentation][javadocs] + ## Quickstart If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file + ```xml com.google.cloud libraries-bom - 20.7.0 + 20.9.0 pom import @@ -34,35 +36,43 @@ 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: + ```xml com.google.cloud google-cloud-memcache - 1.1.1 + 1.1.2 ``` If you are using Gradle 5.x or later, add this to your dependencies + ```Groovy -implementation platform('com.google.cloud:libraries-bom:20.7.0') +implementation platform('com.google.cloud:libraries-bom:20.9.0') compile 'com.google.cloud:google-cloud-memcache' ``` If you are using Gradle without BOM, add this to your dependencies + ```Groovy -compile 'com.google.cloud:google-cloud-memcache:1.1.1' +compile 'com.google.cloud:google-cloud-memcache:1.1.2' ``` If you are using SBT, add this to your dependencies + ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-memcache" % "1.1.1" +libraryDependencies += "com.google.cloud" % "google-cloud-memcache" % "1.1.2" ``` ## Authentication See the [Authentication][authentication] section in the base directory's README. +## Authorization + +The client application making API calls must be granted [authorization scopes][auth-scopes] required for the desired Cloud Memcache APIs, and the authenticated principal must have the [IAM role(s)][predefined-iam-roles] required to access GCP resources using the Cloud Memcache API calls. + ## Getting Started ### Prerequisites @@ -99,16 +109,57 @@ To get help, follow the instructions in the [shared Troubleshooting document][tr Cloud Memcache uses gRPC for the transport layer. -## Java Versions +## Supported Java Versions Java 7 or above is required for using this client. +Google's Java client libraries, +[Google Cloud Client Libraries][cloudlibs] +and +[Google Cloud API Libraries][apilibs], +follow the +[Oracle Java SE support roadmap][oracle] +(see the Oracle Java SE Product Releases section). + +### For new development + +In general, new feature development occurs with support for the lowest Java +LTS version covered by Oracle's Premier Support (which typically lasts 5 years +from initial General Availability). If the minimum required JVM for a given +library is changed, it is accompanied by a [semver][semver] major release. + +Java 11 and (in September 2021) Java 17 are the best choices for new +development. + +### Keeping production systems current + +Google tests its client libraries with all current LTS versions covered by +Oracle's Extended Support (which typically lasts 8 years from initial +General Availability). + +#### Legacy support + +Google's client libraries support legacy versions of Java runtimes with long +term stable libraries that don't receive feature updates on a best efforts basis +as it may not be possible to backport all patches. + +Google provides updates on a best efforts basis to apps that continue to use +Java 7, though apps might need to upgrade to current versions of the library +that supports their JVM. + +#### Where to find specific information + +The latest versions and the supported Java versions are identified on +the individual GitHub repository `github.com/GoogleAPIs/java-SERVICENAME` +and on [google-cloud-java][g-c-j]. + ## Versioning This library follows [Semantic Versioning](http://semver.org/). + ## Contributing @@ -120,6 +171,7 @@ Please note that this project is released with a Contributor Code of Conduct. By this project you agree to abide by its terms. See [Code of Conduct][code-of-conduct] for more information. + ## License Apache 2.0 - See [LICENSE][license] for more information. @@ -152,6 +204,9 @@ Java is a registered trademark of Oracle and/or its affiliates. [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-memcache.svg [maven-version-link]: https://search.maven.org/search?q=g:com.google.cloud%20AND%20a:google-cloud-memcache&core=gav [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/ @@ -163,3 +218,9 @@ Java is a registered trademark of Oracle and/or its affiliates. [enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=memcache.googleapis.com [libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM [shell_img]: https://gstatic.com/cloudssh/images/open-btn.png + +[semver]: https://semver.org/ +[cloudlibs]: https://cloud.google.com/apis/docs/client-libraries-explained +[apilibs]: https://cloud.google.com/apis/docs/client-libraries-explained#google_api_client_libraries +[oracle]: https://www.oracle.com/java/technologies/java-se-support-roadmap.html +[g-c-j]: http://github.com/googleapis/google-cloud-java diff --git a/google-cloud-memcache-bom/pom.xml b/google-cloud-memcache-bom/pom.xml index 8d2cdf55..3915487c 100644 --- a/google-cloud-memcache-bom/pom.xml +++ b/google-cloud-memcache-bom/pom.xml @@ -1,14 +1,14 @@ - + 4.0.0 com.google.cloud google-cloud-memcache-bom - 1.1.2 + 2.0.0 pom com.google.cloud google-cloud-shared-config - 0.12.0 + 1.0.0 Google Cloud Memcache BOM @@ -42,17 +42,6 @@ true - - - - sonatype-nexus-snapshots - https://oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://oss.sonatype.org/service/local/staging/deploy/maven2/ - - @@ -65,29 +54,29 @@ - com.google.api.grpc - proto-google-cloud-memcache-v1beta2 - 0.6.2 + com.google.cloud + google-cloud-memcache + 2.0.0 com.google.api.grpc grpc-google-cloud-memcache-v1beta2 - 0.6.2 + 0.7.0 com.google.api.grpc - proto-google-cloud-memcache-v1 - 1.1.2 + grpc-google-cloud-memcache-v1 + 2.0.0 com.google.api.grpc - grpc-google-cloud-memcache-v1 - 1.1.2 + proto-google-cloud-memcache-v1beta2 + 0.7.0 - com.google.cloud - google-cloud-memcache - 1.1.2 + com.google.api.grpc + proto-google-cloud-memcache-v1 + 2.0.0 @@ -103,4 +92,4 @@ - \ No newline at end of file + diff --git a/google-cloud-memcache/pom.xml b/google-cloud-memcache/pom.xml index 8ab3d5e9..54dff474 100644 --- a/google-cloud-memcache/pom.xml +++ b/google-cloud-memcache/pom.xml @@ -1,9 +1,9 @@ - + 4.0.0 com.google.cloud google-cloud-memcache - 1.1.2 + 2.0.0 jar Google Cloud Memcache https://github.com/googleapis/java-memcache @@ -11,7 +11,7 @@ com.google.cloud google-cloud-memcache-parent - 1.1.2 + 2.0.0 google-cloud-memcache @@ -114,4 +114,4 @@ - \ No newline at end of file + diff --git a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/CloudMemcacheClient.java b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/CloudMemcacheClient.java index bc8aa616..c90e8f79 100644 --- a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/CloudMemcacheClient.java +++ b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/CloudMemcacheClient.java @@ -16,7 +16,6 @@ package com.google.cloud.memcache.v1; -import com.google.api.core.ApiFunction; import com.google.api.core.ApiFuture; import com.google.api.core.ApiFutures; import com.google.api.core.BetaApi; @@ -1146,12 +1145,7 @@ public static ApiFuture createAsync( ListInstancesPage.createEmptyPage().createPageAsync(context, futureResponse); return ApiFutures.transform( futurePage, - new ApiFunction() { - @Override - public ListInstancesPagedResponse apply(ListInstancesPage input) { - return new ListInstancesPagedResponse(input); - } - }, + input -> new ListInstancesPagedResponse(input), MoreExecutors.directExecutor()); } diff --git a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/CloudMemcacheSettings.java b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/CloudMemcacheSettings.java index ba810552..fbac85fd 100644 --- a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/CloudMemcacheSettings.java +++ b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/CloudMemcacheSettings.java @@ -222,14 +222,13 @@ public CloudMemcacheStubSettings.Builder getStubSettingsBuilder() { return ((CloudMemcacheStubSettings.Builder) getStubSettings()); } - // NEXT_MAJOR_VER: remove 'throws Exception'. /** * Applies the given settings updater function to all of the unary API methods in this service. * *

Note: This method does not support applying settings to streaming methods. */ public Builder applyToAllUnaryMethods( - ApiFunction, Void> settingsUpdater) throws Exception { + ApiFunction, Void> settingsUpdater) { super.applyToAllUnaryMethods( getStubSettingsBuilder().unaryMethodSettingsBuilders(), settingsUpdater); return this; diff --git a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/stub/CloudMemcacheStubSettings.java b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/stub/CloudMemcacheStubSettings.java index 415f8815..c43d9f1d 100644 --- a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/stub/CloudMemcacheStubSettings.java +++ b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/stub/CloudMemcacheStubSettings.java @@ -616,14 +616,13 @@ private static Builder initDefaults(Builder builder) { return builder; } - // NEXT_MAJOR_VER: remove 'throws Exception'. /** * Applies the given settings updater function to all of the unary API methods in this service. * *

Note: This method does not support applying settings to streaming methods. */ public Builder applyToAllUnaryMethods( - ApiFunction, Void> settingsUpdater) throws Exception { + ApiFunction, Void> settingsUpdater) { super.applyToAllUnaryMethods(unaryMethodSettingsBuilders, settingsUpdater); return this; } diff --git a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/stub/GrpcCloudMemcacheStub.java b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/stub/GrpcCloudMemcacheStub.java index 796bb2af..e426c19e 100644 --- a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/stub/GrpcCloudMemcacheStub.java +++ b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1/stub/GrpcCloudMemcacheStub.java @@ -24,7 +24,6 @@ import com.google.api.gax.grpc.GrpcStubCallableFactory; import com.google.api.gax.rpc.ClientContext; import com.google.api.gax.rpc.OperationCallable; -import com.google.api.gax.rpc.RequestParamsExtractor; import com.google.api.gax.rpc.UnaryCallable; import com.google.cloud.memcache.v1.ApplyParametersRequest; import com.google.cloud.memcache.v1.CreateInstanceRequest; @@ -43,7 +42,6 @@ import io.grpc.MethodDescriptor; import io.grpc.protobuf.ProtoUtils; import java.io.IOException; -import java.util.Map; import java.util.concurrent.TimeUnit; import javax.annotation.Generated; @@ -190,91 +188,70 @@ protected GrpcCloudMemcacheStub( GrpcCallSettings.newBuilder() .setMethodDescriptor(listInstancesMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(ListInstancesRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("parent", String.valueOf(request.getParent())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("parent", String.valueOf(request.getParent())); + return params.build(); }) .build(); GrpcCallSettings getInstanceTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(getInstanceMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(GetInstanceRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("name", String.valueOf(request.getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("name", String.valueOf(request.getName())); + return params.build(); }) .build(); GrpcCallSettings createInstanceTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(createInstanceMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(CreateInstanceRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("parent", String.valueOf(request.getParent())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("parent", String.valueOf(request.getParent())); + return params.build(); }) .build(); GrpcCallSettings updateInstanceTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(updateInstanceMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(UpdateInstanceRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("instance.name", String.valueOf(request.getInstance().getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("instance.name", String.valueOf(request.getInstance().getName())); + return params.build(); }) .build(); GrpcCallSettings updateParametersTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(updateParametersMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(UpdateParametersRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("name", String.valueOf(request.getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("name", String.valueOf(request.getName())); + return params.build(); }) .build(); GrpcCallSettings deleteInstanceTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(deleteInstanceMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(DeleteInstanceRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("name", String.valueOf(request.getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("name", String.valueOf(request.getName())); + return params.build(); }) .build(); GrpcCallSettings applyParametersTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(applyParametersMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(ApplyParametersRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("name", String.valueOf(request.getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("name", String.valueOf(request.getName())); + return params.build(); }) .build(); @@ -414,7 +391,13 @@ public UnaryCallable applyParametersCallable( @Override public final void close() { - shutdown(); + try { + backgroundResources.close(); + } catch (RuntimeException e) { + throw e; + } catch (Exception e) { + throw new IllegalStateException("Failed to close resource", e); + } } @Override diff --git a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/CloudMemcacheClient.java b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/CloudMemcacheClient.java index 4efba2af..04a135a2 100644 --- a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/CloudMemcacheClient.java +++ b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/CloudMemcacheClient.java @@ -16,7 +16,6 @@ package com.google.cloud.memcache.v1beta2; -import com.google.api.core.ApiFunction; import com.google.api.core.ApiFuture; import com.google.api.core.ApiFutures; import com.google.api.core.BetaApi; @@ -1296,12 +1295,7 @@ public static ApiFuture createAsync( ListInstancesPage.createEmptyPage().createPageAsync(context, futureResponse); return ApiFutures.transform( futurePage, - new ApiFunction() { - @Override - public ListInstancesPagedResponse apply(ListInstancesPage input) { - return new ListInstancesPagedResponse(input); - } - }, + input -> new ListInstancesPagedResponse(input), MoreExecutors.directExecutor()); } diff --git a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/CloudMemcacheSettings.java b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/CloudMemcacheSettings.java index 60bf4928..e7beff1f 100644 --- a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/CloudMemcacheSettings.java +++ b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/CloudMemcacheSettings.java @@ -234,14 +234,13 @@ public CloudMemcacheStubSettings.Builder getStubSettingsBuilder() { return ((CloudMemcacheStubSettings.Builder) getStubSettings()); } - // NEXT_MAJOR_VER: remove 'throws Exception'. /** * Applies the given settings updater function to all of the unary API methods in this service. * *

Note: This method does not support applying settings to streaming methods. */ public Builder applyToAllUnaryMethods( - ApiFunction, Void> settingsUpdater) throws Exception { + ApiFunction, Void> settingsUpdater) { super.applyToAllUnaryMethods( getStubSettingsBuilder().unaryMethodSettingsBuilders(), settingsUpdater); return this; diff --git a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/stub/CloudMemcacheStubSettings.java b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/stub/CloudMemcacheStubSettings.java index 2f3bf0b8..d5444837 100644 --- a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/stub/CloudMemcacheStubSettings.java +++ b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/stub/CloudMemcacheStubSettings.java @@ -677,14 +677,13 @@ private static Builder initDefaults(Builder builder) { return builder; } - // NEXT_MAJOR_VER: remove 'throws Exception'. /** * Applies the given settings updater function to all of the unary API methods in this service. * *

Note: This method does not support applying settings to streaming methods. */ public Builder applyToAllUnaryMethods( - ApiFunction, Void> settingsUpdater) throws Exception { + ApiFunction, Void> settingsUpdater) { super.applyToAllUnaryMethods(unaryMethodSettingsBuilders, settingsUpdater); return this; } diff --git a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/stub/GrpcCloudMemcacheStub.java b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/stub/GrpcCloudMemcacheStub.java index 1ff9eb26..c9592edd 100644 --- a/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/stub/GrpcCloudMemcacheStub.java +++ b/google-cloud-memcache/src/main/java/com/google/cloud/memcache/v1beta2/stub/GrpcCloudMemcacheStub.java @@ -25,7 +25,6 @@ import com.google.api.gax.grpc.GrpcStubCallableFactory; import com.google.api.gax.rpc.ClientContext; import com.google.api.gax.rpc.OperationCallable; -import com.google.api.gax.rpc.RequestParamsExtractor; import com.google.api.gax.rpc.UnaryCallable; import com.google.cloud.memcache.v1beta2.ApplyParametersRequest; import com.google.cloud.memcache.v1beta2.ApplySoftwareUpdateRequest; @@ -45,7 +44,6 @@ import io.grpc.MethodDescriptor; import io.grpc.protobuf.ProtoUtils; import java.io.IOException; -import java.util.Map; import java.util.concurrent.TimeUnit; import javax.annotation.Generated; @@ -206,104 +204,80 @@ protected GrpcCloudMemcacheStub( GrpcCallSettings.newBuilder() .setMethodDescriptor(listInstancesMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(ListInstancesRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("parent", String.valueOf(request.getParent())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("parent", String.valueOf(request.getParent())); + return params.build(); }) .build(); GrpcCallSettings getInstanceTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(getInstanceMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(GetInstanceRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("name", String.valueOf(request.getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("name", String.valueOf(request.getName())); + return params.build(); }) .build(); GrpcCallSettings createInstanceTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(createInstanceMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(CreateInstanceRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("parent", String.valueOf(request.getParent())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("parent", String.valueOf(request.getParent())); + return params.build(); }) .build(); GrpcCallSettings updateInstanceTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(updateInstanceMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(UpdateInstanceRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("resource.name", String.valueOf(request.getResource().getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("resource.name", String.valueOf(request.getResource().getName())); + return params.build(); }) .build(); GrpcCallSettings updateParametersTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(updateParametersMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(UpdateParametersRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("name", String.valueOf(request.getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("name", String.valueOf(request.getName())); + return params.build(); }) .build(); GrpcCallSettings deleteInstanceTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(deleteInstanceMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(DeleteInstanceRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("name", String.valueOf(request.getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("name", String.valueOf(request.getName())); + return params.build(); }) .build(); GrpcCallSettings applyParametersTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(applyParametersMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(ApplyParametersRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("name", String.valueOf(request.getName())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("name", String.valueOf(request.getName())); + return params.build(); }) .build(); GrpcCallSettings applySoftwareUpdateTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(applySoftwareUpdateMethodDescriptor) .setParamsExtractor( - new RequestParamsExtractor() { - @Override - public Map extract(ApplySoftwareUpdateRequest request) { - ImmutableMap.Builder params = ImmutableMap.builder(); - params.put("instance", String.valueOf(request.getInstance())); - return params.build(); - } + request -> { + ImmutableMap.Builder params = ImmutableMap.builder(); + params.put("instance", String.valueOf(request.getInstance())); + return params.build(); }) .build(); @@ -465,7 +439,13 @@ public UnaryCallable applySoftwareUpdateC @Override public final void close() { - shutdown(); + try { + backgroundResources.close(); + } catch (RuntimeException e) { + throw e; + } catch (Exception e) { + throw new IllegalStateException("Failed to close resource", e); + } } @Override diff --git a/grpc-google-cloud-memcache-v1/pom.xml b/grpc-google-cloud-memcache-v1/pom.xml index 761e7fe1..f6b15790 100644 --- a/grpc-google-cloud-memcache-v1/pom.xml +++ b/grpc-google-cloud-memcache-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-memcache-v1 - 1.1.2 + 2.0.0 grpc-google-cloud-memcache-v1 GRPC library for grpc-google-cloud-memcache-v1 com.google.cloud google-cloud-memcache-parent - 1.1.2 + 2.0.0 diff --git a/grpc-google-cloud-memcache-v1beta2/pom.xml b/grpc-google-cloud-memcache-v1beta2/pom.xml index a7d0863c..96c2ee28 100644 --- a/grpc-google-cloud-memcache-v1beta2/pom.xml +++ b/grpc-google-cloud-memcache-v1beta2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-memcache-v1beta2 - 0.6.2 + 0.7.0 grpc-google-cloud-memcache-v1beta2 GRPC library for grpc-google-cloud-memcache-v1beta2 com.google.cloud google-cloud-memcache-parent - 1.1.2 + 2.0.0 diff --git a/java.header b/java.header index 3a9b503a..d0970ba7 100644 --- a/java.header +++ b/java.header @@ -1,5 +1,5 @@ ^/\*$ -^ \* Copyright \d\d\d\d,? Google (Inc\.|LLC)( All [rR]ights [rR]eserved\.)?$ +^ \* Copyright \d\d\d\d,? Google (Inc\.|LLC)$ ^ \*$ ^ \* Licensed under the Apache License, Version 2\.0 \(the "License"\);$ ^ \* you may not use this file except in compliance with the License\.$ diff --git a/owlbot.py b/owlbot.py new file mode 100644 index 00000000..dca9d867 --- /dev/null +++ b/owlbot.py @@ -0,0 +1,24 @@ +# Copyright 2021 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import synthtool as s +from synthtool.languages import java + + +for library in s.get_staging_dirs(): + # put any special-case replacements here + s.move(library) + +s.remove_staging_dirs() +java.common_templates() diff --git a/pom.xml b/pom.xml index 74b2c791..93b85c60 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-memcache-parent pom - 1.1.2 + 2.0.0 Google Cloud Memcache Parent https://github.com/googleapis/java-memcache @@ -14,7 +14,7 @@ com.google.cloud google-cloud-shared-config - 0.12.0 + 1.0.0 @@ -41,16 +41,7 @@ https://github.com/googleapis/java-memcache/issues GitHub Issues - - - sonatype-nexus-snapshots - https://oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://oss.sonatype.org/service/local/staging/deploy/maven2/ - - + Apache-2.0 @@ -70,33 +61,33 @@ com.google.api.grpc proto-google-cloud-memcache-v1beta2 - 0.6.2 + 0.7.0 com.google.api.grpc grpc-google-cloud-memcache-v1beta2 - 0.6.2 + 0.7.0 com.google.api.grpc proto-google-cloud-memcache-v1 - 1.1.2 + 2.0.0 com.google.api.grpc grpc-google-cloud-memcache-v1 - 1.1.2 + 2.0.0 com.google.cloud google-cloud-memcache - 1.1.2 + 2.0.0 com.google.cloud google-cloud-shared-dependencies - 1.4.0 + 2.0.0 pom import @@ -128,11 +119,11 @@ - proto-google-cloud-memcache-v1beta2 + google-cloud-memcache grpc-google-cloud-memcache-v1beta2 - proto-google-cloud-memcache-v1 grpc-google-cloud-memcache-v1 - google-cloud-memcache + proto-google-cloud-memcache-v1beta2 + proto-google-cloud-memcache-v1 google-cloud-memcache-bom @@ -205,4 +196,4 @@ - \ No newline at end of file + diff --git a/proto-google-cloud-memcache-v1/pom.xml b/proto-google-cloud-memcache-v1/pom.xml index e751cce0..41771b94 100644 --- a/proto-google-cloud-memcache-v1/pom.xml +++ b/proto-google-cloud-memcache-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-memcache-v1 - 1.1.2 + 2.0.0 proto-google-cloud-memcache-v1 PROTO library for proto-google-cloud-memcache-v1 com.google.cloud google-cloud-memcache-parent - 1.1.2 + 2.0.0 diff --git a/proto-google-cloud-memcache-v1beta2/pom.xml b/proto-google-cloud-memcache-v1beta2/pom.xml index bb5c2a7a..41a7c713 100644 --- a/proto-google-cloud-memcache-v1beta2/pom.xml +++ b/proto-google-cloud-memcache-v1beta2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-memcache-v1beta2 - 0.6.2 + 0.7.0 proto-google-cloud-memcache-v1beta2 PROTO library for proto-google-cloud-memcache-v1beta2 com.google.cloud google-cloud-memcache-parent - 1.1.2 + 2.0.0 diff --git a/renovate.json b/renovate.json index d0097cf3..6757487d 100644 --- a/renovate.json +++ b/renovate.json @@ -69,5 +69,8 @@ } ], "semanticCommits": true, - "masterIssue": true + "dependencyDashboard": true, + "dependencyDashboardLabels": [ + "type: process" + ] } diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 5c0688e0..7f5df789 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -29,7 +29,7 @@ com.google.cloud google-cloud-memcache - 1.1.1 + 1.1.2 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 97f3cf0c..6f928e4e 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -28,7 +28,7 @@ com.google.cloud google-cloud-memcache - 1.1.1 + 1.1.2 diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index 2892a784..03c3f002 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -30,7 +30,7 @@ com.google.cloud libraries-bom - 20.7.0 + 20.9.0 pom import diff --git a/synth.metadata b/synth.metadata index b5b5b722..8f0829c6 100644 --- a/synth.metadata +++ b/synth.metadata @@ -4,7 +4,7 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/java-memcache.git", - "sha": "7e7f49c123d31f30028bf3cad003a776aa51883c" + "sha": "7432e4c4ffd094e3ed0e27e56e8e16f6e4cf51ec" } }, { @@ -27,7 +27,7 @@ "git": { "name": "synthtool", "remote": "https://github.com/googleapis/synthtool.git", - "sha": "87254ac89a9559864c0a245d6b150406439ce3d8" + "sha": "5d3c52f5db664eee9026db76b5bcb466f3a09ca9" } } ], diff --git a/synth.py b/synth.py deleted file mode 100644 index 921aacd4..00000000 --- a/synth.py +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""This script is used to synthesize generated parts of this library.""" - -import synthtool as s -import synthtool.gcp as gcp -import synthtool.languages.java as java - -AUTOSYNTH_MULTIPLE_COMMITS = True - -service = 'memcache' -versions = ['v1beta2', 'v1'] - -for version in versions: - java.bazel_library( - service=service, - version=version, - package_pattern='com.google.cloud.{service}.{version}', - proto_path=f'google/cloud/{service}/{version}', - bazel_target=f'//google/cloud/{service}/{version}:google-cloud-{service}-{version}-java', - ) - -java.common_templates() \ No newline at end of file diff --git a/versions.txt b/versions.txt index 36cbb4ec..c86a2fb0 100644 --- a/versions.txt +++ b/versions.txt @@ -1,8 +1,8 @@ # Format: # module:released-version:current-version -proto-google-cloud-memcache-v1beta2:0.6.2:0.6.2 -grpc-google-cloud-memcache-v1beta2:0.6.2:0.6.2 -proto-google-cloud-memcache-v1:1.1.2:1.1.2 -grpc-google-cloud-memcache-v1:1.1.2:1.1.2 -google-cloud-memcache:1.1.2:1.1.2 +google-cloud-memcache:2.0.0:2.0.0 +grpc-google-cloud-memcache-v1beta2:0.7.0:0.7.0 +grpc-google-cloud-memcache-v1:2.0.0:2.0.0 +proto-google-cloud-memcache-v1beta2:0.7.0:0.7.0 +proto-google-cloud-memcache-v1:2.0.0:2.0.0