Skip to content

Commit c8ebb13

Browse files
feat: Enable REST transport for most of Java and Go clients (#1162)
* chore: Integrate new gapic-generator-java and rules_gapic PiperOrigin-RevId: 454027580 Source-Link: googleapis/googleapis@1b22277 Source-Link: https://github.com/googleapis/googleapis-gen/commit/e04cea20d0d12eb5c3bdb360a9e72b654edcb638 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZTA0Y2VhMjBkMGQxMmViNWMzYmRiMzYwYTllNzJiNjU0ZWRjYjYzOCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * feat: Enable REST transport for most of Java and Go clients PiperOrigin-RevId: 456641589 Source-Link: googleapis/googleapis@8a251f5 Source-Link: https://github.com/googleapis/googleapis-gen/commit/4ca52a529cf01308d9714950edffbea3560cfbdb Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNGNhNTJhNTI5Y2YwMTMwOGQ5NzE0OTUwZWRmZmJlYTM1NjBjZmJkYiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * Update pom.xml Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: Neenu Shaji <Neenu1995@users.noreply.github.com>
1 parent 9385452 commit c8ebb13

22 files changed

+7008
-57
lines changed

google-cloud-pubsub/pom.xml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,10 @@
6565
<groupId>com.google.api</groupId>
6666
<artifactId>gax-grpc</artifactId>
6767
</dependency>
68+
<dependency>
69+
<groupId>com.google.api</groupId>
70+
<artifactId>gax-httpjson</artifactId>
71+
</dependency>
6872
<dependency>
6973
<groupId>org.threeten</groupId>
7074
<artifactId>threetenbp</artifactId>
@@ -136,12 +140,24 @@
136140
<scope>test</scope>
137141
</dependency>
138142
<!-- Need testing utility classes for generated gRPC clients tests -->
143+
<dependency>
144+
<groupId>com.google.api</groupId>
145+
<artifactId>gax</artifactId>
146+
<classifier>testlib</classifier>
147+
<scope>test</scope>
148+
</dependency>
139149
<dependency>
140150
<groupId>com.google.api</groupId>
141151
<artifactId>gax-grpc</artifactId>
142152
<classifier>testlib</classifier>
143153
<scope>test</scope>
144154
</dependency>
155+
<dependency>
156+
<groupId>com.google.api</groupId>
157+
<artifactId>gax-httpjson</artifactId>
158+
<classifier>testlib</classifier>
159+
<scope>test</scope>
160+
</dependency>
145161
</dependencies>
146162

147163
<build>

google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SchemaServiceClient.java

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,20 @@
116116
* SchemaServiceClient schemaServiceClient = SchemaServiceClient.create(schemaServiceSettings);
117117
* }</pre>
118118
*
119+
* <p>To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over
120+
* the wire:
121+
*
122+
* <pre>{@code
123+
* // This snippet has been automatically generated for illustrative purposes only.
124+
* // It may require modifications to work in your environment.
125+
* SchemaServiceSettings schemaServiceSettings =
126+
* SchemaServiceSettings.newBuilder()
127+
* .setTransportChannelProvider(
128+
* SchemaServiceSettings.defaultHttpJsonTransportProviderBuilder().build())
129+
* .build();
130+
* SchemaServiceClient schemaServiceClient = SchemaServiceClient.create(schemaServiceSettings);
131+
* }</pre>
132+
*
119133
* <p>Please refer to the GitHub repository's samples for more quickstart code snippets.
120134
*/
121135
@Generated("by gapic-generator-java")
@@ -531,7 +545,7 @@ public final ListSchemasPagedResponse listSchemas(ListSchemasRequest request) {
531545
* .build();
532546
* while (true) {
533547
* ListSchemasResponse response = schemaServiceClient.listSchemasCallable().call(request);
534-
* for (Schema element : response.getResponsesList()) {
548+
* for (Schema element : response.getSchemasList()) {
535549
* // doThingsWith(element);
536550
* }
537551
* String nextPageToken = response.getNextPageToken();
@@ -825,7 +839,7 @@ public final ValidateMessageResponse validateMessage(ValidateMessageRequest requ
825839
* try (SchemaServiceClient schemaServiceClient = SchemaServiceClient.create()) {
826840
* SetIamPolicyRequest request =
827841
* SetIamPolicyRequest.newBuilder()
828-
* .setResource(ProjectName.of("[PROJECT]").toString())
842+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
829843
* .setPolicy(Policy.newBuilder().build())
830844
* .setUpdateMask(FieldMask.newBuilder().build())
831845
* .build();
@@ -854,7 +868,7 @@ public final Policy setIamPolicy(SetIamPolicyRequest request) {
854868
* try (SchemaServiceClient schemaServiceClient = SchemaServiceClient.create()) {
855869
* SetIamPolicyRequest request =
856870
* SetIamPolicyRequest.newBuilder()
857-
* .setResource(ProjectName.of("[PROJECT]").toString())
871+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
858872
* .setPolicy(Policy.newBuilder().build())
859873
* .setUpdateMask(FieldMask.newBuilder().build())
860874
* .build();
@@ -881,7 +895,7 @@ public final UnaryCallable<SetIamPolicyRequest, Policy> setIamPolicyCallable() {
881895
* try (SchemaServiceClient schemaServiceClient = SchemaServiceClient.create()) {
882896
* GetIamPolicyRequest request =
883897
* GetIamPolicyRequest.newBuilder()
884-
* .setResource(ProjectName.of("[PROJECT]").toString())
898+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
885899
* .setOptions(GetPolicyOptions.newBuilder().build())
886900
* .build();
887901
* Policy response = schemaServiceClient.getIamPolicy(request);
@@ -908,7 +922,7 @@ public final Policy getIamPolicy(GetIamPolicyRequest request) {
908922
* try (SchemaServiceClient schemaServiceClient = SchemaServiceClient.create()) {
909923
* GetIamPolicyRequest request =
910924
* GetIamPolicyRequest.newBuilder()
911-
* .setResource(ProjectName.of("[PROJECT]").toString())
925+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
912926
* .setOptions(GetPolicyOptions.newBuilder().build())
913927
* .build();
914928
* ApiFuture<Policy> future = schemaServiceClient.getIamPolicyCallable().futureCall(request);
@@ -938,7 +952,7 @@ public final UnaryCallable<GetIamPolicyRequest, Policy> getIamPolicyCallable() {
938952
* try (SchemaServiceClient schemaServiceClient = SchemaServiceClient.create()) {
939953
* TestIamPermissionsRequest request =
940954
* TestIamPermissionsRequest.newBuilder()
941-
* .setResource(ProjectName.of("[PROJECT]").toString())
955+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
942956
* .addAllPermissions(new ArrayList<String>())
943957
* .build();
944958
* TestIamPermissionsResponse response = schemaServiceClient.testIamPermissions(request);
@@ -969,7 +983,7 @@ public final TestIamPermissionsResponse testIamPermissions(TestIamPermissionsReq
969983
* try (SchemaServiceClient schemaServiceClient = SchemaServiceClient.create()) {
970984
* TestIamPermissionsRequest request =
971985
* TestIamPermissionsRequest.newBuilder()
972-
* .setResource(ProjectName.of("[PROJECT]").toString())
986+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
973987
* .addAllPermissions(new ArrayList<String>())
974988
* .build();
975989
* ApiFuture<TestIamPermissionsResponse> future =

google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SchemaServiceSettings.java

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import com.google.api.gax.core.GoogleCredentialsProvider;
2424
import com.google.api.gax.core.InstantiatingExecutorProvider;
2525
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
26+
import com.google.api.gax.httpjson.InstantiatingHttpJsonChannelProvider;
2627
import com.google.api.gax.rpc.ApiClientHeaderProvider;
2728
import com.google.api.gax.rpc.ClientContext;
2829
import com.google.api.gax.rpc.ClientSettings;
@@ -159,11 +160,18 @@ public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilde
159160
return SchemaServiceStubSettings.defaultCredentialsProviderBuilder();
160161
}
161162

162-
/** Returns a builder for the default ChannelProvider for this service. */
163+
/** Returns a builder for the default gRPC ChannelProvider for this service. */
163164
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
164165
return SchemaServiceStubSettings.defaultGrpcTransportProviderBuilder();
165166
}
166167

168+
/** Returns a builder for the default REST ChannelProvider for this service. */
169+
@BetaApi
170+
public static InstantiatingHttpJsonChannelProvider.Builder
171+
defaultHttpJsonTransportProviderBuilder() {
172+
return SchemaServiceStubSettings.defaultHttpJsonTransportProviderBuilder();
173+
}
174+
167175
public static TransportChannelProvider defaultTransportChannelProvider() {
168176
return SchemaServiceStubSettings.defaultTransportChannelProvider();
169177
}
@@ -173,11 +181,17 @@ public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuil
173181
return SchemaServiceStubSettings.defaultApiClientHeaderProviderBuilder();
174182
}
175183

176-
/** Returns a new builder for this class. */
184+
/** Returns a new gRPC builder for this class. */
177185
public static Builder newBuilder() {
178186
return Builder.createDefault();
179187
}
180188

189+
/** Returns a new REST builder for this class. */
190+
@BetaApi
191+
public static Builder newHttpJsonBuilder() {
192+
return Builder.createHttpJsonDefault();
193+
}
194+
181195
/** Returns a new builder for this class. */
182196
public static Builder newBuilder(ClientContext clientContext) {
183197
return new Builder(clientContext);
@@ -215,6 +229,11 @@ private static Builder createDefault() {
215229
return new Builder(SchemaServiceStubSettings.newBuilder());
216230
}
217231

232+
@BetaApi
233+
private static Builder createHttpJsonDefault() {
234+
return new Builder(SchemaServiceStubSettings.newHttpJsonBuilder());
235+
}
236+
218237
public SchemaServiceStubSettings.Builder getStubSettingsBuilder() {
219238
return ((SchemaServiceStubSettings.Builder) getStubSettings());
220239
}

google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriptionAdminClient.java

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,21 @@
142142
* SubscriptionAdminClient.create(subscriptionAdminSettings);
143143
* }</pre>
144144
*
145+
* <p>To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over
146+
* the wire:
147+
*
148+
* <pre>{@code
149+
* // This snippet has been automatically generated for illustrative purposes only.
150+
* // It may require modifications to work in your environment.
151+
* SubscriptionAdminSettings subscriptionAdminSettings =
152+
* SubscriptionAdminSettings.newBuilder()
153+
* .setTransportChannelProvider(
154+
* SubscriptionAdminSettings.defaultHttpJsonTransportProviderBuilder().build())
155+
* .build();
156+
* SubscriptionAdminClient subscriptionAdminClient =
157+
* SubscriptionAdminClient.create(subscriptionAdminSettings);
158+
* }</pre>
159+
*
145160
* <p>Please refer to the GitHub repository's samples for more quickstart code snippets.
146161
*/
147162
@Generated("by gapic-generator-java")
@@ -1091,7 +1106,7 @@ public final ListSubscriptionsPagedResponse listSubscriptions(ListSubscriptionsR
10911106
* while (true) {
10921107
* ListSubscriptionsResponse response =
10931108
* subscriptionAdminClient.listSubscriptionsCallable().call(request);
1094-
* for (Subscription element : response.getResponsesList()) {
1109+
* for (Subscription element : response.getSubscriptionsList()) {
10951110
* // doThingsWith(element);
10961111
* }
10971112
* String nextPageToken = response.getNextPageToken();
@@ -2383,7 +2398,7 @@ public final ListSnapshotsPagedResponse listSnapshots(ListSnapshotsRequest reque
23832398
* while (true) {
23842399
* ListSnapshotsResponse response =
23852400
* subscriptionAdminClient.listSnapshotsCallable().call(request);
2386-
* for (Snapshot element : response.getResponsesList()) {
2401+
* for (Snapshot element : response.getSnapshotsList()) {
23872402
* // doThingsWith(element);
23882403
* }
23892404
* String nextPageToken = response.getNextPageToken();
@@ -3114,7 +3129,7 @@ public final UnaryCallable<SeekRequest, SeekResponse> seekCallable() {
31143129
* try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
31153130
* SetIamPolicyRequest request =
31163131
* SetIamPolicyRequest.newBuilder()
3117-
* .setResource(ProjectName.of("[PROJECT]").toString())
3132+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
31183133
* .setPolicy(Policy.newBuilder().build())
31193134
* .setUpdateMask(FieldMask.newBuilder().build())
31203135
* .build();
@@ -3174,7 +3189,7 @@ public final Policy setIamPolicy(String resource, Policy policy) {
31743189
* try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
31753190
* SetIamPolicyRequest request =
31763191
* SetIamPolicyRequest.newBuilder()
3177-
* .setResource(ProjectName.of("[PROJECT]").toString())
3192+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
31783193
* .setPolicy(Policy.newBuilder().build())
31793194
* .setUpdateMask(FieldMask.newBuilder().build())
31803195
* .build();
@@ -3201,7 +3216,7 @@ public final UnaryCallable<SetIamPolicyRequest, Policy> setIamPolicyCallable() {
32013216
* try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
32023217
* GetIamPolicyRequest request =
32033218
* GetIamPolicyRequest.newBuilder()
3204-
* .setResource(ProjectName.of("[PROJECT]").toString())
3219+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
32053220
* .setOptions(GetPolicyOptions.newBuilder().build())
32063221
* .build();
32073222
* Policy response = subscriptionAdminClient.getIamPolicy(request);
@@ -3253,7 +3268,7 @@ public final Policy getIamPolicy(String resource) {
32533268
* try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
32543269
* GetIamPolicyRequest request =
32553270
* GetIamPolicyRequest.newBuilder()
3256-
* .setResource(ProjectName.of("[PROJECT]").toString())
3271+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
32573272
* .setOptions(GetPolicyOptions.newBuilder().build())
32583273
* .build();
32593274
* ApiFuture<Policy> future = subscriptionAdminClient.getIamPolicyCallable().futureCall(request);
@@ -3283,7 +3298,7 @@ public final UnaryCallable<GetIamPolicyRequest, Policy> getIamPolicyCallable() {
32833298
* try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
32843299
* TestIamPermissionsRequest request =
32853300
* TestIamPermissionsRequest.newBuilder()
3286-
* .setResource(ProjectName.of("[PROJECT]").toString())
3301+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
32873302
* .addAllPermissions(new ArrayList<String>())
32883303
* .build();
32893304
* TestIamPermissionsResponse response = subscriptionAdminClient.testIamPermissions(request);
@@ -3352,7 +3367,7 @@ public final TestIamPermissionsResponse testIamPermissions(
33523367
* try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
33533368
* TestIamPermissionsRequest request =
33543369
* TestIamPermissionsRequest.newBuilder()
3355-
* .setResource(ProjectName.of("[PROJECT]").toString())
3370+
* .setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
33563371
* .addAllPermissions(new ArrayList<String>())
33573372
* .build();
33583373
* ApiFuture<TestIamPermissionsResponse> future =

google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriptionAdminSettings.java

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import com.google.api.gax.core.GoogleCredentialsProvider;
2525
import com.google.api.gax.core.InstantiatingExecutorProvider;
2626
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
27+
import com.google.api.gax.httpjson.InstantiatingHttpJsonChannelProvider;
2728
import com.google.api.gax.rpc.ApiClientHeaderProvider;
2829
import com.google.api.gax.rpc.ClientContext;
2930
import com.google.api.gax.rpc.ClientSettings;
@@ -226,11 +227,18 @@ public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilde
226227
return SubscriberStubSettings.defaultCredentialsProviderBuilder();
227228
}
228229

229-
/** Returns a builder for the default ChannelProvider for this service. */
230+
/** Returns a builder for the default gRPC ChannelProvider for this service. */
230231
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
231232
return SubscriberStubSettings.defaultGrpcTransportProviderBuilder();
232233
}
233234

235+
/** Returns a builder for the default REST ChannelProvider for this service. */
236+
@BetaApi
237+
public static InstantiatingHttpJsonChannelProvider.Builder
238+
defaultHttpJsonTransportProviderBuilder() {
239+
return SubscriberStubSettings.defaultHttpJsonTransportProviderBuilder();
240+
}
241+
234242
public static TransportChannelProvider defaultTransportChannelProvider() {
235243
return SubscriberStubSettings.defaultTransportChannelProvider();
236244
}
@@ -240,11 +248,17 @@ public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuil
240248
return SubscriberStubSettings.defaultApiClientHeaderProviderBuilder();
241249
}
242250

243-
/** Returns a new builder for this class. */
251+
/** Returns a new gRPC builder for this class. */
244252
public static Builder newBuilder() {
245253
return Builder.createDefault();
246254
}
247255

256+
/** Returns a new REST builder for this class. */
257+
@BetaApi
258+
public static Builder newHttpJsonBuilder() {
259+
return Builder.createHttpJsonDefault();
260+
}
261+
248262
/** Returns a new builder for this class. */
249263
public static Builder newBuilder(ClientContext clientContext) {
250264
return new Builder(clientContext);
@@ -282,6 +296,11 @@ private static Builder createDefault() {
282296
return new Builder(SubscriberStubSettings.newBuilder());
283297
}
284298

299+
@BetaApi
300+
private static Builder createHttpJsonDefault() {
301+
return new Builder(SubscriberStubSettings.newHttpJsonBuilder());
302+
}
303+
285304
public SubscriberStubSettings.Builder getStubSettingsBuilder() {
286305
return ((SubscriberStubSettings.Builder) getStubSettings());
287306
}

0 commit comments

Comments
 (0)