Skip to content

Commit dd85912

Browse files
feat: Enable REST transport for most of Java and Go clients (#230)
- [ ] Regenerate this pull request now. PiperOrigin-RevId: 456641589 Source-Link: googleapis/googleapis@8a251f5 Source-Link: https://github.com/googleapis/googleapis-gen/commit/4ca52a529cf01308d9714950edffbea3560cfbdb Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNGNhNTJhNTI5Y2YwMTMwOGQ5NzE0OTUwZWRmZmJlYTM1NjBjZmJkYiJ9
1 parent 7e41c0e commit dd85912

File tree

38 files changed

+4725
-28
lines changed

38 files changed

+4725
-28
lines changed

java-binary-authorization/.kokoro/dependencies.sh

+2-2
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,11 @@ function completenessCheck() {
6666
# This is stripped from the output as it is not present in the flattened pom.
6767
# Only dependencies with 'compile' or 'runtime' scope are included from original dependency list.
6868
msg "Generating dependency list using original pom..."
69-
mvn dependency:list -f pom.xml -DincludeScope=runtime -Dsort=true | grep '\[INFO] .*:.*:.*:.*:.*' | sed -e 's/ --.*//' >.org-list.txt
69+
mvn dependency:list -f pom.xml -DexcludeArtifactIds=commons-codec,commons-logging,opencensus-api,opencensus-contrib-http-util,httpclient,httpcore -DincludeScope=runtime -Dsort=true | grep '\[INFO] .*:.*:.*:.*:.*' | sed -e 's/ --.*//' >.org-list.txt
7070

7171
# Output dep list generated using the flattened pom (only 'compile' and 'runtime' scopes)
7272
msg "Generating dependency list using flattened pom..."
73-
mvn dependency:list -f .flattened-pom.xml -DincludeScope=runtime -Dsort=true | grep '\[INFO] .*:.*:.*:.*:.*' >.new-list.txt
73+
mvn dependency:list -f .flattened-pom.xml -DexcludeArtifactIds=commons-codec,commons-logging,opencensus-api,opencensus-contrib-http-util,httpclient,httpcore -DincludeScope=runtime -Dsort=true | grep '\[INFO] .*:.*:.*:.*:.*' >.new-list.txt
7474

7575
# Compare two dependency lists
7676
msg "Comparing dependency lists..."

java-binary-authorization/google-cloud-binary-authorization/pom.xml

+16
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@
6262
<groupId>com.google.api</groupId>
6363
<artifactId>gax-grpc</artifactId>
6464
</dependency>
65+
<dependency>
66+
<groupId>com.google.api</groupId>
67+
<artifactId>gax-httpjson</artifactId>
68+
</dependency>
6569
<dependency>
6670
<groupId>org.threeten</groupId>
6771
<artifactId>threetenbp</artifactId>
@@ -91,12 +95,24 @@
9195
<scope>test</scope>
9296
</dependency>
9397
<!-- Need testing utility classes for generated gRPC clients tests -->
98+
<dependency>
99+
<groupId>com.google.api</groupId>
100+
<artifactId>gax</artifactId>
101+
<classifier>testlib</classifier>
102+
<scope>test</scope>
103+
</dependency>
94104
<dependency>
95105
<groupId>com.google.api</groupId>
96106
<artifactId>gax-grpc</artifactId>
97107
<classifier>testlib</classifier>
98108
<scope>test</scope>
99109
</dependency>
110+
<dependency>
111+
<groupId>com.google.api</groupId>
112+
<artifactId>gax-httpjson</artifactId>
113+
<classifier>testlib</classifier>
114+
<scope>test</scope>
115+
</dependency>
100116
</dependencies>
101117

102118
<profiles>

java-binary-authorization/google-cloud-binary-authorization/src/main/java/com/google/cloud/binaryauthorization/v1beta1/BinauthzManagementServiceV1Beta1Client.java

+16
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,22 @@
110110
* BinauthzManagementServiceV1Beta1Client.create(binauthzManagementServiceV1Beta1Settings);
111111
* }</pre>
112112
*
113+
* <p>To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over
114+
* the wire:
115+
*
116+
* <pre>{@code
117+
* // This snippet has been automatically generated for illustrative purposes only.
118+
* // It may require modifications to work in your environment.
119+
* BinauthzManagementServiceV1Beta1Settings binauthzManagementServiceV1Beta1Settings =
120+
* BinauthzManagementServiceV1Beta1Settings.newBuilder()
121+
* .setTransportChannelProvider(
122+
* BinauthzManagementServiceV1Beta1Settings.defaultHttpJsonTransportProviderBuilder()
123+
* .build())
124+
* .build();
125+
* BinauthzManagementServiceV1Beta1Client binauthzManagementServiceV1Beta1Client =
126+
* BinauthzManagementServiceV1Beta1Client.create(binauthzManagementServiceV1Beta1Settings);
127+
* }</pre>
128+
*
113129
* <p>Please refer to the GitHub repository's samples for more quickstart code snippets.
114130
*/
115131
@BetaApi

java-binary-authorization/google-cloud-binary-authorization/src/main/java/com/google/cloud/binaryauthorization/v1beta1/BinauthzManagementServiceV1Beta1Settings.java

+21-2
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;
@@ -143,11 +144,18 @@ public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilde
143144
return BinauthzManagementServiceV1Beta1StubSettings.defaultCredentialsProviderBuilder();
144145
}
145146

146-
/** Returns a builder for the default ChannelProvider for this service. */
147+
/** Returns a builder for the default gRPC ChannelProvider for this service. */
147148
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
148149
return BinauthzManagementServiceV1Beta1StubSettings.defaultGrpcTransportProviderBuilder();
149150
}
150151

152+
/** Returns a builder for the default REST ChannelProvider for this service. */
153+
@BetaApi
154+
public static InstantiatingHttpJsonChannelProvider.Builder
155+
defaultHttpJsonTransportProviderBuilder() {
156+
return BinauthzManagementServiceV1Beta1StubSettings.defaultHttpJsonTransportProviderBuilder();
157+
}
158+
151159
public static TransportChannelProvider defaultTransportChannelProvider() {
152160
return BinauthzManagementServiceV1Beta1StubSettings.defaultTransportChannelProvider();
153161
}
@@ -157,11 +165,17 @@ public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuil
157165
return BinauthzManagementServiceV1Beta1StubSettings.defaultApiClientHeaderProviderBuilder();
158166
}
159167

160-
/** Returns a new builder for this class. */
168+
/** Returns a new gRPC builder for this class. */
161169
public static Builder newBuilder() {
162170
return Builder.createDefault();
163171
}
164172

173+
/** Returns a new REST builder for this class. */
174+
@BetaApi
175+
public static Builder newHttpJsonBuilder() {
176+
return Builder.createHttpJsonDefault();
177+
}
178+
165179
/** Returns a new builder for this class. */
166180
public static Builder newBuilder(ClientContext clientContext) {
167181
return new Builder(clientContext);
@@ -200,6 +214,11 @@ private static Builder createDefault() {
200214
return new Builder(BinauthzManagementServiceV1Beta1StubSettings.newBuilder());
201215
}
202216

217+
@BetaApi
218+
private static Builder createHttpJsonDefault() {
219+
return new Builder(BinauthzManagementServiceV1Beta1StubSettings.newHttpJsonBuilder());
220+
}
221+
203222
public BinauthzManagementServiceV1Beta1StubSettings.Builder getStubSettingsBuilder() {
204223
return ((BinauthzManagementServiceV1Beta1StubSettings.Builder) getStubSettings());
205224
}

java-binary-authorization/google-cloud-binary-authorization/src/main/java/com/google/cloud/binaryauthorization/v1beta1/SystemPolicyV1Beta1Client.java

+15
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,21 @@
9292
* SystemPolicyV1Beta1Client.create(systemPolicyV1Beta1Settings);
9393
* }</pre>
9494
*
95+
* <p>To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over
96+
* the wire:
97+
*
98+
* <pre>{@code
99+
* // This snippet has been automatically generated for illustrative purposes only.
100+
* // It may require modifications to work in your environment.
101+
* SystemPolicyV1Beta1Settings systemPolicyV1Beta1Settings =
102+
* SystemPolicyV1Beta1Settings.newBuilder()
103+
* .setTransportChannelProvider(
104+
* SystemPolicyV1Beta1Settings.defaultHttpJsonTransportProviderBuilder().build())
105+
* .build();
106+
* SystemPolicyV1Beta1Client systemPolicyV1Beta1Client =
107+
* SystemPolicyV1Beta1Client.create(systemPolicyV1Beta1Settings);
108+
* }</pre>
109+
*
95110
* <p>Please refer to the GitHub repository's samples for more quickstart code snippets.
96111
*/
97112
@BetaApi

java-binary-authorization/google-cloud-binary-authorization/src/main/java/com/google/cloud/binaryauthorization/v1beta1/SystemPolicyV1Beta1Settings.java

+21-2
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import com.google.api.gax.core.GoogleCredentialsProvider;
2222
import com.google.api.gax.core.InstantiatingExecutorProvider;
2323
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
24+
import com.google.api.gax.httpjson.InstantiatingHttpJsonChannelProvider;
2425
import com.google.api.gax.rpc.ApiClientHeaderProvider;
2526
import com.google.api.gax.rpc.ClientContext;
2627
import com.google.api.gax.rpc.ClientSettings;
@@ -101,11 +102,18 @@ public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilde
101102
return SystemPolicyV1Beta1StubSettings.defaultCredentialsProviderBuilder();
102103
}
103104

104-
/** Returns a builder for the default ChannelProvider for this service. */
105+
/** Returns a builder for the default gRPC ChannelProvider for this service. */
105106
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
106107
return SystemPolicyV1Beta1StubSettings.defaultGrpcTransportProviderBuilder();
107108
}
108109

110+
/** Returns a builder for the default REST ChannelProvider for this service. */
111+
@BetaApi
112+
public static InstantiatingHttpJsonChannelProvider.Builder
113+
defaultHttpJsonTransportProviderBuilder() {
114+
return SystemPolicyV1Beta1StubSettings.defaultHttpJsonTransportProviderBuilder();
115+
}
116+
109117
public static TransportChannelProvider defaultTransportChannelProvider() {
110118
return SystemPolicyV1Beta1StubSettings.defaultTransportChannelProvider();
111119
}
@@ -115,11 +123,17 @@ public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuil
115123
return SystemPolicyV1Beta1StubSettings.defaultApiClientHeaderProviderBuilder();
116124
}
117125

118-
/** Returns a new builder for this class. */
126+
/** Returns a new gRPC builder for this class. */
119127
public static Builder newBuilder() {
120128
return Builder.createDefault();
121129
}
122130

131+
/** Returns a new REST builder for this class. */
132+
@BetaApi
133+
public static Builder newHttpJsonBuilder() {
134+
return Builder.createHttpJsonDefault();
135+
}
136+
123137
/** Returns a new builder for this class. */
124138
public static Builder newBuilder(ClientContext clientContext) {
125139
return new Builder(clientContext);
@@ -157,6 +171,11 @@ private static Builder createDefault() {
157171
return new Builder(SystemPolicyV1Beta1StubSettings.newBuilder());
158172
}
159173

174+
@BetaApi
175+
private static Builder createHttpJsonDefault() {
176+
return new Builder(SystemPolicyV1Beta1StubSettings.newHttpJsonBuilder());
177+
}
178+
160179
public SystemPolicyV1Beta1StubSettings.Builder getStubSettingsBuilder() {
161180
return ((SystemPolicyV1Beta1StubSettings.Builder) getStubSettings());
162181
}

java-binary-authorization/google-cloud-binary-authorization/src/main/java/com/google/cloud/binaryauthorization/v1beta1/stub/BinauthzManagementServiceV1Beta1StubSettings.java

+51-3
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@
2727
import com.google.api.gax.grpc.GaxGrpcProperties;
2828
import com.google.api.gax.grpc.GrpcTransportChannel;
2929
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
30+
import com.google.api.gax.httpjson.GaxHttpJsonProperties;
31+
import com.google.api.gax.httpjson.HttpJsonTransportChannel;
32+
import com.google.api.gax.httpjson.InstantiatingHttpJsonChannelProvider;
3033
import com.google.api.gax.retrying.RetrySettings;
3134
import com.google.api.gax.rpc.ApiCallContext;
3235
import com.google.api.gax.rpc.ApiClientHeaderProvider;
@@ -210,6 +213,11 @@ public BinauthzManagementServiceV1Beta1Stub createStub() throws IOException {
210213
.equals(GrpcTransportChannel.getGrpcTransportName())) {
211214
return GrpcBinauthzManagementServiceV1Beta1Stub.create(this);
212215
}
216+
if (getTransportChannelProvider()
217+
.getTransportName()
218+
.equals(HttpJsonTransportChannel.getHttpJsonTransportName())) {
219+
return HttpJsonBinauthzManagementServiceV1Beta1Stub.create(this);
220+
}
213221
throw new UnsupportedOperationException(
214222
String.format(
215223
"Transport not supported: %s", getTransportChannelProvider().getTransportName()));
@@ -242,18 +250,25 @@ public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilde
242250
.setUseJwtAccessWithScope(true);
243251
}
244252

245-
/** Returns a builder for the default ChannelProvider for this service. */
253+
/** Returns a builder for the default gRPC ChannelProvider for this service. */
246254
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
247255
return InstantiatingGrpcChannelProvider.newBuilder()
248256
.setMaxInboundMessageSize(Integer.MAX_VALUE);
249257
}
250258

259+
/** Returns a builder for the default REST ChannelProvider for this service. */
260+
@BetaApi
261+
public static InstantiatingHttpJsonChannelProvider.Builder
262+
defaultHttpJsonTransportProviderBuilder() {
263+
return InstantiatingHttpJsonChannelProvider.newBuilder();
264+
}
265+
251266
public static TransportChannelProvider defaultTransportChannelProvider() {
252267
return defaultGrpcTransportProviderBuilder().build();
253268
}
254269

255270
@BetaApi("The surface for customizing headers is not stable yet and may change in the future.")
256-
public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() {
271+
public static ApiClientHeaderProvider.Builder defaultGrpcApiClientHeaderProviderBuilder() {
257272
return ApiClientHeaderProvider.newBuilder()
258273
.setGeneratedLibToken(
259274
"gapic",
@@ -262,11 +277,31 @@ public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuil
262277
GaxGrpcProperties.getGrpcTokenName(), GaxGrpcProperties.getGrpcVersion());
263278
}
264279

265-
/** Returns a new builder for this class. */
280+
@BetaApi("The surface for customizing headers is not stable yet and may change in the future.")
281+
public static ApiClientHeaderProvider.Builder defaultHttpJsonApiClientHeaderProviderBuilder() {
282+
return ApiClientHeaderProvider.newBuilder()
283+
.setGeneratedLibToken(
284+
"gapic",
285+
GaxProperties.getLibraryVersion(BinauthzManagementServiceV1Beta1StubSettings.class))
286+
.setTransportToken(
287+
GaxHttpJsonProperties.getHttpJsonTokenName(),
288+
GaxHttpJsonProperties.getHttpJsonVersion());
289+
}
290+
291+
public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() {
292+
return BinauthzManagementServiceV1Beta1StubSettings.defaultGrpcApiClientHeaderProviderBuilder();
293+
}
294+
295+
/** Returns a new gRPC builder for this class. */
266296
public static Builder newBuilder() {
267297
return Builder.createDefault();
268298
}
269299

300+
/** Returns a new REST builder for this class. */
301+
public static Builder newHttpJsonBuilder() {
302+
return Builder.createHttpJsonDefault();
303+
}
304+
270305
/** Returns a new builder for this class. */
271306
public static Builder newBuilder(ClientContext clientContext) {
272307
return new Builder(clientContext);
@@ -408,6 +443,19 @@ private static Builder createDefault() {
408443
return initDefaults(builder);
409444
}
410445

446+
private static Builder createHttpJsonDefault() {
447+
Builder builder = new Builder(((ClientContext) null));
448+
449+
builder.setTransportChannelProvider(defaultHttpJsonTransportProviderBuilder().build());
450+
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
451+
builder.setInternalHeaderProvider(defaultHttpJsonApiClientHeaderProviderBuilder().build());
452+
builder.setEndpoint(getDefaultEndpoint());
453+
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
454+
builder.setSwitchToMtlsEndpointAllowed(true);
455+
456+
return initDefaults(builder);
457+
}
458+
411459
private static Builder initDefaults(Builder builder) {
412460
builder
413461
.getPolicySettings()

0 commit comments

Comments
 (0)