Skip to content

Commit 2ec7bb4

Browse files
feat: Enable REST transport for most of Java and Go clients (googleapis#448)
- [ ] 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 3b07e54 commit 2ec7bb4

File tree

67 files changed

+4905
-22
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+4905
-22
lines changed

java-assured-workloads/google-cloud-assured-workloads/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>
@@ -86,12 +90,24 @@
8690
<scope>test</scope>
8791
</dependency>
8892
<!-- Need testing utility classes for generated gRPC clients tests -->
93+
<dependency>
94+
<groupId>com.google.api</groupId>
95+
<artifactId>gax</artifactId>
96+
<classifier>testlib</classifier>
97+
<scope>test</scope>
98+
</dependency>
8999
<dependency>
90100
<groupId>com.google.api</groupId>
91101
<artifactId>gax-grpc</artifactId>
92102
<classifier>testlib</classifier>
93103
<scope>test</scope>
94104
</dependency>
105+
<dependency>
106+
<groupId>com.google.api</groupId>
107+
<artifactId>gax-httpjson</artifactId>
108+
<classifier>testlib</classifier>
109+
<scope>test</scope>
110+
</dependency>
95111
</dependencies>
96112

97113
<profiles>

java-assured-workloads/google-cloud-assured-workloads/src/main/java/com/google/cloud/assuredworkloads/v1/AssuredWorkloadsServiceClient.java

+33-5
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.google.api.core.ApiFuture;
2020
import com.google.api.core.ApiFutures;
2121
import com.google.api.gax.core.BackgroundResource;
22+
import com.google.api.gax.httpjson.longrunning.OperationsClient;
2223
import com.google.api.gax.longrunning.OperationFuture;
2324
import com.google.api.gax.paging.AbstractFixedSizeCollection;
2425
import com.google.api.gax.paging.AbstractPage;
@@ -30,7 +31,6 @@
3031
import com.google.cloud.assuredworkloads.v1.stub.AssuredWorkloadsServiceStubSettings;
3132
import com.google.common.util.concurrent.MoreExecutors;
3233
import com.google.longrunning.Operation;
33-
import com.google.longrunning.OperationsClient;
3434
import com.google.protobuf.Empty;
3535
import com.google.protobuf.FieldMask;
3636
import java.io.IOException;
@@ -107,13 +107,29 @@
107107
* AssuredWorkloadsServiceClient.create(assuredWorkloadsServiceSettings);
108108
* }</pre>
109109
*
110+
* <p>To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over
111+
* the wire:
112+
*
113+
* <pre>{@code
114+
* // This snippet has been automatically generated for illustrative purposes only.
115+
* // It may require modifications to work in your environment.
116+
* AssuredWorkloadsServiceSettings assuredWorkloadsServiceSettings =
117+
* AssuredWorkloadsServiceSettings.newBuilder()
118+
* .setTransportChannelProvider(
119+
* AssuredWorkloadsServiceSettings.defaultHttpJsonTransportProviderBuilder().build())
120+
* .build();
121+
* AssuredWorkloadsServiceClient assuredWorkloadsServiceClient =
122+
* AssuredWorkloadsServiceClient.create(assuredWorkloadsServiceSettings);
123+
* }</pre>
124+
*
110125
* <p>Please refer to the GitHub repository's samples for more quickstart code snippets.
111126
*/
112127
@Generated("by gapic-generator-java")
113128
public class AssuredWorkloadsServiceClient implements BackgroundResource {
114129
private final AssuredWorkloadsServiceSettings settings;
115130
private final AssuredWorkloadsServiceStub stub;
116-
private final OperationsClient operationsClient;
131+
private final OperationsClient httpJsonOperationsClient;
132+
private final com.google.longrunning.OperationsClient operationsClient;
117133

118134
/** Constructs an instance of AssuredWorkloadsServiceClient with default settings. */
119135
public static final AssuredWorkloadsServiceClient create() throws IOException {
@@ -146,13 +162,17 @@ protected AssuredWorkloadsServiceClient(AssuredWorkloadsServiceSettings settings
146162
throws IOException {
147163
this.settings = settings;
148164
this.stub = ((AssuredWorkloadsServiceStubSettings) settings.getStubSettings()).createStub();
149-
this.operationsClient = OperationsClient.create(this.stub.getOperationsStub());
165+
this.operationsClient =
166+
com.google.longrunning.OperationsClient.create(this.stub.getOperationsStub());
167+
this.httpJsonOperationsClient = OperationsClient.create(this.stub.getHttpJsonOperationsStub());
150168
}
151169

152170
protected AssuredWorkloadsServiceClient(AssuredWorkloadsServiceStub stub) {
153171
this.settings = null;
154172
this.stub = stub;
155-
this.operationsClient = OperationsClient.create(this.stub.getOperationsStub());
173+
this.operationsClient =
174+
com.google.longrunning.OperationsClient.create(this.stub.getOperationsStub());
175+
this.httpJsonOperationsClient = OperationsClient.create(this.stub.getHttpJsonOperationsStub());
156176
}
157177

158178
public final AssuredWorkloadsServiceSettings getSettings() {
@@ -167,10 +187,18 @@ public AssuredWorkloadsServiceStub getStub() {
167187
* Returns the OperationsClient that can be used to query the status of a long-running operation
168188
* returned by another API method call.
169189
*/
170-
public final OperationsClient getOperationsClient() {
190+
public final com.google.longrunning.OperationsClient getOperationsClient() {
171191
return operationsClient;
172192
}
173193

194+
/**
195+
* Returns the OperationsClient that can be used to query the status of a long-running operation
196+
* returned by another API method call.
197+
*/
198+
public final OperationsClient getHttpJsonOperationsClient() {
199+
return httpJsonOperationsClient;
200+
}
201+
174202
// AUTO-GENERATED DOCUMENTATION AND METHOD.
175203
/**
176204
* Creates Assured Workload.

java-assured-workloads/google-cloud-assured-workloads/src/main/java/com/google/cloud/assuredworkloads/v1/AssuredWorkloadsServiceSettings.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;
@@ -135,11 +136,18 @@ public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilde
135136
return AssuredWorkloadsServiceStubSettings.defaultCredentialsProviderBuilder();
136137
}
137138

138-
/** Returns a builder for the default ChannelProvider for this service. */
139+
/** Returns a builder for the default gRPC ChannelProvider for this service. */
139140
public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() {
140141
return AssuredWorkloadsServiceStubSettings.defaultGrpcTransportProviderBuilder();
141142
}
142143

144+
/** Returns a builder for the default REST ChannelProvider for this service. */
145+
@BetaApi
146+
public static InstantiatingHttpJsonChannelProvider.Builder
147+
defaultHttpJsonTransportProviderBuilder() {
148+
return AssuredWorkloadsServiceStubSettings.defaultHttpJsonTransportProviderBuilder();
149+
}
150+
143151
public static TransportChannelProvider defaultTransportChannelProvider() {
144152
return AssuredWorkloadsServiceStubSettings.defaultTransportChannelProvider();
145153
}
@@ -149,11 +157,17 @@ public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuil
149157
return AssuredWorkloadsServiceStubSettings.defaultApiClientHeaderProviderBuilder();
150158
}
151159

152-
/** Returns a new builder for this class. */
160+
/** Returns a new gRPC builder for this class. */
153161
public static Builder newBuilder() {
154162
return Builder.createDefault();
155163
}
156164

165+
/** Returns a new REST builder for this class. */
166+
@BetaApi
167+
public static Builder newHttpJsonBuilder() {
168+
return Builder.createHttpJsonDefault();
169+
}
170+
157171
/** Returns a new builder for this class. */
158172
public static Builder newBuilder(ClientContext clientContext) {
159173
return new Builder(clientContext);
@@ -192,6 +206,11 @@ private static Builder createDefault() {
192206
return new Builder(AssuredWorkloadsServiceStubSettings.newBuilder());
193207
}
194208

209+
@BetaApi
210+
private static Builder createHttpJsonDefault() {
211+
return new Builder(AssuredWorkloadsServiceStubSettings.newHttpJsonBuilder());
212+
}
213+
195214
public AssuredWorkloadsServiceStubSettings.Builder getStubSettingsBuilder() {
196215
return ((AssuredWorkloadsServiceStubSettings.Builder) getStubSettings());
197216
}

java-assured-workloads/google-cloud-assured-workloads/src/main/java/com/google/cloud/assuredworkloads/v1/stub/AssuredWorkloadsServiceStub.java

+5-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,11 @@
4444
public abstract class AssuredWorkloadsServiceStub implements BackgroundResource {
4545

4646
public OperationsStub getOperationsStub() {
47-
throw new UnsupportedOperationException("Not implemented: getOperationsStub()");
47+
return null;
48+
}
49+
50+
public com.google.api.gax.httpjson.longrunning.stub.OperationsStub getHttpJsonOperationsStub() {
51+
return null;
4852
}
4953

5054
public OperationCallable<CreateWorkloadRequest, Workload, CreateWorkloadOperationMetadata>

java-assured-workloads/google-cloud-assured-workloads/src/main/java/com/google/cloud/assuredworkloads/v1/stub/AssuredWorkloadsServiceStubSettings.java

+50-3
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@
2828
import com.google.api.gax.grpc.GrpcTransportChannel;
2929
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
3030
import com.google.api.gax.grpc.ProtoOperationTransformers;
31+
import com.google.api.gax.httpjson.GaxHttpJsonProperties;
32+
import com.google.api.gax.httpjson.HttpJsonTransportChannel;
33+
import com.google.api.gax.httpjson.InstantiatingHttpJsonChannelProvider;
3134
import com.google.api.gax.longrunning.OperationSnapshot;
3235
import com.google.api.gax.longrunning.OperationTimedPollAlgorithm;
3336
import com.google.api.gax.retrying.RetrySettings;
@@ -208,6 +211,11 @@ public AssuredWorkloadsServiceStub createStub() throws IOException {
208211
.equals(GrpcTransportChannel.getGrpcTransportName())) {
209212
return GrpcAssuredWorkloadsServiceStub.create(this);
210213
}
214+
if (getTransportChannelProvider()
215+
.getTransportName()
216+
.equals(HttpJsonTransportChannel.getHttpJsonTransportName())) {
217+
return HttpJsonAssuredWorkloadsServiceStub.create(this);
218+
}
211219
throw new UnsupportedOperationException(
212220
String.format(
213221
"Transport not supported: %s", getTransportChannelProvider().getTransportName()));
@@ -240,30 +248,56 @@ public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilde
240248
.setUseJwtAccessWithScope(true);
241249
}
242250

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

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

253268
@BetaApi("The surface for customizing headers is not stable yet and may change in the future.")
254-
public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() {
269+
public static ApiClientHeaderProvider.Builder defaultGrpcApiClientHeaderProviderBuilder() {
255270
return ApiClientHeaderProvider.newBuilder()
256271
.setGeneratedLibToken(
257272
"gapic", GaxProperties.getLibraryVersion(AssuredWorkloadsServiceStubSettings.class))
258273
.setTransportToken(
259274
GaxGrpcProperties.getGrpcTokenName(), GaxGrpcProperties.getGrpcVersion());
260275
}
261276

262-
/** Returns a new builder for this class. */
277+
@BetaApi("The surface for customizing headers is not stable yet and may change in the future.")
278+
public static ApiClientHeaderProvider.Builder defaultHttpJsonApiClientHeaderProviderBuilder() {
279+
return ApiClientHeaderProvider.newBuilder()
280+
.setGeneratedLibToken(
281+
"gapic", GaxProperties.getLibraryVersion(AssuredWorkloadsServiceStubSettings.class))
282+
.setTransportToken(
283+
GaxHttpJsonProperties.getHttpJsonTokenName(),
284+
GaxHttpJsonProperties.getHttpJsonVersion());
285+
}
286+
287+
public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() {
288+
return AssuredWorkloadsServiceStubSettings.defaultGrpcApiClientHeaderProviderBuilder();
289+
}
290+
291+
/** Returns a new gRPC builder for this class. */
263292
public static Builder newBuilder() {
264293
return Builder.createDefault();
265294
}
266295

296+
/** Returns a new REST builder for this class. */
297+
public static Builder newHttpJsonBuilder() {
298+
return Builder.createHttpJsonDefault();
299+
}
300+
267301
/** Returns a new builder for this class. */
268302
public static Builder newBuilder(ClientContext clientContext) {
269303
return new Builder(clientContext);
@@ -383,6 +417,19 @@ private static Builder createDefault() {
383417
return initDefaults(builder);
384418
}
385419

420+
private static Builder createHttpJsonDefault() {
421+
Builder builder = new Builder(((ClientContext) null));
422+
423+
builder.setTransportChannelProvider(defaultHttpJsonTransportProviderBuilder().build());
424+
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
425+
builder.setInternalHeaderProvider(defaultHttpJsonApiClientHeaderProviderBuilder().build());
426+
builder.setEndpoint(getDefaultEndpoint());
427+
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
428+
builder.setSwitchToMtlsEndpointAllowed(true);
429+
430+
return initDefaults(builder);
431+
}
432+
386433
private static Builder initDefaults(Builder builder) {
387434
builder
388435
.createWorkloadSettings()

0 commit comments

Comments
 (0)