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.retail.v2.stub; 18 19 import static com.google.cloud.retail.v2.ProductServiceClient.ListProductsPagedResponse; 20 21 import com.google.api.core.ApiFunction; 22 import com.google.api.core.ApiFuture; 23 import com.google.api.core.BetaApi; 24 import com.google.api.gax.core.GaxProperties; 25 import com.google.api.gax.core.GoogleCredentialsProvider; 26 import com.google.api.gax.core.InstantiatingExecutorProvider; 27 import com.google.api.gax.grpc.GaxGrpcProperties; 28 import com.google.api.gax.grpc.GrpcTransportChannel; 29 import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider; 30 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; 34 import com.google.api.gax.longrunning.OperationSnapshot; 35 import com.google.api.gax.longrunning.OperationTimedPollAlgorithm; 36 import com.google.api.gax.retrying.RetrySettings; 37 import com.google.api.gax.rpc.ApiCallContext; 38 import com.google.api.gax.rpc.ApiClientHeaderProvider; 39 import com.google.api.gax.rpc.ClientContext; 40 import com.google.api.gax.rpc.OperationCallSettings; 41 import com.google.api.gax.rpc.PageContext; 42 import com.google.api.gax.rpc.PagedCallSettings; 43 import com.google.api.gax.rpc.PagedListDescriptor; 44 import com.google.api.gax.rpc.PagedListResponseFactory; 45 import com.google.api.gax.rpc.StatusCode; 46 import com.google.api.gax.rpc.StubSettings; 47 import com.google.api.gax.rpc.TransportChannelProvider; 48 import com.google.api.gax.rpc.UnaryCallSettings; 49 import com.google.api.gax.rpc.UnaryCallable; 50 import com.google.cloud.retail.v2.AddFulfillmentPlacesMetadata; 51 import com.google.cloud.retail.v2.AddFulfillmentPlacesRequest; 52 import com.google.cloud.retail.v2.AddFulfillmentPlacesResponse; 53 import com.google.cloud.retail.v2.AddLocalInventoriesMetadata; 54 import com.google.cloud.retail.v2.AddLocalInventoriesRequest; 55 import com.google.cloud.retail.v2.AddLocalInventoriesResponse; 56 import com.google.cloud.retail.v2.CreateProductRequest; 57 import com.google.cloud.retail.v2.DeleteProductRequest; 58 import com.google.cloud.retail.v2.GetProductRequest; 59 import com.google.cloud.retail.v2.ImportMetadata; 60 import com.google.cloud.retail.v2.ImportProductsRequest; 61 import com.google.cloud.retail.v2.ImportProductsResponse; 62 import com.google.cloud.retail.v2.ListProductsRequest; 63 import com.google.cloud.retail.v2.ListProductsResponse; 64 import com.google.cloud.retail.v2.Product; 65 import com.google.cloud.retail.v2.RemoveFulfillmentPlacesMetadata; 66 import com.google.cloud.retail.v2.RemoveFulfillmentPlacesRequest; 67 import com.google.cloud.retail.v2.RemoveFulfillmentPlacesResponse; 68 import com.google.cloud.retail.v2.RemoveLocalInventoriesMetadata; 69 import com.google.cloud.retail.v2.RemoveLocalInventoriesRequest; 70 import com.google.cloud.retail.v2.RemoveLocalInventoriesResponse; 71 import com.google.cloud.retail.v2.SetInventoryMetadata; 72 import com.google.cloud.retail.v2.SetInventoryRequest; 73 import com.google.cloud.retail.v2.SetInventoryResponse; 74 import com.google.cloud.retail.v2.UpdateProductRequest; 75 import com.google.common.collect.ImmutableList; 76 import com.google.common.collect.ImmutableMap; 77 import com.google.common.collect.ImmutableSet; 78 import com.google.common.collect.Lists; 79 import com.google.longrunning.Operation; 80 import com.google.protobuf.Empty; 81 import java.io.IOException; 82 import java.util.List; 83 import javax.annotation.Generated; 84 import org.threeten.bp.Duration; 85 86 // AUTO-GENERATED DOCUMENTATION AND CLASS. 87 /** 88 * Settings class to configure an instance of {@link ProductServiceStub}. 89 * 90 * <p>The default instance has everything set to sensible defaults: 91 * 92 * <ul> 93 * <li>The default service address (retail.googleapis.com) and default port (443) are used. 94 * <li>Credentials are acquired automatically through Application Default Credentials. 95 * <li>Retries are configured for idempotent methods but not for non-idempotent methods. 96 * </ul> 97 * 98 * <p>The builder of this class is recursive, so contained classes are themselves builders. When 99 * build() is called, the tree of builders is called to create the complete settings object. 100 * 101 * <p>For example, to set the total timeout of createProduct to 30 seconds: 102 * 103 * <pre>{@code 104 * // This snippet has been automatically generated and should be regarded as a code template only. 105 * // It will require modifications to work: 106 * // - It may require correct/in-range values for request initialization. 107 * // - It may require specifying regional endpoints when creating the service client as shown in 108 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 109 * ProductServiceStubSettings.Builder productServiceSettingsBuilder = 110 * ProductServiceStubSettings.newBuilder(); 111 * productServiceSettingsBuilder 112 * .createProductSettings() 113 * .setRetrySettings( 114 * productServiceSettingsBuilder 115 * .createProductSettings() 116 * .getRetrySettings() 117 * .toBuilder() 118 * .setTotalTimeout(Duration.ofSeconds(30)) 119 * .build()); 120 * ProductServiceStubSettings productServiceSettings = productServiceSettingsBuilder.build(); 121 * }</pre> 122 */ 123 @Generated("by gapic-generator-java") 124 public class ProductServiceStubSettings extends StubSettings<ProductServiceStubSettings> { 125 /** The default scopes of the service. */ 126 private static final ImmutableList<String> DEFAULT_SERVICE_SCOPES = 127 ImmutableList.<String>builder().add("https://www.googleapis.com/auth/cloud-platform").build(); 128 129 private final UnaryCallSettings<CreateProductRequest, Product> createProductSettings; 130 private final UnaryCallSettings<GetProductRequest, Product> getProductSettings; 131 private final PagedCallSettings< 132 ListProductsRequest, ListProductsResponse, ListProductsPagedResponse> 133 listProductsSettings; 134 private final UnaryCallSettings<UpdateProductRequest, Product> updateProductSettings; 135 private final UnaryCallSettings<DeleteProductRequest, Empty> deleteProductSettings; 136 private final UnaryCallSettings<ImportProductsRequest, Operation> importProductsSettings; 137 private final OperationCallSettings<ImportProductsRequest, ImportProductsResponse, ImportMetadata> 138 importProductsOperationSettings; 139 private final UnaryCallSettings<SetInventoryRequest, Operation> setInventorySettings; 140 private final OperationCallSettings< 141 SetInventoryRequest, SetInventoryResponse, SetInventoryMetadata> 142 setInventoryOperationSettings; 143 private final UnaryCallSettings<AddFulfillmentPlacesRequest, Operation> 144 addFulfillmentPlacesSettings; 145 private final OperationCallSettings< 146 AddFulfillmentPlacesRequest, AddFulfillmentPlacesResponse, AddFulfillmentPlacesMetadata> 147 addFulfillmentPlacesOperationSettings; 148 private final UnaryCallSettings<RemoveFulfillmentPlacesRequest, Operation> 149 removeFulfillmentPlacesSettings; 150 private final OperationCallSettings< 151 RemoveFulfillmentPlacesRequest, 152 RemoveFulfillmentPlacesResponse, 153 RemoveFulfillmentPlacesMetadata> 154 removeFulfillmentPlacesOperationSettings; 155 private final UnaryCallSettings<AddLocalInventoriesRequest, Operation> 156 addLocalInventoriesSettings; 157 private final OperationCallSettings< 158 AddLocalInventoriesRequest, AddLocalInventoriesResponse, AddLocalInventoriesMetadata> 159 addLocalInventoriesOperationSettings; 160 private final UnaryCallSettings<RemoveLocalInventoriesRequest, Operation> 161 removeLocalInventoriesSettings; 162 private final OperationCallSettings< 163 RemoveLocalInventoriesRequest, 164 RemoveLocalInventoriesResponse, 165 RemoveLocalInventoriesMetadata> 166 removeLocalInventoriesOperationSettings; 167 168 private static final PagedListDescriptor<ListProductsRequest, ListProductsResponse, Product> 169 LIST_PRODUCTS_PAGE_STR_DESC = 170 new PagedListDescriptor<ListProductsRequest, ListProductsResponse, Product>() { 171 @Override 172 public String emptyToken() { 173 return ""; 174 } 175 176 @Override 177 public ListProductsRequest injectToken(ListProductsRequest payload, String token) { 178 return ListProductsRequest.newBuilder(payload).setPageToken(token).build(); 179 } 180 181 @Override 182 public ListProductsRequest injectPageSize(ListProductsRequest payload, int pageSize) { 183 return ListProductsRequest.newBuilder(payload).setPageSize(pageSize).build(); 184 } 185 186 @Override 187 public Integer extractPageSize(ListProductsRequest payload) { 188 return payload.getPageSize(); 189 } 190 191 @Override 192 public String extractNextToken(ListProductsResponse payload) { 193 return payload.getNextPageToken(); 194 } 195 196 @Override 197 public Iterable<Product> extractResources(ListProductsResponse payload) { 198 return payload.getProductsList() == null 199 ? ImmutableList.<Product>of() 200 : payload.getProductsList(); 201 } 202 }; 203 204 private static final PagedListResponseFactory< 205 ListProductsRequest, ListProductsResponse, ListProductsPagedResponse> 206 LIST_PRODUCTS_PAGE_STR_FACT = 207 new PagedListResponseFactory< 208 ListProductsRequest, ListProductsResponse, ListProductsPagedResponse>() { 209 @Override 210 public ApiFuture<ListProductsPagedResponse> getFuturePagedResponse( 211 UnaryCallable<ListProductsRequest, ListProductsResponse> callable, 212 ListProductsRequest request, 213 ApiCallContext context, 214 ApiFuture<ListProductsResponse> futureResponse) { 215 PageContext<ListProductsRequest, ListProductsResponse, Product> pageContext = 216 PageContext.create(callable, LIST_PRODUCTS_PAGE_STR_DESC, request, context); 217 return ListProductsPagedResponse.createAsync(pageContext, futureResponse); 218 } 219 }; 220 221 /** Returns the object with the settings used for calls to createProduct. */ createProductSettings()222 public UnaryCallSettings<CreateProductRequest, Product> createProductSettings() { 223 return createProductSettings; 224 } 225 226 /** Returns the object with the settings used for calls to getProduct. */ getProductSettings()227 public UnaryCallSettings<GetProductRequest, Product> getProductSettings() { 228 return getProductSettings; 229 } 230 231 /** Returns the object with the settings used for calls to listProducts. */ 232 public PagedCallSettings<ListProductsRequest, ListProductsResponse, ListProductsPagedResponse> listProductsSettings()233 listProductsSettings() { 234 return listProductsSettings; 235 } 236 237 /** Returns the object with the settings used for calls to updateProduct. */ updateProductSettings()238 public UnaryCallSettings<UpdateProductRequest, Product> updateProductSettings() { 239 return updateProductSettings; 240 } 241 242 /** Returns the object with the settings used for calls to deleteProduct. */ deleteProductSettings()243 public UnaryCallSettings<DeleteProductRequest, Empty> deleteProductSettings() { 244 return deleteProductSettings; 245 } 246 247 /** Returns the object with the settings used for calls to importProducts. */ importProductsSettings()248 public UnaryCallSettings<ImportProductsRequest, Operation> importProductsSettings() { 249 return importProductsSettings; 250 } 251 252 /** Returns the object with the settings used for calls to importProducts. */ 253 public OperationCallSettings<ImportProductsRequest, ImportProductsResponse, ImportMetadata> importProductsOperationSettings()254 importProductsOperationSettings() { 255 return importProductsOperationSettings; 256 } 257 258 /** Returns the object with the settings used for calls to setInventory. */ setInventorySettings()259 public UnaryCallSettings<SetInventoryRequest, Operation> setInventorySettings() { 260 return setInventorySettings; 261 } 262 263 /** Returns the object with the settings used for calls to setInventory. */ 264 public OperationCallSettings<SetInventoryRequest, SetInventoryResponse, SetInventoryMetadata> setInventoryOperationSettings()265 setInventoryOperationSettings() { 266 return setInventoryOperationSettings; 267 } 268 269 /** Returns the object with the settings used for calls to addFulfillmentPlaces. */ addFulfillmentPlacesSettings()270 public UnaryCallSettings<AddFulfillmentPlacesRequest, Operation> addFulfillmentPlacesSettings() { 271 return addFulfillmentPlacesSettings; 272 } 273 274 /** Returns the object with the settings used for calls to addFulfillmentPlaces. */ 275 public OperationCallSettings< 276 AddFulfillmentPlacesRequest, AddFulfillmentPlacesResponse, AddFulfillmentPlacesMetadata> addFulfillmentPlacesOperationSettings()277 addFulfillmentPlacesOperationSettings() { 278 return addFulfillmentPlacesOperationSettings; 279 } 280 281 /** Returns the object with the settings used for calls to removeFulfillmentPlaces. */ 282 public UnaryCallSettings<RemoveFulfillmentPlacesRequest, Operation> removeFulfillmentPlacesSettings()283 removeFulfillmentPlacesSettings() { 284 return removeFulfillmentPlacesSettings; 285 } 286 287 /** Returns the object with the settings used for calls to removeFulfillmentPlaces. */ 288 public OperationCallSettings< 289 RemoveFulfillmentPlacesRequest, 290 RemoveFulfillmentPlacesResponse, 291 RemoveFulfillmentPlacesMetadata> removeFulfillmentPlacesOperationSettings()292 removeFulfillmentPlacesOperationSettings() { 293 return removeFulfillmentPlacesOperationSettings; 294 } 295 296 /** Returns the object with the settings used for calls to addLocalInventories. */ addLocalInventoriesSettings()297 public UnaryCallSettings<AddLocalInventoriesRequest, Operation> addLocalInventoriesSettings() { 298 return addLocalInventoriesSettings; 299 } 300 301 /** Returns the object with the settings used for calls to addLocalInventories. */ 302 public OperationCallSettings< 303 AddLocalInventoriesRequest, AddLocalInventoriesResponse, AddLocalInventoriesMetadata> addLocalInventoriesOperationSettings()304 addLocalInventoriesOperationSettings() { 305 return addLocalInventoriesOperationSettings; 306 } 307 308 /** Returns the object with the settings used for calls to removeLocalInventories. */ 309 public UnaryCallSettings<RemoveLocalInventoriesRequest, Operation> removeLocalInventoriesSettings()310 removeLocalInventoriesSettings() { 311 return removeLocalInventoriesSettings; 312 } 313 314 /** Returns the object with the settings used for calls to removeLocalInventories. */ 315 public OperationCallSettings< 316 RemoveLocalInventoriesRequest, 317 RemoveLocalInventoriesResponse, 318 RemoveLocalInventoriesMetadata> removeLocalInventoriesOperationSettings()319 removeLocalInventoriesOperationSettings() { 320 return removeLocalInventoriesOperationSettings; 321 } 322 createStub()323 public ProductServiceStub createStub() throws IOException { 324 if (getTransportChannelProvider() 325 .getTransportName() 326 .equals(GrpcTransportChannel.getGrpcTransportName())) { 327 return GrpcProductServiceStub.create(this); 328 } 329 if (getTransportChannelProvider() 330 .getTransportName() 331 .equals(HttpJsonTransportChannel.getHttpJsonTransportName())) { 332 return HttpJsonProductServiceStub.create(this); 333 } 334 throw new UnsupportedOperationException( 335 String.format( 336 "Transport not supported: %s", getTransportChannelProvider().getTransportName())); 337 } 338 339 /** Returns a builder for the default ExecutorProvider for this service. */ defaultExecutorProviderBuilder()340 public static InstantiatingExecutorProvider.Builder defaultExecutorProviderBuilder() { 341 return InstantiatingExecutorProvider.newBuilder(); 342 } 343 344 /** Returns the default service endpoint. */ getDefaultEndpoint()345 public static String getDefaultEndpoint() { 346 return "retail.googleapis.com:443"; 347 } 348 349 /** Returns the default mTLS service endpoint. */ getDefaultMtlsEndpoint()350 public static String getDefaultMtlsEndpoint() { 351 return "retail.mtls.googleapis.com:443"; 352 } 353 354 /** Returns the default service scopes. */ getDefaultServiceScopes()355 public static List<String> getDefaultServiceScopes() { 356 return DEFAULT_SERVICE_SCOPES; 357 } 358 359 /** Returns a builder for the default credentials for this service. */ defaultCredentialsProviderBuilder()360 public static GoogleCredentialsProvider.Builder defaultCredentialsProviderBuilder() { 361 return GoogleCredentialsProvider.newBuilder() 362 .setScopesToApply(DEFAULT_SERVICE_SCOPES) 363 .setUseJwtAccessWithScope(true); 364 } 365 366 /** Returns a builder for the default gRPC ChannelProvider for this service. */ defaultGrpcTransportProviderBuilder()367 public static InstantiatingGrpcChannelProvider.Builder defaultGrpcTransportProviderBuilder() { 368 return InstantiatingGrpcChannelProvider.newBuilder() 369 .setMaxInboundMessageSize(Integer.MAX_VALUE); 370 } 371 372 /** Returns a builder for the default REST ChannelProvider for this service. */ 373 @BetaApi 374 public static InstantiatingHttpJsonChannelProvider.Builder defaultHttpJsonTransportProviderBuilder()375 defaultHttpJsonTransportProviderBuilder() { 376 return InstantiatingHttpJsonChannelProvider.newBuilder(); 377 } 378 defaultTransportChannelProvider()379 public static TransportChannelProvider defaultTransportChannelProvider() { 380 return defaultGrpcTransportProviderBuilder().build(); 381 } 382 383 @BetaApi("The surface for customizing headers is not stable yet and may change in the future.") defaultGrpcApiClientHeaderProviderBuilder()384 public static ApiClientHeaderProvider.Builder defaultGrpcApiClientHeaderProviderBuilder() { 385 return ApiClientHeaderProvider.newBuilder() 386 .setGeneratedLibToken( 387 "gapic", GaxProperties.getLibraryVersion(ProductServiceStubSettings.class)) 388 .setTransportToken( 389 GaxGrpcProperties.getGrpcTokenName(), GaxGrpcProperties.getGrpcVersion()); 390 } 391 392 @BetaApi("The surface for customizing headers is not stable yet and may change in the future.") defaultHttpJsonApiClientHeaderProviderBuilder()393 public static ApiClientHeaderProvider.Builder defaultHttpJsonApiClientHeaderProviderBuilder() { 394 return ApiClientHeaderProvider.newBuilder() 395 .setGeneratedLibToken( 396 "gapic", GaxProperties.getLibraryVersion(ProductServiceStubSettings.class)) 397 .setTransportToken( 398 GaxHttpJsonProperties.getHttpJsonTokenName(), 399 GaxHttpJsonProperties.getHttpJsonVersion()); 400 } 401 defaultApiClientHeaderProviderBuilder()402 public static ApiClientHeaderProvider.Builder defaultApiClientHeaderProviderBuilder() { 403 return ProductServiceStubSettings.defaultGrpcApiClientHeaderProviderBuilder(); 404 } 405 406 /** Returns a new gRPC builder for this class. */ newBuilder()407 public static Builder newBuilder() { 408 return Builder.createDefault(); 409 } 410 411 /** Returns a new REST builder for this class. */ newHttpJsonBuilder()412 public static Builder newHttpJsonBuilder() { 413 return Builder.createHttpJsonDefault(); 414 } 415 416 /** Returns a new builder for this class. */ newBuilder(ClientContext clientContext)417 public static Builder newBuilder(ClientContext clientContext) { 418 return new Builder(clientContext); 419 } 420 421 /** Returns a builder containing all the values of this settings class. */ toBuilder()422 public Builder toBuilder() { 423 return new Builder(this); 424 } 425 ProductServiceStubSettings(Builder settingsBuilder)426 protected ProductServiceStubSettings(Builder settingsBuilder) throws IOException { 427 super(settingsBuilder); 428 429 createProductSettings = settingsBuilder.createProductSettings().build(); 430 getProductSettings = settingsBuilder.getProductSettings().build(); 431 listProductsSettings = settingsBuilder.listProductsSettings().build(); 432 updateProductSettings = settingsBuilder.updateProductSettings().build(); 433 deleteProductSettings = settingsBuilder.deleteProductSettings().build(); 434 importProductsSettings = settingsBuilder.importProductsSettings().build(); 435 importProductsOperationSettings = settingsBuilder.importProductsOperationSettings().build(); 436 setInventorySettings = settingsBuilder.setInventorySettings().build(); 437 setInventoryOperationSettings = settingsBuilder.setInventoryOperationSettings().build(); 438 addFulfillmentPlacesSettings = settingsBuilder.addFulfillmentPlacesSettings().build(); 439 addFulfillmentPlacesOperationSettings = 440 settingsBuilder.addFulfillmentPlacesOperationSettings().build(); 441 removeFulfillmentPlacesSettings = settingsBuilder.removeFulfillmentPlacesSettings().build(); 442 removeFulfillmentPlacesOperationSettings = 443 settingsBuilder.removeFulfillmentPlacesOperationSettings().build(); 444 addLocalInventoriesSettings = settingsBuilder.addLocalInventoriesSettings().build(); 445 addLocalInventoriesOperationSettings = 446 settingsBuilder.addLocalInventoriesOperationSettings().build(); 447 removeLocalInventoriesSettings = settingsBuilder.removeLocalInventoriesSettings().build(); 448 removeLocalInventoriesOperationSettings = 449 settingsBuilder.removeLocalInventoriesOperationSettings().build(); 450 } 451 452 /** Builder for ProductServiceStubSettings. */ 453 public static class Builder extends StubSettings.Builder<ProductServiceStubSettings, Builder> { 454 private final ImmutableList<UnaryCallSettings.Builder<?, ?>> unaryMethodSettingsBuilders; 455 private final UnaryCallSettings.Builder<CreateProductRequest, Product> createProductSettings; 456 private final UnaryCallSettings.Builder<GetProductRequest, Product> getProductSettings; 457 private final PagedCallSettings.Builder< 458 ListProductsRequest, ListProductsResponse, ListProductsPagedResponse> 459 listProductsSettings; 460 private final UnaryCallSettings.Builder<UpdateProductRequest, Product> updateProductSettings; 461 private final UnaryCallSettings.Builder<DeleteProductRequest, Empty> deleteProductSettings; 462 private final UnaryCallSettings.Builder<ImportProductsRequest, Operation> 463 importProductsSettings; 464 private final OperationCallSettings.Builder< 465 ImportProductsRequest, ImportProductsResponse, ImportMetadata> 466 importProductsOperationSettings; 467 private final UnaryCallSettings.Builder<SetInventoryRequest, Operation> setInventorySettings; 468 private final OperationCallSettings.Builder< 469 SetInventoryRequest, SetInventoryResponse, SetInventoryMetadata> 470 setInventoryOperationSettings; 471 private final UnaryCallSettings.Builder<AddFulfillmentPlacesRequest, Operation> 472 addFulfillmentPlacesSettings; 473 private final OperationCallSettings.Builder< 474 AddFulfillmentPlacesRequest, AddFulfillmentPlacesResponse, AddFulfillmentPlacesMetadata> 475 addFulfillmentPlacesOperationSettings; 476 private final UnaryCallSettings.Builder<RemoveFulfillmentPlacesRequest, Operation> 477 removeFulfillmentPlacesSettings; 478 private final OperationCallSettings.Builder< 479 RemoveFulfillmentPlacesRequest, 480 RemoveFulfillmentPlacesResponse, 481 RemoveFulfillmentPlacesMetadata> 482 removeFulfillmentPlacesOperationSettings; 483 private final UnaryCallSettings.Builder<AddLocalInventoriesRequest, Operation> 484 addLocalInventoriesSettings; 485 private final OperationCallSettings.Builder< 486 AddLocalInventoriesRequest, AddLocalInventoriesResponse, AddLocalInventoriesMetadata> 487 addLocalInventoriesOperationSettings; 488 private final UnaryCallSettings.Builder<RemoveLocalInventoriesRequest, Operation> 489 removeLocalInventoriesSettings; 490 private final OperationCallSettings.Builder< 491 RemoveLocalInventoriesRequest, 492 RemoveLocalInventoriesResponse, 493 RemoveLocalInventoriesMetadata> 494 removeLocalInventoriesOperationSettings; 495 private static final ImmutableMap<String, ImmutableSet<StatusCode.Code>> 496 RETRYABLE_CODE_DEFINITIONS; 497 498 static { 499 ImmutableMap.Builder<String, ImmutableSet<StatusCode.Code>> definitions = 500 ImmutableMap.builder(); 501 definitions.put( 502 "retry_policy_1_codes", 503 ImmutableSet.copyOf( 504 Lists.<StatusCode.Code>newArrayList( 505 StatusCode.Code.UNAVAILABLE, StatusCode.Code.DEADLINE_EXCEEDED))); 506 definitions.put( 507 "retry_policy_3_codes", 508 ImmutableSet.copyOf( 509 Lists.<StatusCode.Code>newArrayList( 510 StatusCode.Code.UNAVAILABLE, StatusCode.Code.DEADLINE_EXCEEDED))); 511 RETRYABLE_CODE_DEFINITIONS = definitions.build(); 512 } 513 514 private static final ImmutableMap<String, RetrySettings> RETRY_PARAM_DEFINITIONS; 515 516 static { 517 ImmutableMap.Builder<String, RetrySettings> definitions = ImmutableMap.builder(); 518 RetrySettings settings = null; 519 settings = 520 RetrySettings.newBuilder() 521 .setInitialRetryDelay(Duration.ofMillis(100L)) 522 .setRetryDelayMultiplier(1.3) 523 .setMaxRetryDelay(Duration.ofMillis(30000L)) 524 .setInitialRpcTimeout(Duration.ofMillis(30000L)) 525 .setRpcTimeoutMultiplier(1.0) 526 .setMaxRpcTimeout(Duration.ofMillis(30000L)) 527 .setTotalTimeout(Duration.ofMillis(30000L)) 528 .build(); 529 definitions.put("retry_policy_1_params", settings); 530 settings = 531 RetrySettings.newBuilder() 532 .setInitialRetryDelay(Duration.ofMillis(100L)) 533 .setRetryDelayMultiplier(1.3) 534 .setMaxRetryDelay(Duration.ofMillis(300000L)) 535 .setInitialRpcTimeout(Duration.ofMillis(300000L)) 536 .setRpcTimeoutMultiplier(1.0) 537 .setMaxRpcTimeout(Duration.ofMillis(300000L)) 538 .setTotalTimeout(Duration.ofMillis(300000L)) 539 .build(); 540 definitions.put("retry_policy_3_params", settings); 541 RETRY_PARAM_DEFINITIONS = definitions.build(); 542 } 543 Builder()544 protected Builder() { 545 this(((ClientContext) null)); 546 } 547 Builder(ClientContext clientContext)548 protected Builder(ClientContext clientContext) { 549 super(clientContext); 550 551 createProductSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 552 getProductSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 553 listProductsSettings = PagedCallSettings.newBuilder(LIST_PRODUCTS_PAGE_STR_FACT); 554 updateProductSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 555 deleteProductSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 556 importProductsSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 557 importProductsOperationSettings = OperationCallSettings.newBuilder(); 558 setInventorySettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 559 setInventoryOperationSettings = OperationCallSettings.newBuilder(); 560 addFulfillmentPlacesSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 561 addFulfillmentPlacesOperationSettings = OperationCallSettings.newBuilder(); 562 removeFulfillmentPlacesSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 563 removeFulfillmentPlacesOperationSettings = OperationCallSettings.newBuilder(); 564 addLocalInventoriesSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 565 addLocalInventoriesOperationSettings = OperationCallSettings.newBuilder(); 566 removeLocalInventoriesSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); 567 removeLocalInventoriesOperationSettings = OperationCallSettings.newBuilder(); 568 569 unaryMethodSettingsBuilders = 570 ImmutableList.<UnaryCallSettings.Builder<?, ?>>of( 571 createProductSettings, 572 getProductSettings, 573 listProductsSettings, 574 updateProductSettings, 575 deleteProductSettings, 576 importProductsSettings, 577 setInventorySettings, 578 addFulfillmentPlacesSettings, 579 removeFulfillmentPlacesSettings, 580 addLocalInventoriesSettings, 581 removeLocalInventoriesSettings); 582 initDefaults(this); 583 } 584 Builder(ProductServiceStubSettings settings)585 protected Builder(ProductServiceStubSettings settings) { 586 super(settings); 587 588 createProductSettings = settings.createProductSettings.toBuilder(); 589 getProductSettings = settings.getProductSettings.toBuilder(); 590 listProductsSettings = settings.listProductsSettings.toBuilder(); 591 updateProductSettings = settings.updateProductSettings.toBuilder(); 592 deleteProductSettings = settings.deleteProductSettings.toBuilder(); 593 importProductsSettings = settings.importProductsSettings.toBuilder(); 594 importProductsOperationSettings = settings.importProductsOperationSettings.toBuilder(); 595 setInventorySettings = settings.setInventorySettings.toBuilder(); 596 setInventoryOperationSettings = settings.setInventoryOperationSettings.toBuilder(); 597 addFulfillmentPlacesSettings = settings.addFulfillmentPlacesSettings.toBuilder(); 598 addFulfillmentPlacesOperationSettings = 599 settings.addFulfillmentPlacesOperationSettings.toBuilder(); 600 removeFulfillmentPlacesSettings = settings.removeFulfillmentPlacesSettings.toBuilder(); 601 removeFulfillmentPlacesOperationSettings = 602 settings.removeFulfillmentPlacesOperationSettings.toBuilder(); 603 addLocalInventoriesSettings = settings.addLocalInventoriesSettings.toBuilder(); 604 addLocalInventoriesOperationSettings = 605 settings.addLocalInventoriesOperationSettings.toBuilder(); 606 removeLocalInventoriesSettings = settings.removeLocalInventoriesSettings.toBuilder(); 607 removeLocalInventoriesOperationSettings = 608 settings.removeLocalInventoriesOperationSettings.toBuilder(); 609 610 unaryMethodSettingsBuilders = 611 ImmutableList.<UnaryCallSettings.Builder<?, ?>>of( 612 createProductSettings, 613 getProductSettings, 614 listProductsSettings, 615 updateProductSettings, 616 deleteProductSettings, 617 importProductsSettings, 618 setInventorySettings, 619 addFulfillmentPlacesSettings, 620 removeFulfillmentPlacesSettings, 621 addLocalInventoriesSettings, 622 removeLocalInventoriesSettings); 623 } 624 createDefault()625 private static Builder createDefault() { 626 Builder builder = new Builder(((ClientContext) null)); 627 628 builder.setTransportChannelProvider(defaultTransportChannelProvider()); 629 builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build()); 630 builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build()); 631 builder.setEndpoint(getDefaultEndpoint()); 632 builder.setMtlsEndpoint(getDefaultMtlsEndpoint()); 633 builder.setSwitchToMtlsEndpointAllowed(true); 634 635 return initDefaults(builder); 636 } 637 createHttpJsonDefault()638 private static Builder createHttpJsonDefault() { 639 Builder builder = new Builder(((ClientContext) null)); 640 641 builder.setTransportChannelProvider(defaultHttpJsonTransportProviderBuilder().build()); 642 builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build()); 643 builder.setInternalHeaderProvider(defaultHttpJsonApiClientHeaderProviderBuilder().build()); 644 builder.setEndpoint(getDefaultEndpoint()); 645 builder.setMtlsEndpoint(getDefaultMtlsEndpoint()); 646 builder.setSwitchToMtlsEndpointAllowed(true); 647 648 return initDefaults(builder); 649 } 650 initDefaults(Builder builder)651 private static Builder initDefaults(Builder builder) { 652 builder 653 .createProductSettings() 654 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 655 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 656 657 builder 658 .getProductSettings() 659 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 660 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 661 662 builder 663 .listProductsSettings() 664 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 665 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 666 667 builder 668 .updateProductSettings() 669 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 670 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 671 672 builder 673 .deleteProductSettings() 674 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 675 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 676 677 builder 678 .importProductsSettings() 679 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_3_codes")) 680 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_3_params")); 681 682 builder 683 .setInventorySettings() 684 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 685 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 686 687 builder 688 .addFulfillmentPlacesSettings() 689 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 690 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 691 692 builder 693 .removeFulfillmentPlacesSettings() 694 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 695 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 696 697 builder 698 .addLocalInventoriesSettings() 699 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 700 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 701 702 builder 703 .removeLocalInventoriesSettings() 704 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 705 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")); 706 707 builder 708 .importProductsOperationSettings() 709 .setInitialCallSettings( 710 UnaryCallSettings 711 .<ImportProductsRequest, OperationSnapshot>newUnaryCallSettingsBuilder() 712 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_3_codes")) 713 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_3_params")) 714 .build()) 715 .setResponseTransformer( 716 ProtoOperationTransformers.ResponseTransformer.create(ImportProductsResponse.class)) 717 .setMetadataTransformer( 718 ProtoOperationTransformers.MetadataTransformer.create(ImportMetadata.class)) 719 .setPollingAlgorithm( 720 OperationTimedPollAlgorithm.create( 721 RetrySettings.newBuilder() 722 .setInitialRetryDelay(Duration.ofMillis(5000L)) 723 .setRetryDelayMultiplier(1.5) 724 .setMaxRetryDelay(Duration.ofMillis(45000L)) 725 .setInitialRpcTimeout(Duration.ZERO) 726 .setRpcTimeoutMultiplier(1.0) 727 .setMaxRpcTimeout(Duration.ZERO) 728 .setTotalTimeout(Duration.ofMillis(300000L)) 729 .build())); 730 731 builder 732 .setInventoryOperationSettings() 733 .setInitialCallSettings( 734 UnaryCallSettings 735 .<SetInventoryRequest, OperationSnapshot>newUnaryCallSettingsBuilder() 736 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 737 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")) 738 .build()) 739 .setResponseTransformer( 740 ProtoOperationTransformers.ResponseTransformer.create(SetInventoryResponse.class)) 741 .setMetadataTransformer( 742 ProtoOperationTransformers.MetadataTransformer.create(SetInventoryMetadata.class)) 743 .setPollingAlgorithm( 744 OperationTimedPollAlgorithm.create( 745 RetrySettings.newBuilder() 746 .setInitialRetryDelay(Duration.ofMillis(5000L)) 747 .setRetryDelayMultiplier(1.5) 748 .setMaxRetryDelay(Duration.ofMillis(45000L)) 749 .setInitialRpcTimeout(Duration.ZERO) 750 .setRpcTimeoutMultiplier(1.0) 751 .setMaxRpcTimeout(Duration.ZERO) 752 .setTotalTimeout(Duration.ofMillis(300000L)) 753 .build())); 754 755 builder 756 .addFulfillmentPlacesOperationSettings() 757 .setInitialCallSettings( 758 UnaryCallSettings 759 .<AddFulfillmentPlacesRequest, OperationSnapshot>newUnaryCallSettingsBuilder() 760 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 761 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")) 762 .build()) 763 .setResponseTransformer( 764 ProtoOperationTransformers.ResponseTransformer.create( 765 AddFulfillmentPlacesResponse.class)) 766 .setMetadataTransformer( 767 ProtoOperationTransformers.MetadataTransformer.create( 768 AddFulfillmentPlacesMetadata.class)) 769 .setPollingAlgorithm( 770 OperationTimedPollAlgorithm.create( 771 RetrySettings.newBuilder() 772 .setInitialRetryDelay(Duration.ofMillis(5000L)) 773 .setRetryDelayMultiplier(1.5) 774 .setMaxRetryDelay(Duration.ofMillis(45000L)) 775 .setInitialRpcTimeout(Duration.ZERO) 776 .setRpcTimeoutMultiplier(1.0) 777 .setMaxRpcTimeout(Duration.ZERO) 778 .setTotalTimeout(Duration.ofMillis(300000L)) 779 .build())); 780 781 builder 782 .removeFulfillmentPlacesOperationSettings() 783 .setInitialCallSettings( 784 UnaryCallSettings 785 .<RemoveFulfillmentPlacesRequest, OperationSnapshot>newUnaryCallSettingsBuilder() 786 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 787 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")) 788 .build()) 789 .setResponseTransformer( 790 ProtoOperationTransformers.ResponseTransformer.create( 791 RemoveFulfillmentPlacesResponse.class)) 792 .setMetadataTransformer( 793 ProtoOperationTransformers.MetadataTransformer.create( 794 RemoveFulfillmentPlacesMetadata.class)) 795 .setPollingAlgorithm( 796 OperationTimedPollAlgorithm.create( 797 RetrySettings.newBuilder() 798 .setInitialRetryDelay(Duration.ofMillis(5000L)) 799 .setRetryDelayMultiplier(1.5) 800 .setMaxRetryDelay(Duration.ofMillis(45000L)) 801 .setInitialRpcTimeout(Duration.ZERO) 802 .setRpcTimeoutMultiplier(1.0) 803 .setMaxRpcTimeout(Duration.ZERO) 804 .setTotalTimeout(Duration.ofMillis(300000L)) 805 .build())); 806 807 builder 808 .addLocalInventoriesOperationSettings() 809 .setInitialCallSettings( 810 UnaryCallSettings 811 .<AddLocalInventoriesRequest, OperationSnapshot>newUnaryCallSettingsBuilder() 812 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 813 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")) 814 .build()) 815 .setResponseTransformer( 816 ProtoOperationTransformers.ResponseTransformer.create( 817 AddLocalInventoriesResponse.class)) 818 .setMetadataTransformer( 819 ProtoOperationTransformers.MetadataTransformer.create( 820 AddLocalInventoriesMetadata.class)) 821 .setPollingAlgorithm( 822 OperationTimedPollAlgorithm.create( 823 RetrySettings.newBuilder() 824 .setInitialRetryDelay(Duration.ofMillis(5000L)) 825 .setRetryDelayMultiplier(1.5) 826 .setMaxRetryDelay(Duration.ofMillis(45000L)) 827 .setInitialRpcTimeout(Duration.ZERO) 828 .setRpcTimeoutMultiplier(1.0) 829 .setMaxRpcTimeout(Duration.ZERO) 830 .setTotalTimeout(Duration.ofMillis(300000L)) 831 .build())); 832 833 builder 834 .removeLocalInventoriesOperationSettings() 835 .setInitialCallSettings( 836 UnaryCallSettings 837 .<RemoveLocalInventoriesRequest, OperationSnapshot>newUnaryCallSettingsBuilder() 838 .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_1_codes")) 839 .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_1_params")) 840 .build()) 841 .setResponseTransformer( 842 ProtoOperationTransformers.ResponseTransformer.create( 843 RemoveLocalInventoriesResponse.class)) 844 .setMetadataTransformer( 845 ProtoOperationTransformers.MetadataTransformer.create( 846 RemoveLocalInventoriesMetadata.class)) 847 .setPollingAlgorithm( 848 OperationTimedPollAlgorithm.create( 849 RetrySettings.newBuilder() 850 .setInitialRetryDelay(Duration.ofMillis(5000L)) 851 .setRetryDelayMultiplier(1.5) 852 .setMaxRetryDelay(Duration.ofMillis(45000L)) 853 .setInitialRpcTimeout(Duration.ZERO) 854 .setRpcTimeoutMultiplier(1.0) 855 .setMaxRpcTimeout(Duration.ZERO) 856 .setTotalTimeout(Duration.ofMillis(300000L)) 857 .build())); 858 859 return builder; 860 } 861 862 /** 863 * Applies the given settings updater function to all of the unary API methods in this service. 864 * 865 * <p>Note: This method does not support applying settings to streaming methods. 866 */ applyToAllUnaryMethods( ApiFunction<UnaryCallSettings.Builder<?, ?>, Void> settingsUpdater)867 public Builder applyToAllUnaryMethods( 868 ApiFunction<UnaryCallSettings.Builder<?, ?>, Void> settingsUpdater) { 869 super.applyToAllUnaryMethods(unaryMethodSettingsBuilders, settingsUpdater); 870 return this; 871 } 872 unaryMethodSettingsBuilders()873 public ImmutableList<UnaryCallSettings.Builder<?, ?>> unaryMethodSettingsBuilders() { 874 return unaryMethodSettingsBuilders; 875 } 876 877 /** Returns the builder for the settings used for calls to createProduct. */ createProductSettings()878 public UnaryCallSettings.Builder<CreateProductRequest, Product> createProductSettings() { 879 return createProductSettings; 880 } 881 882 /** Returns the builder for the settings used for calls to getProduct. */ getProductSettings()883 public UnaryCallSettings.Builder<GetProductRequest, Product> getProductSettings() { 884 return getProductSettings; 885 } 886 887 /** Returns the builder for the settings used for calls to listProducts. */ 888 public PagedCallSettings.Builder< 889 ListProductsRequest, ListProductsResponse, ListProductsPagedResponse> listProductsSettings()890 listProductsSettings() { 891 return listProductsSettings; 892 } 893 894 /** Returns the builder for the settings used for calls to updateProduct. */ updateProductSettings()895 public UnaryCallSettings.Builder<UpdateProductRequest, Product> updateProductSettings() { 896 return updateProductSettings; 897 } 898 899 /** Returns the builder for the settings used for calls to deleteProduct. */ deleteProductSettings()900 public UnaryCallSettings.Builder<DeleteProductRequest, Empty> deleteProductSettings() { 901 return deleteProductSettings; 902 } 903 904 /** Returns the builder for the settings used for calls to importProducts. */ importProductsSettings()905 public UnaryCallSettings.Builder<ImportProductsRequest, Operation> importProductsSettings() { 906 return importProductsSettings; 907 } 908 909 /** Returns the builder for the settings used for calls to importProducts. */ 910 @BetaApi( 911 "The surface for use by generated code is not stable yet and may change in the future.") 912 public OperationCallSettings.Builder< 913 ImportProductsRequest, ImportProductsResponse, ImportMetadata> importProductsOperationSettings()914 importProductsOperationSettings() { 915 return importProductsOperationSettings; 916 } 917 918 /** Returns the builder for the settings used for calls to setInventory. */ setInventorySettings()919 public UnaryCallSettings.Builder<SetInventoryRequest, Operation> setInventorySettings() { 920 return setInventorySettings; 921 } 922 923 /** Returns the builder for the settings used for calls to setInventory. */ 924 @BetaApi( 925 "The surface for use by generated code is not stable yet and may change in the future.") 926 public OperationCallSettings.Builder< 927 SetInventoryRequest, SetInventoryResponse, SetInventoryMetadata> setInventoryOperationSettings()928 setInventoryOperationSettings() { 929 return setInventoryOperationSettings; 930 } 931 932 /** Returns the builder for the settings used for calls to addFulfillmentPlaces. */ 933 public UnaryCallSettings.Builder<AddFulfillmentPlacesRequest, Operation> addFulfillmentPlacesSettings()934 addFulfillmentPlacesSettings() { 935 return addFulfillmentPlacesSettings; 936 } 937 938 /** Returns the builder for the settings used for calls to addFulfillmentPlaces. */ 939 @BetaApi( 940 "The surface for use by generated code is not stable yet and may change in the future.") 941 public OperationCallSettings.Builder< 942 AddFulfillmentPlacesRequest, AddFulfillmentPlacesResponse, AddFulfillmentPlacesMetadata> addFulfillmentPlacesOperationSettings()943 addFulfillmentPlacesOperationSettings() { 944 return addFulfillmentPlacesOperationSettings; 945 } 946 947 /** Returns the builder for the settings used for calls to removeFulfillmentPlaces. */ 948 public UnaryCallSettings.Builder<RemoveFulfillmentPlacesRequest, Operation> removeFulfillmentPlacesSettings()949 removeFulfillmentPlacesSettings() { 950 return removeFulfillmentPlacesSettings; 951 } 952 953 /** Returns the builder for the settings used for calls to removeFulfillmentPlaces. */ 954 @BetaApi( 955 "The surface for use by generated code is not stable yet and may change in the future.") 956 public OperationCallSettings.Builder< 957 RemoveFulfillmentPlacesRequest, 958 RemoveFulfillmentPlacesResponse, 959 RemoveFulfillmentPlacesMetadata> removeFulfillmentPlacesOperationSettings()960 removeFulfillmentPlacesOperationSettings() { 961 return removeFulfillmentPlacesOperationSettings; 962 } 963 964 /** Returns the builder for the settings used for calls to addLocalInventories. */ 965 public UnaryCallSettings.Builder<AddLocalInventoriesRequest, Operation> addLocalInventoriesSettings()966 addLocalInventoriesSettings() { 967 return addLocalInventoriesSettings; 968 } 969 970 /** Returns the builder for the settings used for calls to addLocalInventories. */ 971 @BetaApi( 972 "The surface for use by generated code is not stable yet and may change in the future.") 973 public OperationCallSettings.Builder< 974 AddLocalInventoriesRequest, AddLocalInventoriesResponse, AddLocalInventoriesMetadata> addLocalInventoriesOperationSettings()975 addLocalInventoriesOperationSettings() { 976 return addLocalInventoriesOperationSettings; 977 } 978 979 /** Returns the builder for the settings used for calls to removeLocalInventories. */ 980 public UnaryCallSettings.Builder<RemoveLocalInventoriesRequest, Operation> removeLocalInventoriesSettings()981 removeLocalInventoriesSettings() { 982 return removeLocalInventoriesSettings; 983 } 984 985 /** Returns the builder for the settings used for calls to removeLocalInventories. */ 986 @BetaApi( 987 "The surface for use by generated code is not stable yet and may change in the future.") 988 public OperationCallSettings.Builder< 989 RemoveLocalInventoriesRequest, 990 RemoveLocalInventoriesResponse, 991 RemoveLocalInventoriesMetadata> removeLocalInventoriesOperationSettings()992 removeLocalInventoriesOperationSettings() { 993 return removeLocalInventoriesOperationSettings; 994 } 995 996 @Override build()997 public ProductServiceStubSettings build() throws IOException { 998 return new ProductServiceStubSettings(this); 999 } 1000 } 1001 } 1002