• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2022 Google LLC
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.google.cloud.aiplatform.v1.stub;
18 
19 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListLocationsPagedResponse;
20 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListModelEvaluationSlicesPagedResponse;
21 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListModelEvaluationsPagedResponse;
22 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListModelVersionsPagedResponse;
23 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListModelsPagedResponse;
24 
25 import com.google.api.gax.core.BackgroundResource;
26 import com.google.api.gax.core.BackgroundResourceAggregation;
27 import com.google.api.gax.grpc.GrpcCallSettings;
28 import com.google.api.gax.grpc.GrpcStubCallableFactory;
29 import com.google.api.gax.rpc.ClientContext;
30 import com.google.api.gax.rpc.OperationCallable;
31 import com.google.api.gax.rpc.UnaryCallable;
32 import com.google.cloud.aiplatform.v1.BatchImportEvaluatedAnnotationsRequest;
33 import com.google.cloud.aiplatform.v1.BatchImportEvaluatedAnnotationsResponse;
34 import com.google.cloud.aiplatform.v1.BatchImportModelEvaluationSlicesRequest;
35 import com.google.cloud.aiplatform.v1.BatchImportModelEvaluationSlicesResponse;
36 import com.google.cloud.aiplatform.v1.CopyModelOperationMetadata;
37 import com.google.cloud.aiplatform.v1.CopyModelRequest;
38 import com.google.cloud.aiplatform.v1.CopyModelResponse;
39 import com.google.cloud.aiplatform.v1.DeleteModelRequest;
40 import com.google.cloud.aiplatform.v1.DeleteModelVersionRequest;
41 import com.google.cloud.aiplatform.v1.DeleteOperationMetadata;
42 import com.google.cloud.aiplatform.v1.ExportModelOperationMetadata;
43 import com.google.cloud.aiplatform.v1.ExportModelRequest;
44 import com.google.cloud.aiplatform.v1.ExportModelResponse;
45 import com.google.cloud.aiplatform.v1.GetModelEvaluationRequest;
46 import com.google.cloud.aiplatform.v1.GetModelEvaluationSliceRequest;
47 import com.google.cloud.aiplatform.v1.GetModelRequest;
48 import com.google.cloud.aiplatform.v1.ImportModelEvaluationRequest;
49 import com.google.cloud.aiplatform.v1.ListModelEvaluationSlicesRequest;
50 import com.google.cloud.aiplatform.v1.ListModelEvaluationSlicesResponse;
51 import com.google.cloud.aiplatform.v1.ListModelEvaluationsRequest;
52 import com.google.cloud.aiplatform.v1.ListModelEvaluationsResponse;
53 import com.google.cloud.aiplatform.v1.ListModelVersionsRequest;
54 import com.google.cloud.aiplatform.v1.ListModelVersionsResponse;
55 import com.google.cloud.aiplatform.v1.ListModelsRequest;
56 import com.google.cloud.aiplatform.v1.ListModelsResponse;
57 import com.google.cloud.aiplatform.v1.MergeVersionAliasesRequest;
58 import com.google.cloud.aiplatform.v1.Model;
59 import com.google.cloud.aiplatform.v1.ModelEvaluation;
60 import com.google.cloud.aiplatform.v1.ModelEvaluationSlice;
61 import com.google.cloud.aiplatform.v1.UpdateModelRequest;
62 import com.google.cloud.aiplatform.v1.UploadModelOperationMetadata;
63 import com.google.cloud.aiplatform.v1.UploadModelRequest;
64 import com.google.cloud.aiplatform.v1.UploadModelResponse;
65 import com.google.cloud.location.GetLocationRequest;
66 import com.google.cloud.location.ListLocationsRequest;
67 import com.google.cloud.location.ListLocationsResponse;
68 import com.google.cloud.location.Location;
69 import com.google.common.collect.ImmutableMap;
70 import com.google.iam.v1.GetIamPolicyRequest;
71 import com.google.iam.v1.Policy;
72 import com.google.iam.v1.SetIamPolicyRequest;
73 import com.google.iam.v1.TestIamPermissionsRequest;
74 import com.google.iam.v1.TestIamPermissionsResponse;
75 import com.google.longrunning.Operation;
76 import com.google.longrunning.stub.GrpcOperationsStub;
77 import com.google.protobuf.Empty;
78 import io.grpc.MethodDescriptor;
79 import io.grpc.protobuf.ProtoUtils;
80 import java.io.IOException;
81 import java.util.concurrent.TimeUnit;
82 import javax.annotation.Generated;
83 
84 // AUTO-GENERATED DOCUMENTATION AND CLASS.
85 /**
86  * gRPC stub implementation for the ModelService service API.
87  *
88  * <p>This class is for advanced usage and reflects the underlying API directly.
89  */
90 @Generated("by gapic-generator-java")
91 public class GrpcModelServiceStub extends ModelServiceStub {
92   private static final MethodDescriptor<UploadModelRequest, Operation> uploadModelMethodDescriptor =
93       MethodDescriptor.<UploadModelRequest, Operation>newBuilder()
94           .setType(MethodDescriptor.MethodType.UNARY)
95           .setFullMethodName("google.cloud.aiplatform.v1.ModelService/UploadModel")
96           .setRequestMarshaller(ProtoUtils.marshaller(UploadModelRequest.getDefaultInstance()))
97           .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
98           .build();
99 
100   private static final MethodDescriptor<GetModelRequest, Model> getModelMethodDescriptor =
101       MethodDescriptor.<GetModelRequest, Model>newBuilder()
102           .setType(MethodDescriptor.MethodType.UNARY)
103           .setFullMethodName("google.cloud.aiplatform.v1.ModelService/GetModel")
104           .setRequestMarshaller(ProtoUtils.marshaller(GetModelRequest.getDefaultInstance()))
105           .setResponseMarshaller(ProtoUtils.marshaller(Model.getDefaultInstance()))
106           .build();
107 
108   private static final MethodDescriptor<ListModelsRequest, ListModelsResponse>
109       listModelsMethodDescriptor =
110           MethodDescriptor.<ListModelsRequest, ListModelsResponse>newBuilder()
111               .setType(MethodDescriptor.MethodType.UNARY)
112               .setFullMethodName("google.cloud.aiplatform.v1.ModelService/ListModels")
113               .setRequestMarshaller(ProtoUtils.marshaller(ListModelsRequest.getDefaultInstance()))
114               .setResponseMarshaller(ProtoUtils.marshaller(ListModelsResponse.getDefaultInstance()))
115               .build();
116 
117   private static final MethodDescriptor<ListModelVersionsRequest, ListModelVersionsResponse>
118       listModelVersionsMethodDescriptor =
119           MethodDescriptor.<ListModelVersionsRequest, ListModelVersionsResponse>newBuilder()
120               .setType(MethodDescriptor.MethodType.UNARY)
121               .setFullMethodName("google.cloud.aiplatform.v1.ModelService/ListModelVersions")
122               .setRequestMarshaller(
123                   ProtoUtils.marshaller(ListModelVersionsRequest.getDefaultInstance()))
124               .setResponseMarshaller(
125                   ProtoUtils.marshaller(ListModelVersionsResponse.getDefaultInstance()))
126               .build();
127 
128   private static final MethodDescriptor<UpdateModelRequest, Model> updateModelMethodDescriptor =
129       MethodDescriptor.<UpdateModelRequest, Model>newBuilder()
130           .setType(MethodDescriptor.MethodType.UNARY)
131           .setFullMethodName("google.cloud.aiplatform.v1.ModelService/UpdateModel")
132           .setRequestMarshaller(ProtoUtils.marshaller(UpdateModelRequest.getDefaultInstance()))
133           .setResponseMarshaller(ProtoUtils.marshaller(Model.getDefaultInstance()))
134           .build();
135 
136   private static final MethodDescriptor<DeleteModelRequest, Operation> deleteModelMethodDescriptor =
137       MethodDescriptor.<DeleteModelRequest, Operation>newBuilder()
138           .setType(MethodDescriptor.MethodType.UNARY)
139           .setFullMethodName("google.cloud.aiplatform.v1.ModelService/DeleteModel")
140           .setRequestMarshaller(ProtoUtils.marshaller(DeleteModelRequest.getDefaultInstance()))
141           .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
142           .build();
143 
144   private static final MethodDescriptor<DeleteModelVersionRequest, Operation>
145       deleteModelVersionMethodDescriptor =
146           MethodDescriptor.<DeleteModelVersionRequest, Operation>newBuilder()
147               .setType(MethodDescriptor.MethodType.UNARY)
148               .setFullMethodName("google.cloud.aiplatform.v1.ModelService/DeleteModelVersion")
149               .setRequestMarshaller(
150                   ProtoUtils.marshaller(DeleteModelVersionRequest.getDefaultInstance()))
151               .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
152               .build();
153 
154   private static final MethodDescriptor<MergeVersionAliasesRequest, Model>
155       mergeVersionAliasesMethodDescriptor =
156           MethodDescriptor.<MergeVersionAliasesRequest, Model>newBuilder()
157               .setType(MethodDescriptor.MethodType.UNARY)
158               .setFullMethodName("google.cloud.aiplatform.v1.ModelService/MergeVersionAliases")
159               .setRequestMarshaller(
160                   ProtoUtils.marshaller(MergeVersionAliasesRequest.getDefaultInstance()))
161               .setResponseMarshaller(ProtoUtils.marshaller(Model.getDefaultInstance()))
162               .build();
163 
164   private static final MethodDescriptor<ExportModelRequest, Operation> exportModelMethodDescriptor =
165       MethodDescriptor.<ExportModelRequest, Operation>newBuilder()
166           .setType(MethodDescriptor.MethodType.UNARY)
167           .setFullMethodName("google.cloud.aiplatform.v1.ModelService/ExportModel")
168           .setRequestMarshaller(ProtoUtils.marshaller(ExportModelRequest.getDefaultInstance()))
169           .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
170           .build();
171 
172   private static final MethodDescriptor<CopyModelRequest, Operation> copyModelMethodDescriptor =
173       MethodDescriptor.<CopyModelRequest, Operation>newBuilder()
174           .setType(MethodDescriptor.MethodType.UNARY)
175           .setFullMethodName("google.cloud.aiplatform.v1.ModelService/CopyModel")
176           .setRequestMarshaller(ProtoUtils.marshaller(CopyModelRequest.getDefaultInstance()))
177           .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
178           .build();
179 
180   private static final MethodDescriptor<ImportModelEvaluationRequest, ModelEvaluation>
181       importModelEvaluationMethodDescriptor =
182           MethodDescriptor.<ImportModelEvaluationRequest, ModelEvaluation>newBuilder()
183               .setType(MethodDescriptor.MethodType.UNARY)
184               .setFullMethodName("google.cloud.aiplatform.v1.ModelService/ImportModelEvaluation")
185               .setRequestMarshaller(
186                   ProtoUtils.marshaller(ImportModelEvaluationRequest.getDefaultInstance()))
187               .setResponseMarshaller(ProtoUtils.marshaller(ModelEvaluation.getDefaultInstance()))
188               .build();
189 
190   private static final MethodDescriptor<
191           BatchImportModelEvaluationSlicesRequest, BatchImportModelEvaluationSlicesResponse>
192       batchImportModelEvaluationSlicesMethodDescriptor =
193           MethodDescriptor
194               .<BatchImportModelEvaluationSlicesRequest, BatchImportModelEvaluationSlicesResponse>
195                   newBuilder()
196               .setType(MethodDescriptor.MethodType.UNARY)
197               .setFullMethodName(
198                   "google.cloud.aiplatform.v1.ModelService/BatchImportModelEvaluationSlices")
199               .setRequestMarshaller(
200                   ProtoUtils.marshaller(
201                       BatchImportModelEvaluationSlicesRequest.getDefaultInstance()))
202               .setResponseMarshaller(
203                   ProtoUtils.marshaller(
204                       BatchImportModelEvaluationSlicesResponse.getDefaultInstance()))
205               .build();
206 
207   private static final MethodDescriptor<
208           BatchImportEvaluatedAnnotationsRequest, BatchImportEvaluatedAnnotationsResponse>
209       batchImportEvaluatedAnnotationsMethodDescriptor =
210           MethodDescriptor
211               .<BatchImportEvaluatedAnnotationsRequest, BatchImportEvaluatedAnnotationsResponse>
212                   newBuilder()
213               .setType(MethodDescriptor.MethodType.UNARY)
214               .setFullMethodName(
215                   "google.cloud.aiplatform.v1.ModelService/BatchImportEvaluatedAnnotations")
216               .setRequestMarshaller(
217                   ProtoUtils.marshaller(
218                       BatchImportEvaluatedAnnotationsRequest.getDefaultInstance()))
219               .setResponseMarshaller(
220                   ProtoUtils.marshaller(
221                       BatchImportEvaluatedAnnotationsResponse.getDefaultInstance()))
222               .build();
223 
224   private static final MethodDescriptor<GetModelEvaluationRequest, ModelEvaluation>
225       getModelEvaluationMethodDescriptor =
226           MethodDescriptor.<GetModelEvaluationRequest, ModelEvaluation>newBuilder()
227               .setType(MethodDescriptor.MethodType.UNARY)
228               .setFullMethodName("google.cloud.aiplatform.v1.ModelService/GetModelEvaluation")
229               .setRequestMarshaller(
230                   ProtoUtils.marshaller(GetModelEvaluationRequest.getDefaultInstance()))
231               .setResponseMarshaller(ProtoUtils.marshaller(ModelEvaluation.getDefaultInstance()))
232               .build();
233 
234   private static final MethodDescriptor<ListModelEvaluationsRequest, ListModelEvaluationsResponse>
235       listModelEvaluationsMethodDescriptor =
236           MethodDescriptor.<ListModelEvaluationsRequest, ListModelEvaluationsResponse>newBuilder()
237               .setType(MethodDescriptor.MethodType.UNARY)
238               .setFullMethodName("google.cloud.aiplatform.v1.ModelService/ListModelEvaluations")
239               .setRequestMarshaller(
240                   ProtoUtils.marshaller(ListModelEvaluationsRequest.getDefaultInstance()))
241               .setResponseMarshaller(
242                   ProtoUtils.marshaller(ListModelEvaluationsResponse.getDefaultInstance()))
243               .build();
244 
245   private static final MethodDescriptor<GetModelEvaluationSliceRequest, ModelEvaluationSlice>
246       getModelEvaluationSliceMethodDescriptor =
247           MethodDescriptor.<GetModelEvaluationSliceRequest, ModelEvaluationSlice>newBuilder()
248               .setType(MethodDescriptor.MethodType.UNARY)
249               .setFullMethodName("google.cloud.aiplatform.v1.ModelService/GetModelEvaluationSlice")
250               .setRequestMarshaller(
251                   ProtoUtils.marshaller(GetModelEvaluationSliceRequest.getDefaultInstance()))
252               .setResponseMarshaller(
253                   ProtoUtils.marshaller(ModelEvaluationSlice.getDefaultInstance()))
254               .build();
255 
256   private static final MethodDescriptor<
257           ListModelEvaluationSlicesRequest, ListModelEvaluationSlicesResponse>
258       listModelEvaluationSlicesMethodDescriptor =
259           MethodDescriptor
260               .<ListModelEvaluationSlicesRequest, ListModelEvaluationSlicesResponse>newBuilder()
261               .setType(MethodDescriptor.MethodType.UNARY)
262               .setFullMethodName(
263                   "google.cloud.aiplatform.v1.ModelService/ListModelEvaluationSlices")
264               .setRequestMarshaller(
265                   ProtoUtils.marshaller(ListModelEvaluationSlicesRequest.getDefaultInstance()))
266               .setResponseMarshaller(
267                   ProtoUtils.marshaller(ListModelEvaluationSlicesResponse.getDefaultInstance()))
268               .build();
269 
270   private static final MethodDescriptor<ListLocationsRequest, ListLocationsResponse>
271       listLocationsMethodDescriptor =
272           MethodDescriptor.<ListLocationsRequest, ListLocationsResponse>newBuilder()
273               .setType(MethodDescriptor.MethodType.UNARY)
274               .setFullMethodName("google.cloud.location.Locations/ListLocations")
275               .setRequestMarshaller(
276                   ProtoUtils.marshaller(ListLocationsRequest.getDefaultInstance()))
277               .setResponseMarshaller(
278                   ProtoUtils.marshaller(ListLocationsResponse.getDefaultInstance()))
279               .build();
280 
281   private static final MethodDescriptor<GetLocationRequest, Location> getLocationMethodDescriptor =
282       MethodDescriptor.<GetLocationRequest, Location>newBuilder()
283           .setType(MethodDescriptor.MethodType.UNARY)
284           .setFullMethodName("google.cloud.location.Locations/GetLocation")
285           .setRequestMarshaller(ProtoUtils.marshaller(GetLocationRequest.getDefaultInstance()))
286           .setResponseMarshaller(ProtoUtils.marshaller(Location.getDefaultInstance()))
287           .build();
288 
289   private static final MethodDescriptor<SetIamPolicyRequest, Policy> setIamPolicyMethodDescriptor =
290       MethodDescriptor.<SetIamPolicyRequest, Policy>newBuilder()
291           .setType(MethodDescriptor.MethodType.UNARY)
292           .setFullMethodName("google.iam.v1.IAMPolicy/SetIamPolicy")
293           .setRequestMarshaller(ProtoUtils.marshaller(SetIamPolicyRequest.getDefaultInstance()))
294           .setResponseMarshaller(ProtoUtils.marshaller(Policy.getDefaultInstance()))
295           .build();
296 
297   private static final MethodDescriptor<GetIamPolicyRequest, Policy> getIamPolicyMethodDescriptor =
298       MethodDescriptor.<GetIamPolicyRequest, Policy>newBuilder()
299           .setType(MethodDescriptor.MethodType.UNARY)
300           .setFullMethodName("google.iam.v1.IAMPolicy/GetIamPolicy")
301           .setRequestMarshaller(ProtoUtils.marshaller(GetIamPolicyRequest.getDefaultInstance()))
302           .setResponseMarshaller(ProtoUtils.marshaller(Policy.getDefaultInstance()))
303           .build();
304 
305   private static final MethodDescriptor<TestIamPermissionsRequest, TestIamPermissionsResponse>
306       testIamPermissionsMethodDescriptor =
307           MethodDescriptor.<TestIamPermissionsRequest, TestIamPermissionsResponse>newBuilder()
308               .setType(MethodDescriptor.MethodType.UNARY)
309               .setFullMethodName("google.iam.v1.IAMPolicy/TestIamPermissions")
310               .setRequestMarshaller(
311                   ProtoUtils.marshaller(TestIamPermissionsRequest.getDefaultInstance()))
312               .setResponseMarshaller(
313                   ProtoUtils.marshaller(TestIamPermissionsResponse.getDefaultInstance()))
314               .build();
315 
316   private final UnaryCallable<UploadModelRequest, Operation> uploadModelCallable;
317   private final OperationCallable<
318           UploadModelRequest, UploadModelResponse, UploadModelOperationMetadata>
319       uploadModelOperationCallable;
320   private final UnaryCallable<GetModelRequest, Model> getModelCallable;
321   private final UnaryCallable<ListModelsRequest, ListModelsResponse> listModelsCallable;
322   private final UnaryCallable<ListModelsRequest, ListModelsPagedResponse> listModelsPagedCallable;
323   private final UnaryCallable<ListModelVersionsRequest, ListModelVersionsResponse>
324       listModelVersionsCallable;
325   private final UnaryCallable<ListModelVersionsRequest, ListModelVersionsPagedResponse>
326       listModelVersionsPagedCallable;
327   private final UnaryCallable<UpdateModelRequest, Model> updateModelCallable;
328   private final UnaryCallable<DeleteModelRequest, Operation> deleteModelCallable;
329   private final OperationCallable<DeleteModelRequest, Empty, DeleteOperationMetadata>
330       deleteModelOperationCallable;
331   private final UnaryCallable<DeleteModelVersionRequest, Operation> deleteModelVersionCallable;
332   private final OperationCallable<DeleteModelVersionRequest, Empty, DeleteOperationMetadata>
333       deleteModelVersionOperationCallable;
334   private final UnaryCallable<MergeVersionAliasesRequest, Model> mergeVersionAliasesCallable;
335   private final UnaryCallable<ExportModelRequest, Operation> exportModelCallable;
336   private final OperationCallable<
337           ExportModelRequest, ExportModelResponse, ExportModelOperationMetadata>
338       exportModelOperationCallable;
339   private final UnaryCallable<CopyModelRequest, Operation> copyModelCallable;
340   private final OperationCallable<CopyModelRequest, CopyModelResponse, CopyModelOperationMetadata>
341       copyModelOperationCallable;
342   private final UnaryCallable<ImportModelEvaluationRequest, ModelEvaluation>
343       importModelEvaluationCallable;
344   private final UnaryCallable<
345           BatchImportModelEvaluationSlicesRequest, BatchImportModelEvaluationSlicesResponse>
346       batchImportModelEvaluationSlicesCallable;
347   private final UnaryCallable<
348           BatchImportEvaluatedAnnotationsRequest, BatchImportEvaluatedAnnotationsResponse>
349       batchImportEvaluatedAnnotationsCallable;
350   private final UnaryCallable<GetModelEvaluationRequest, ModelEvaluation>
351       getModelEvaluationCallable;
352   private final UnaryCallable<ListModelEvaluationsRequest, ListModelEvaluationsResponse>
353       listModelEvaluationsCallable;
354   private final UnaryCallable<ListModelEvaluationsRequest, ListModelEvaluationsPagedResponse>
355       listModelEvaluationsPagedCallable;
356   private final UnaryCallable<GetModelEvaluationSliceRequest, ModelEvaluationSlice>
357       getModelEvaluationSliceCallable;
358   private final UnaryCallable<ListModelEvaluationSlicesRequest, ListModelEvaluationSlicesResponse>
359       listModelEvaluationSlicesCallable;
360   private final UnaryCallable<
361           ListModelEvaluationSlicesRequest, ListModelEvaluationSlicesPagedResponse>
362       listModelEvaluationSlicesPagedCallable;
363   private final UnaryCallable<ListLocationsRequest, ListLocationsResponse> listLocationsCallable;
364   private final UnaryCallable<ListLocationsRequest, ListLocationsPagedResponse>
365       listLocationsPagedCallable;
366   private final UnaryCallable<GetLocationRequest, Location> getLocationCallable;
367   private final UnaryCallable<SetIamPolicyRequest, Policy> setIamPolicyCallable;
368   private final UnaryCallable<GetIamPolicyRequest, Policy> getIamPolicyCallable;
369   private final UnaryCallable<TestIamPermissionsRequest, TestIamPermissionsResponse>
370       testIamPermissionsCallable;
371 
372   private final BackgroundResource backgroundResources;
373   private final GrpcOperationsStub operationsStub;
374   private final GrpcStubCallableFactory callableFactory;
375 
create(ModelServiceStubSettings settings)376   public static final GrpcModelServiceStub create(ModelServiceStubSettings settings)
377       throws IOException {
378     return new GrpcModelServiceStub(settings, ClientContext.create(settings));
379   }
380 
create(ClientContext clientContext)381   public static final GrpcModelServiceStub create(ClientContext clientContext) throws IOException {
382     return new GrpcModelServiceStub(ModelServiceStubSettings.newBuilder().build(), clientContext);
383   }
384 
create( ClientContext clientContext, GrpcStubCallableFactory callableFactory)385   public static final GrpcModelServiceStub create(
386       ClientContext clientContext, GrpcStubCallableFactory callableFactory) throws IOException {
387     return new GrpcModelServiceStub(
388         ModelServiceStubSettings.newBuilder().build(), clientContext, callableFactory);
389   }
390 
391   /**
392    * Constructs an instance of GrpcModelServiceStub, using the given settings. This is protected so
393    * that it is easy to make a subclass, but otherwise, the static factory methods should be
394    * preferred.
395    */
GrpcModelServiceStub(ModelServiceStubSettings settings, ClientContext clientContext)396   protected GrpcModelServiceStub(ModelServiceStubSettings settings, ClientContext clientContext)
397       throws IOException {
398     this(settings, clientContext, new GrpcModelServiceCallableFactory());
399   }
400 
401   /**
402    * Constructs an instance of GrpcModelServiceStub, using the given settings. This is protected so
403    * that it is easy to make a subclass, but otherwise, the static factory methods should be
404    * preferred.
405    */
GrpcModelServiceStub( ModelServiceStubSettings settings, ClientContext clientContext, GrpcStubCallableFactory callableFactory)406   protected GrpcModelServiceStub(
407       ModelServiceStubSettings settings,
408       ClientContext clientContext,
409       GrpcStubCallableFactory callableFactory)
410       throws IOException {
411     this.callableFactory = callableFactory;
412     this.operationsStub = GrpcOperationsStub.create(clientContext, callableFactory);
413 
414     GrpcCallSettings<UploadModelRequest, Operation> uploadModelTransportSettings =
415         GrpcCallSettings.<UploadModelRequest, Operation>newBuilder()
416             .setMethodDescriptor(uploadModelMethodDescriptor)
417             .setParamsExtractor(
418                 request -> {
419                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
420                   params.put("parent", String.valueOf(request.getParent()));
421                   return params.build();
422                 })
423             .build();
424     GrpcCallSettings<GetModelRequest, Model> getModelTransportSettings =
425         GrpcCallSettings.<GetModelRequest, Model>newBuilder()
426             .setMethodDescriptor(getModelMethodDescriptor)
427             .setParamsExtractor(
428                 request -> {
429                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
430                   params.put("name", String.valueOf(request.getName()));
431                   return params.build();
432                 })
433             .build();
434     GrpcCallSettings<ListModelsRequest, ListModelsResponse> listModelsTransportSettings =
435         GrpcCallSettings.<ListModelsRequest, ListModelsResponse>newBuilder()
436             .setMethodDescriptor(listModelsMethodDescriptor)
437             .setParamsExtractor(
438                 request -> {
439                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
440                   params.put("parent", String.valueOf(request.getParent()));
441                   return params.build();
442                 })
443             .build();
444     GrpcCallSettings<ListModelVersionsRequest, ListModelVersionsResponse>
445         listModelVersionsTransportSettings =
446             GrpcCallSettings.<ListModelVersionsRequest, ListModelVersionsResponse>newBuilder()
447                 .setMethodDescriptor(listModelVersionsMethodDescriptor)
448                 .setParamsExtractor(
449                     request -> {
450                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
451                       params.put("name", String.valueOf(request.getName()));
452                       return params.build();
453                     })
454                 .build();
455     GrpcCallSettings<UpdateModelRequest, Model> updateModelTransportSettings =
456         GrpcCallSettings.<UpdateModelRequest, Model>newBuilder()
457             .setMethodDescriptor(updateModelMethodDescriptor)
458             .setParamsExtractor(
459                 request -> {
460                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
461                   params.put("model.name", String.valueOf(request.getModel().getName()));
462                   return params.build();
463                 })
464             .build();
465     GrpcCallSettings<DeleteModelRequest, Operation> deleteModelTransportSettings =
466         GrpcCallSettings.<DeleteModelRequest, Operation>newBuilder()
467             .setMethodDescriptor(deleteModelMethodDescriptor)
468             .setParamsExtractor(
469                 request -> {
470                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
471                   params.put("name", String.valueOf(request.getName()));
472                   return params.build();
473                 })
474             .build();
475     GrpcCallSettings<DeleteModelVersionRequest, Operation> deleteModelVersionTransportSettings =
476         GrpcCallSettings.<DeleteModelVersionRequest, Operation>newBuilder()
477             .setMethodDescriptor(deleteModelVersionMethodDescriptor)
478             .setParamsExtractor(
479                 request -> {
480                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
481                   params.put("name", String.valueOf(request.getName()));
482                   return params.build();
483                 })
484             .build();
485     GrpcCallSettings<MergeVersionAliasesRequest, Model> mergeVersionAliasesTransportSettings =
486         GrpcCallSettings.<MergeVersionAliasesRequest, Model>newBuilder()
487             .setMethodDescriptor(mergeVersionAliasesMethodDescriptor)
488             .setParamsExtractor(
489                 request -> {
490                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
491                   params.put("name", String.valueOf(request.getName()));
492                   return params.build();
493                 })
494             .build();
495     GrpcCallSettings<ExportModelRequest, Operation> exportModelTransportSettings =
496         GrpcCallSettings.<ExportModelRequest, Operation>newBuilder()
497             .setMethodDescriptor(exportModelMethodDescriptor)
498             .setParamsExtractor(
499                 request -> {
500                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
501                   params.put("name", String.valueOf(request.getName()));
502                   return params.build();
503                 })
504             .build();
505     GrpcCallSettings<CopyModelRequest, Operation> copyModelTransportSettings =
506         GrpcCallSettings.<CopyModelRequest, Operation>newBuilder()
507             .setMethodDescriptor(copyModelMethodDescriptor)
508             .setParamsExtractor(
509                 request -> {
510                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
511                   params.put("parent", String.valueOf(request.getParent()));
512                   return params.build();
513                 })
514             .build();
515     GrpcCallSettings<ImportModelEvaluationRequest, ModelEvaluation>
516         importModelEvaluationTransportSettings =
517             GrpcCallSettings.<ImportModelEvaluationRequest, ModelEvaluation>newBuilder()
518                 .setMethodDescriptor(importModelEvaluationMethodDescriptor)
519                 .setParamsExtractor(
520                     request -> {
521                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
522                       params.put("parent", String.valueOf(request.getParent()));
523                       return params.build();
524                     })
525                 .build();
526     GrpcCallSettings<
527             BatchImportModelEvaluationSlicesRequest, BatchImportModelEvaluationSlicesResponse>
528         batchImportModelEvaluationSlicesTransportSettings =
529             GrpcCallSettings
530                 .<BatchImportModelEvaluationSlicesRequest, BatchImportModelEvaluationSlicesResponse>
531                     newBuilder()
532                 .setMethodDescriptor(batchImportModelEvaluationSlicesMethodDescriptor)
533                 .setParamsExtractor(
534                     request -> {
535                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
536                       params.put("parent", String.valueOf(request.getParent()));
537                       return params.build();
538                     })
539                 .build();
540     GrpcCallSettings<
541             BatchImportEvaluatedAnnotationsRequest, BatchImportEvaluatedAnnotationsResponse>
542         batchImportEvaluatedAnnotationsTransportSettings =
543             GrpcCallSettings
544                 .<BatchImportEvaluatedAnnotationsRequest, BatchImportEvaluatedAnnotationsResponse>
545                     newBuilder()
546                 .setMethodDescriptor(batchImportEvaluatedAnnotationsMethodDescriptor)
547                 .setParamsExtractor(
548                     request -> {
549                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
550                       params.put("parent", String.valueOf(request.getParent()));
551                       return params.build();
552                     })
553                 .build();
554     GrpcCallSettings<GetModelEvaluationRequest, ModelEvaluation>
555         getModelEvaluationTransportSettings =
556             GrpcCallSettings.<GetModelEvaluationRequest, ModelEvaluation>newBuilder()
557                 .setMethodDescriptor(getModelEvaluationMethodDescriptor)
558                 .setParamsExtractor(
559                     request -> {
560                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
561                       params.put("name", String.valueOf(request.getName()));
562                       return params.build();
563                     })
564                 .build();
565     GrpcCallSettings<ListModelEvaluationsRequest, ListModelEvaluationsResponse>
566         listModelEvaluationsTransportSettings =
567             GrpcCallSettings.<ListModelEvaluationsRequest, ListModelEvaluationsResponse>newBuilder()
568                 .setMethodDescriptor(listModelEvaluationsMethodDescriptor)
569                 .setParamsExtractor(
570                     request -> {
571                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
572                       params.put("parent", String.valueOf(request.getParent()));
573                       return params.build();
574                     })
575                 .build();
576     GrpcCallSettings<GetModelEvaluationSliceRequest, ModelEvaluationSlice>
577         getModelEvaluationSliceTransportSettings =
578             GrpcCallSettings.<GetModelEvaluationSliceRequest, ModelEvaluationSlice>newBuilder()
579                 .setMethodDescriptor(getModelEvaluationSliceMethodDescriptor)
580                 .setParamsExtractor(
581                     request -> {
582                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
583                       params.put("name", String.valueOf(request.getName()));
584                       return params.build();
585                     })
586                 .build();
587     GrpcCallSettings<ListModelEvaluationSlicesRequest, ListModelEvaluationSlicesResponse>
588         listModelEvaluationSlicesTransportSettings =
589             GrpcCallSettings
590                 .<ListModelEvaluationSlicesRequest, ListModelEvaluationSlicesResponse>newBuilder()
591                 .setMethodDescriptor(listModelEvaluationSlicesMethodDescriptor)
592                 .setParamsExtractor(
593                     request -> {
594                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
595                       params.put("parent", String.valueOf(request.getParent()));
596                       return params.build();
597                     })
598                 .build();
599     GrpcCallSettings<ListLocationsRequest, ListLocationsResponse> listLocationsTransportSettings =
600         GrpcCallSettings.<ListLocationsRequest, ListLocationsResponse>newBuilder()
601             .setMethodDescriptor(listLocationsMethodDescriptor)
602             .setParamsExtractor(
603                 request -> {
604                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
605                   params.put("name", String.valueOf(request.getName()));
606                   return params.build();
607                 })
608             .build();
609     GrpcCallSettings<GetLocationRequest, Location> getLocationTransportSettings =
610         GrpcCallSettings.<GetLocationRequest, Location>newBuilder()
611             .setMethodDescriptor(getLocationMethodDescriptor)
612             .setParamsExtractor(
613                 request -> {
614                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
615                   params.put("name", String.valueOf(request.getName()));
616                   return params.build();
617                 })
618             .build();
619     GrpcCallSettings<SetIamPolicyRequest, Policy> setIamPolicyTransportSettings =
620         GrpcCallSettings.<SetIamPolicyRequest, Policy>newBuilder()
621             .setMethodDescriptor(setIamPolicyMethodDescriptor)
622             .setParamsExtractor(
623                 request -> {
624                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
625                   params.put("resource", String.valueOf(request.getResource()));
626                   return params.build();
627                 })
628             .build();
629     GrpcCallSettings<GetIamPolicyRequest, Policy> getIamPolicyTransportSettings =
630         GrpcCallSettings.<GetIamPolicyRequest, Policy>newBuilder()
631             .setMethodDescriptor(getIamPolicyMethodDescriptor)
632             .setParamsExtractor(
633                 request -> {
634                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
635                   params.put("resource", String.valueOf(request.getResource()));
636                   return params.build();
637                 })
638             .build();
639     GrpcCallSettings<TestIamPermissionsRequest, TestIamPermissionsResponse>
640         testIamPermissionsTransportSettings =
641             GrpcCallSettings.<TestIamPermissionsRequest, TestIamPermissionsResponse>newBuilder()
642                 .setMethodDescriptor(testIamPermissionsMethodDescriptor)
643                 .setParamsExtractor(
644                     request -> {
645                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
646                       params.put("resource", String.valueOf(request.getResource()));
647                       return params.build();
648                     })
649                 .build();
650 
651     this.uploadModelCallable =
652         callableFactory.createUnaryCallable(
653             uploadModelTransportSettings, settings.uploadModelSettings(), clientContext);
654     this.uploadModelOperationCallable =
655         callableFactory.createOperationCallable(
656             uploadModelTransportSettings,
657             settings.uploadModelOperationSettings(),
658             clientContext,
659             operationsStub);
660     this.getModelCallable =
661         callableFactory.createUnaryCallable(
662             getModelTransportSettings, settings.getModelSettings(), clientContext);
663     this.listModelsCallable =
664         callableFactory.createUnaryCallable(
665             listModelsTransportSettings, settings.listModelsSettings(), clientContext);
666     this.listModelsPagedCallable =
667         callableFactory.createPagedCallable(
668             listModelsTransportSettings, settings.listModelsSettings(), clientContext);
669     this.listModelVersionsCallable =
670         callableFactory.createUnaryCallable(
671             listModelVersionsTransportSettings,
672             settings.listModelVersionsSettings(),
673             clientContext);
674     this.listModelVersionsPagedCallable =
675         callableFactory.createPagedCallable(
676             listModelVersionsTransportSettings,
677             settings.listModelVersionsSettings(),
678             clientContext);
679     this.updateModelCallable =
680         callableFactory.createUnaryCallable(
681             updateModelTransportSettings, settings.updateModelSettings(), clientContext);
682     this.deleteModelCallable =
683         callableFactory.createUnaryCallable(
684             deleteModelTransportSettings, settings.deleteModelSettings(), clientContext);
685     this.deleteModelOperationCallable =
686         callableFactory.createOperationCallable(
687             deleteModelTransportSettings,
688             settings.deleteModelOperationSettings(),
689             clientContext,
690             operationsStub);
691     this.deleteModelVersionCallable =
692         callableFactory.createUnaryCallable(
693             deleteModelVersionTransportSettings,
694             settings.deleteModelVersionSettings(),
695             clientContext);
696     this.deleteModelVersionOperationCallable =
697         callableFactory.createOperationCallable(
698             deleteModelVersionTransportSettings,
699             settings.deleteModelVersionOperationSettings(),
700             clientContext,
701             operationsStub);
702     this.mergeVersionAliasesCallable =
703         callableFactory.createUnaryCallable(
704             mergeVersionAliasesTransportSettings,
705             settings.mergeVersionAliasesSettings(),
706             clientContext);
707     this.exportModelCallable =
708         callableFactory.createUnaryCallable(
709             exportModelTransportSettings, settings.exportModelSettings(), clientContext);
710     this.exportModelOperationCallable =
711         callableFactory.createOperationCallable(
712             exportModelTransportSettings,
713             settings.exportModelOperationSettings(),
714             clientContext,
715             operationsStub);
716     this.copyModelCallable =
717         callableFactory.createUnaryCallable(
718             copyModelTransportSettings, settings.copyModelSettings(), clientContext);
719     this.copyModelOperationCallable =
720         callableFactory.createOperationCallable(
721             copyModelTransportSettings,
722             settings.copyModelOperationSettings(),
723             clientContext,
724             operationsStub);
725     this.importModelEvaluationCallable =
726         callableFactory.createUnaryCallable(
727             importModelEvaluationTransportSettings,
728             settings.importModelEvaluationSettings(),
729             clientContext);
730     this.batchImportModelEvaluationSlicesCallable =
731         callableFactory.createUnaryCallable(
732             batchImportModelEvaluationSlicesTransportSettings,
733             settings.batchImportModelEvaluationSlicesSettings(),
734             clientContext);
735     this.batchImportEvaluatedAnnotationsCallable =
736         callableFactory.createUnaryCallable(
737             batchImportEvaluatedAnnotationsTransportSettings,
738             settings.batchImportEvaluatedAnnotationsSettings(),
739             clientContext);
740     this.getModelEvaluationCallable =
741         callableFactory.createUnaryCallable(
742             getModelEvaluationTransportSettings,
743             settings.getModelEvaluationSettings(),
744             clientContext);
745     this.listModelEvaluationsCallable =
746         callableFactory.createUnaryCallable(
747             listModelEvaluationsTransportSettings,
748             settings.listModelEvaluationsSettings(),
749             clientContext);
750     this.listModelEvaluationsPagedCallable =
751         callableFactory.createPagedCallable(
752             listModelEvaluationsTransportSettings,
753             settings.listModelEvaluationsSettings(),
754             clientContext);
755     this.getModelEvaluationSliceCallable =
756         callableFactory.createUnaryCallable(
757             getModelEvaluationSliceTransportSettings,
758             settings.getModelEvaluationSliceSettings(),
759             clientContext);
760     this.listModelEvaluationSlicesCallable =
761         callableFactory.createUnaryCallable(
762             listModelEvaluationSlicesTransportSettings,
763             settings.listModelEvaluationSlicesSettings(),
764             clientContext);
765     this.listModelEvaluationSlicesPagedCallable =
766         callableFactory.createPagedCallable(
767             listModelEvaluationSlicesTransportSettings,
768             settings.listModelEvaluationSlicesSettings(),
769             clientContext);
770     this.listLocationsCallable =
771         callableFactory.createUnaryCallable(
772             listLocationsTransportSettings, settings.listLocationsSettings(), clientContext);
773     this.listLocationsPagedCallable =
774         callableFactory.createPagedCallable(
775             listLocationsTransportSettings, settings.listLocationsSettings(), clientContext);
776     this.getLocationCallable =
777         callableFactory.createUnaryCallable(
778             getLocationTransportSettings, settings.getLocationSettings(), clientContext);
779     this.setIamPolicyCallable =
780         callableFactory.createUnaryCallable(
781             setIamPolicyTransportSettings, settings.setIamPolicySettings(), clientContext);
782     this.getIamPolicyCallable =
783         callableFactory.createUnaryCallable(
784             getIamPolicyTransportSettings, settings.getIamPolicySettings(), clientContext);
785     this.testIamPermissionsCallable =
786         callableFactory.createUnaryCallable(
787             testIamPermissionsTransportSettings,
788             settings.testIamPermissionsSettings(),
789             clientContext);
790 
791     this.backgroundResources =
792         new BackgroundResourceAggregation(clientContext.getBackgroundResources());
793   }
794 
getOperationsStub()795   public GrpcOperationsStub getOperationsStub() {
796     return operationsStub;
797   }
798 
799   @Override
uploadModelCallable()800   public UnaryCallable<UploadModelRequest, Operation> uploadModelCallable() {
801     return uploadModelCallable;
802   }
803 
804   @Override
805   public OperationCallable<UploadModelRequest, UploadModelResponse, UploadModelOperationMetadata>
uploadModelOperationCallable()806       uploadModelOperationCallable() {
807     return uploadModelOperationCallable;
808   }
809 
810   @Override
getModelCallable()811   public UnaryCallable<GetModelRequest, Model> getModelCallable() {
812     return getModelCallable;
813   }
814 
815   @Override
listModelsCallable()816   public UnaryCallable<ListModelsRequest, ListModelsResponse> listModelsCallable() {
817     return listModelsCallable;
818   }
819 
820   @Override
listModelsPagedCallable()821   public UnaryCallable<ListModelsRequest, ListModelsPagedResponse> listModelsPagedCallable() {
822     return listModelsPagedCallable;
823   }
824 
825   @Override
826   public UnaryCallable<ListModelVersionsRequest, ListModelVersionsResponse>
listModelVersionsCallable()827       listModelVersionsCallable() {
828     return listModelVersionsCallable;
829   }
830 
831   @Override
832   public UnaryCallable<ListModelVersionsRequest, ListModelVersionsPagedResponse>
listModelVersionsPagedCallable()833       listModelVersionsPagedCallable() {
834     return listModelVersionsPagedCallable;
835   }
836 
837   @Override
updateModelCallable()838   public UnaryCallable<UpdateModelRequest, Model> updateModelCallable() {
839     return updateModelCallable;
840   }
841 
842   @Override
deleteModelCallable()843   public UnaryCallable<DeleteModelRequest, Operation> deleteModelCallable() {
844     return deleteModelCallable;
845   }
846 
847   @Override
848   public OperationCallable<DeleteModelRequest, Empty, DeleteOperationMetadata>
deleteModelOperationCallable()849       deleteModelOperationCallable() {
850     return deleteModelOperationCallable;
851   }
852 
853   @Override
deleteModelVersionCallable()854   public UnaryCallable<DeleteModelVersionRequest, Operation> deleteModelVersionCallable() {
855     return deleteModelVersionCallable;
856   }
857 
858   @Override
859   public OperationCallable<DeleteModelVersionRequest, Empty, DeleteOperationMetadata>
deleteModelVersionOperationCallable()860       deleteModelVersionOperationCallable() {
861     return deleteModelVersionOperationCallable;
862   }
863 
864   @Override
mergeVersionAliasesCallable()865   public UnaryCallable<MergeVersionAliasesRequest, Model> mergeVersionAliasesCallable() {
866     return mergeVersionAliasesCallable;
867   }
868 
869   @Override
exportModelCallable()870   public UnaryCallable<ExportModelRequest, Operation> exportModelCallable() {
871     return exportModelCallable;
872   }
873 
874   @Override
875   public OperationCallable<ExportModelRequest, ExportModelResponse, ExportModelOperationMetadata>
exportModelOperationCallable()876       exportModelOperationCallable() {
877     return exportModelOperationCallable;
878   }
879 
880   @Override
copyModelCallable()881   public UnaryCallable<CopyModelRequest, Operation> copyModelCallable() {
882     return copyModelCallable;
883   }
884 
885   @Override
886   public OperationCallable<CopyModelRequest, CopyModelResponse, CopyModelOperationMetadata>
copyModelOperationCallable()887       copyModelOperationCallable() {
888     return copyModelOperationCallable;
889   }
890 
891   @Override
892   public UnaryCallable<ImportModelEvaluationRequest, ModelEvaluation>
importModelEvaluationCallable()893       importModelEvaluationCallable() {
894     return importModelEvaluationCallable;
895   }
896 
897   @Override
898   public UnaryCallable<
899           BatchImportModelEvaluationSlicesRequest, BatchImportModelEvaluationSlicesResponse>
batchImportModelEvaluationSlicesCallable()900       batchImportModelEvaluationSlicesCallable() {
901     return batchImportModelEvaluationSlicesCallable;
902   }
903 
904   @Override
905   public UnaryCallable<
906           BatchImportEvaluatedAnnotationsRequest, BatchImportEvaluatedAnnotationsResponse>
batchImportEvaluatedAnnotationsCallable()907       batchImportEvaluatedAnnotationsCallable() {
908     return batchImportEvaluatedAnnotationsCallable;
909   }
910 
911   @Override
getModelEvaluationCallable()912   public UnaryCallable<GetModelEvaluationRequest, ModelEvaluation> getModelEvaluationCallable() {
913     return getModelEvaluationCallable;
914   }
915 
916   @Override
917   public UnaryCallable<ListModelEvaluationsRequest, ListModelEvaluationsResponse>
listModelEvaluationsCallable()918       listModelEvaluationsCallable() {
919     return listModelEvaluationsCallable;
920   }
921 
922   @Override
923   public UnaryCallable<ListModelEvaluationsRequest, ListModelEvaluationsPagedResponse>
listModelEvaluationsPagedCallable()924       listModelEvaluationsPagedCallable() {
925     return listModelEvaluationsPagedCallable;
926   }
927 
928   @Override
929   public UnaryCallable<GetModelEvaluationSliceRequest, ModelEvaluationSlice>
getModelEvaluationSliceCallable()930       getModelEvaluationSliceCallable() {
931     return getModelEvaluationSliceCallable;
932   }
933 
934   @Override
935   public UnaryCallable<ListModelEvaluationSlicesRequest, ListModelEvaluationSlicesResponse>
listModelEvaluationSlicesCallable()936       listModelEvaluationSlicesCallable() {
937     return listModelEvaluationSlicesCallable;
938   }
939 
940   @Override
941   public UnaryCallable<ListModelEvaluationSlicesRequest, ListModelEvaluationSlicesPagedResponse>
listModelEvaluationSlicesPagedCallable()942       listModelEvaluationSlicesPagedCallable() {
943     return listModelEvaluationSlicesPagedCallable;
944   }
945 
946   @Override
listLocationsCallable()947   public UnaryCallable<ListLocationsRequest, ListLocationsResponse> listLocationsCallable() {
948     return listLocationsCallable;
949   }
950 
951   @Override
952   public UnaryCallable<ListLocationsRequest, ListLocationsPagedResponse>
listLocationsPagedCallable()953       listLocationsPagedCallable() {
954     return listLocationsPagedCallable;
955   }
956 
957   @Override
getLocationCallable()958   public UnaryCallable<GetLocationRequest, Location> getLocationCallable() {
959     return getLocationCallable;
960   }
961 
962   @Override
setIamPolicyCallable()963   public UnaryCallable<SetIamPolicyRequest, Policy> setIamPolicyCallable() {
964     return setIamPolicyCallable;
965   }
966 
967   @Override
getIamPolicyCallable()968   public UnaryCallable<GetIamPolicyRequest, Policy> getIamPolicyCallable() {
969     return getIamPolicyCallable;
970   }
971 
972   @Override
973   public UnaryCallable<TestIamPermissionsRequest, TestIamPermissionsResponse>
testIamPermissionsCallable()974       testIamPermissionsCallable() {
975     return testIamPermissionsCallable;
976   }
977 
978   @Override
close()979   public final void close() {
980     try {
981       backgroundResources.close();
982     } catch (RuntimeException e) {
983       throw e;
984     } catch (Exception e) {
985       throw new IllegalStateException("Failed to close resource", e);
986     }
987   }
988 
989   @Override
shutdown()990   public void shutdown() {
991     backgroundResources.shutdown();
992   }
993 
994   @Override
isShutdown()995   public boolean isShutdown() {
996     return backgroundResources.isShutdown();
997   }
998 
999   @Override
isTerminated()1000   public boolean isTerminated() {
1001     return backgroundResources.isTerminated();
1002   }
1003 
1004   @Override
shutdownNow()1005   public void shutdownNow() {
1006     backgroundResources.shutdownNow();
1007   }
1008 
1009   @Override
awaitTermination(long duration, TimeUnit unit)1010   public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException {
1011     return backgroundResources.awaitTermination(duration, unit);
1012   }
1013 }
1014