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.dialogflow.v2; 18 19 import com.google.api.core.ApiFuture; 20 import com.google.api.core.ApiFutures; 21 import com.google.api.core.BetaApi; 22 import com.google.api.gax.core.BackgroundResource; 23 import com.google.api.gax.httpjson.longrunning.OperationsClient; 24 import com.google.api.gax.longrunning.OperationFuture; 25 import com.google.api.gax.paging.AbstractFixedSizeCollection; 26 import com.google.api.gax.paging.AbstractPage; 27 import com.google.api.gax.paging.AbstractPagedListResponse; 28 import com.google.api.gax.rpc.OperationCallable; 29 import com.google.api.gax.rpc.PageContext; 30 import com.google.api.gax.rpc.UnaryCallable; 31 import com.google.cloud.dialogflow.v2.stub.ConversationDatasetsStub; 32 import com.google.cloud.dialogflow.v2.stub.ConversationDatasetsStubSettings; 33 import com.google.cloud.location.GetLocationRequest; 34 import com.google.cloud.location.ListLocationsRequest; 35 import com.google.cloud.location.ListLocationsResponse; 36 import com.google.cloud.location.Location; 37 import com.google.common.util.concurrent.MoreExecutors; 38 import com.google.longrunning.Operation; 39 import com.google.protobuf.Empty; 40 import java.io.IOException; 41 import java.util.List; 42 import java.util.concurrent.TimeUnit; 43 import javax.annotation.Generated; 44 45 // AUTO-GENERATED DOCUMENTATION AND CLASS. 46 /** 47 * Service Description: Conversation datasets. 48 * 49 * <p>Conversation datasets contain raw conversation files and their customizable metadata that can 50 * be used for model training. 51 * 52 * <p>This class provides the ability to make remote calls to the backing service through method 53 * calls that map to API methods. Sample code to get started: 54 * 55 * <pre>{@code 56 * // This snippet has been automatically generated and should be regarded as a code template only. 57 * // It will require modifications to work: 58 * // - It may require correct/in-range values for request initialization. 59 * // - It may require specifying regional endpoints when creating the service client as shown in 60 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 61 * try (ConversationDatasetsClient conversationDatasetsClient = 62 * ConversationDatasetsClient.create()) { 63 * ConversationDatasetName name = 64 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]"); 65 * ConversationDataset response = conversationDatasetsClient.getConversationDataset(name); 66 * } 67 * }</pre> 68 * 69 * <p>Note: close() needs to be called on the ConversationDatasetsClient object to clean up 70 * resources such as threads. In the example above, try-with-resources is used, which automatically 71 * calls close(). 72 * 73 * <p>The surface of this class includes several types of Java methods for each of the API's 74 * methods: 75 * 76 * <ol> 77 * <li>A "flattened" method. With this type of method, the fields of the request type have been 78 * converted into function parameters. It may be the case that not all fields are available as 79 * parameters, and not every API method will have a flattened method entry point. 80 * <li>A "request object" method. This type of method only takes one parameter, a request object, 81 * which must be constructed before the call. Not every API method will have a request object 82 * method. 83 * <li>A "callable" method. This type of method takes no parameters and returns an immutable API 84 * callable object, which can be used to initiate calls to the service. 85 * </ol> 86 * 87 * <p>See the individual methods for example code. 88 * 89 * <p>Many parameters require resource names to be formatted in a particular way. To assist with 90 * these names, this class includes a format method for each type of name, and additionally a parse 91 * method to extract the individual identifiers contained within names that are returned. 92 * 93 * <p>This class can be customized by passing in a custom instance of ConversationDatasetsSettings 94 * to create(). For example: 95 * 96 * <p>To customize credentials: 97 * 98 * <pre>{@code 99 * // This snippet has been automatically generated and should be regarded as a code template only. 100 * // It will require modifications to work: 101 * // - It may require correct/in-range values for request initialization. 102 * // - It may require specifying regional endpoints when creating the service client as shown in 103 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 104 * ConversationDatasetsSettings conversationDatasetsSettings = 105 * ConversationDatasetsSettings.newBuilder() 106 * .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials)) 107 * .build(); 108 * ConversationDatasetsClient conversationDatasetsClient = 109 * ConversationDatasetsClient.create(conversationDatasetsSettings); 110 * }</pre> 111 * 112 * <p>To customize the endpoint: 113 * 114 * <pre>{@code 115 * // This snippet has been automatically generated and should be regarded as a code template only. 116 * // It will require modifications to work: 117 * // - It may require correct/in-range values for request initialization. 118 * // - It may require specifying regional endpoints when creating the service client as shown in 119 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 120 * ConversationDatasetsSettings conversationDatasetsSettings = 121 * ConversationDatasetsSettings.newBuilder().setEndpoint(myEndpoint).build(); 122 * ConversationDatasetsClient conversationDatasetsClient = 123 * ConversationDatasetsClient.create(conversationDatasetsSettings); 124 * }</pre> 125 * 126 * <p>To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over 127 * the wire: 128 * 129 * <pre>{@code 130 * // This snippet has been automatically generated and should be regarded as a code template only. 131 * // It will require modifications to work: 132 * // - It may require correct/in-range values for request initialization. 133 * // - It may require specifying regional endpoints when creating the service client as shown in 134 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 135 * ConversationDatasetsSettings conversationDatasetsSettings = 136 * ConversationDatasetsSettings.newHttpJsonBuilder().build(); 137 * ConversationDatasetsClient conversationDatasetsClient = 138 * ConversationDatasetsClient.create(conversationDatasetsSettings); 139 * }</pre> 140 * 141 * <p>Please refer to the GitHub repository's samples for more quickstart code snippets. 142 */ 143 @Generated("by gapic-generator-java") 144 public class ConversationDatasetsClient implements BackgroundResource { 145 private final ConversationDatasetsSettings settings; 146 private final ConversationDatasetsStub stub; 147 private final OperationsClient httpJsonOperationsClient; 148 private final com.google.longrunning.OperationsClient operationsClient; 149 150 /** Constructs an instance of ConversationDatasetsClient with default settings. */ create()151 public static final ConversationDatasetsClient create() throws IOException { 152 return create(ConversationDatasetsSettings.newBuilder().build()); 153 } 154 155 /** 156 * Constructs an instance of ConversationDatasetsClient, using the given settings. The channels 157 * are created based on the settings passed in, or defaults for any settings that are not set. 158 */ create(ConversationDatasetsSettings settings)159 public static final ConversationDatasetsClient create(ConversationDatasetsSettings settings) 160 throws IOException { 161 return new ConversationDatasetsClient(settings); 162 } 163 164 /** 165 * Constructs an instance of ConversationDatasetsClient, using the given stub for making calls. 166 * This is for advanced usage - prefer using create(ConversationDatasetsSettings). 167 */ create(ConversationDatasetsStub stub)168 public static final ConversationDatasetsClient create(ConversationDatasetsStub stub) { 169 return new ConversationDatasetsClient(stub); 170 } 171 172 /** 173 * Constructs an instance of ConversationDatasetsClient, using the given settings. This is 174 * protected so that it is easy to make a subclass, but otherwise, the static factory methods 175 * should be preferred. 176 */ ConversationDatasetsClient(ConversationDatasetsSettings settings)177 protected ConversationDatasetsClient(ConversationDatasetsSettings settings) throws IOException { 178 this.settings = settings; 179 this.stub = ((ConversationDatasetsStubSettings) settings.getStubSettings()).createStub(); 180 this.operationsClient = 181 com.google.longrunning.OperationsClient.create(this.stub.getOperationsStub()); 182 this.httpJsonOperationsClient = OperationsClient.create(this.stub.getHttpJsonOperationsStub()); 183 } 184 ConversationDatasetsClient(ConversationDatasetsStub stub)185 protected ConversationDatasetsClient(ConversationDatasetsStub stub) { 186 this.settings = null; 187 this.stub = stub; 188 this.operationsClient = 189 com.google.longrunning.OperationsClient.create(this.stub.getOperationsStub()); 190 this.httpJsonOperationsClient = OperationsClient.create(this.stub.getHttpJsonOperationsStub()); 191 } 192 getSettings()193 public final ConversationDatasetsSettings getSettings() { 194 return settings; 195 } 196 getStub()197 public ConversationDatasetsStub getStub() { 198 return stub; 199 } 200 201 /** 202 * Returns the OperationsClient that can be used to query the status of a long-running operation 203 * returned by another API method call. 204 */ getOperationsClient()205 public final com.google.longrunning.OperationsClient getOperationsClient() { 206 return operationsClient; 207 } 208 209 /** 210 * Returns the OperationsClient that can be used to query the status of a long-running operation 211 * returned by another API method call. 212 */ 213 @BetaApi getHttpJsonOperationsClient()214 public final OperationsClient getHttpJsonOperationsClient() { 215 return httpJsonOperationsClient; 216 } 217 218 // AUTO-GENERATED DOCUMENTATION AND METHOD. 219 /** 220 * Creates a new conversation dataset. 221 * 222 * <p>This method is a [long-running 223 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 224 * returned `Operation` type has the following method-specific fields: 225 * 226 * <p>- `metadata`: 227 * [CreateConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.CreateConversationDatasetOperationMetadata] 228 * - `response`: [ConversationDataset][google.cloud.dialogflow.v2.ConversationDataset] 229 * 230 * <p>Sample code: 231 * 232 * <pre>{@code 233 * // This snippet has been automatically generated and should be regarded as a code template only. 234 * // It will require modifications to work: 235 * // - It may require correct/in-range values for request initialization. 236 * // - It may require specifying regional endpoints when creating the service client as shown in 237 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 238 * try (ConversationDatasetsClient conversationDatasetsClient = 239 * ConversationDatasetsClient.create()) { 240 * String parent = "parent-995424086"; 241 * ConversationDataset conversationDataset = ConversationDataset.newBuilder().build(); 242 * ConversationDataset response = 243 * conversationDatasetsClient 244 * .createConversationDatasetAsync(parent, conversationDataset) 245 * .get(); 246 * } 247 * }</pre> 248 * 249 * @param parent Required. The project to create conversation dataset for. Format: 250 * `projects/<Project ID>/locations/<Location ID>` 251 * @param conversationDataset Required. The conversation dataset to create. 252 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 253 */ 254 public final OperationFuture<ConversationDataset, CreateConversationDatasetOperationMetadata> createConversationDatasetAsync(String parent, ConversationDataset conversationDataset)255 createConversationDatasetAsync(String parent, ConversationDataset conversationDataset) { 256 CreateConversationDatasetRequest request = 257 CreateConversationDatasetRequest.newBuilder() 258 .setParent(parent) 259 .setConversationDataset(conversationDataset) 260 .build(); 261 return createConversationDatasetAsync(request); 262 } 263 264 // AUTO-GENERATED DOCUMENTATION AND METHOD. 265 /** 266 * Creates a new conversation dataset. 267 * 268 * <p>This method is a [long-running 269 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 270 * returned `Operation` type has the following method-specific fields: 271 * 272 * <p>- `metadata`: 273 * [CreateConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.CreateConversationDatasetOperationMetadata] 274 * - `response`: [ConversationDataset][google.cloud.dialogflow.v2.ConversationDataset] 275 * 276 * <p>Sample code: 277 * 278 * <pre>{@code 279 * // This snippet has been automatically generated and should be regarded as a code template only. 280 * // It will require modifications to work: 281 * // - It may require correct/in-range values for request initialization. 282 * // - It may require specifying regional endpoints when creating the service client as shown in 283 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 284 * try (ConversationDatasetsClient conversationDatasetsClient = 285 * ConversationDatasetsClient.create()) { 286 * CreateConversationDatasetRequest request = 287 * CreateConversationDatasetRequest.newBuilder() 288 * .setParent("parent-995424086") 289 * .setConversationDataset(ConversationDataset.newBuilder().build()) 290 * .build(); 291 * ConversationDataset response = 292 * conversationDatasetsClient.createConversationDatasetAsync(request).get(); 293 * } 294 * }</pre> 295 * 296 * @param request The request object containing all of the parameters for the API call. 297 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 298 */ 299 public final OperationFuture<ConversationDataset, CreateConversationDatasetOperationMetadata> createConversationDatasetAsync(CreateConversationDatasetRequest request)300 createConversationDatasetAsync(CreateConversationDatasetRequest request) { 301 return createConversationDatasetOperationCallable().futureCall(request); 302 } 303 304 // AUTO-GENERATED DOCUMENTATION AND METHOD. 305 /** 306 * Creates a new conversation dataset. 307 * 308 * <p>This method is a [long-running 309 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 310 * returned `Operation` type has the following method-specific fields: 311 * 312 * <p>- `metadata`: 313 * [CreateConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.CreateConversationDatasetOperationMetadata] 314 * - `response`: [ConversationDataset][google.cloud.dialogflow.v2.ConversationDataset] 315 * 316 * <p>Sample code: 317 * 318 * <pre>{@code 319 * // This snippet has been automatically generated and should be regarded as a code template only. 320 * // It will require modifications to work: 321 * // - It may require correct/in-range values for request initialization. 322 * // - It may require specifying regional endpoints when creating the service client as shown in 323 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 324 * try (ConversationDatasetsClient conversationDatasetsClient = 325 * ConversationDatasetsClient.create()) { 326 * CreateConversationDatasetRequest request = 327 * CreateConversationDatasetRequest.newBuilder() 328 * .setParent("parent-995424086") 329 * .setConversationDataset(ConversationDataset.newBuilder().build()) 330 * .build(); 331 * OperationFuture<ConversationDataset, CreateConversationDatasetOperationMetadata> future = 332 * conversationDatasetsClient 333 * .createConversationDatasetOperationCallable() 334 * .futureCall(request); 335 * // Do something. 336 * ConversationDataset response = future.get(); 337 * } 338 * }</pre> 339 */ 340 public final OperationCallable< 341 CreateConversationDatasetRequest, 342 ConversationDataset, 343 CreateConversationDatasetOperationMetadata> createConversationDatasetOperationCallable()344 createConversationDatasetOperationCallable() { 345 return stub.createConversationDatasetOperationCallable(); 346 } 347 348 // AUTO-GENERATED DOCUMENTATION AND METHOD. 349 /** 350 * Creates a new conversation dataset. 351 * 352 * <p>This method is a [long-running 353 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 354 * returned `Operation` type has the following method-specific fields: 355 * 356 * <p>- `metadata`: 357 * [CreateConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.CreateConversationDatasetOperationMetadata] 358 * - `response`: [ConversationDataset][google.cloud.dialogflow.v2.ConversationDataset] 359 * 360 * <p>Sample code: 361 * 362 * <pre>{@code 363 * // This snippet has been automatically generated and should be regarded as a code template only. 364 * // It will require modifications to work: 365 * // - It may require correct/in-range values for request initialization. 366 * // - It may require specifying regional endpoints when creating the service client as shown in 367 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 368 * try (ConversationDatasetsClient conversationDatasetsClient = 369 * ConversationDatasetsClient.create()) { 370 * CreateConversationDatasetRequest request = 371 * CreateConversationDatasetRequest.newBuilder() 372 * .setParent("parent-995424086") 373 * .setConversationDataset(ConversationDataset.newBuilder().build()) 374 * .build(); 375 * ApiFuture<Operation> future = 376 * conversationDatasetsClient.createConversationDatasetCallable().futureCall(request); 377 * // Do something. 378 * Operation response = future.get(); 379 * } 380 * }</pre> 381 */ 382 public final UnaryCallable<CreateConversationDatasetRequest, Operation> createConversationDatasetCallable()383 createConversationDatasetCallable() { 384 return stub.createConversationDatasetCallable(); 385 } 386 387 // AUTO-GENERATED DOCUMENTATION AND METHOD. 388 /** 389 * Retrieves the specified conversation dataset. 390 * 391 * <p>Sample code: 392 * 393 * <pre>{@code 394 * // This snippet has been automatically generated and should be regarded as a code template only. 395 * // It will require modifications to work: 396 * // - It may require correct/in-range values for request initialization. 397 * // - It may require specifying regional endpoints when creating the service client as shown in 398 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 399 * try (ConversationDatasetsClient conversationDatasetsClient = 400 * ConversationDatasetsClient.create()) { 401 * ConversationDatasetName name = 402 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]"); 403 * ConversationDataset response = conversationDatasetsClient.getConversationDataset(name); 404 * } 405 * }</pre> 406 * 407 * @param name Required. The conversation dataset to retrieve. Format: `projects/<Project 408 * ID>/locations/<Location ID>/conversationDatasets/<Conversation Dataset ID>` 409 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 410 */ getConversationDataset(ConversationDatasetName name)411 public final ConversationDataset getConversationDataset(ConversationDatasetName name) { 412 GetConversationDatasetRequest request = 413 GetConversationDatasetRequest.newBuilder() 414 .setName(name == null ? null : name.toString()) 415 .build(); 416 return getConversationDataset(request); 417 } 418 419 // AUTO-GENERATED DOCUMENTATION AND METHOD. 420 /** 421 * Retrieves the specified conversation dataset. 422 * 423 * <p>Sample code: 424 * 425 * <pre>{@code 426 * // This snippet has been automatically generated and should be regarded as a code template only. 427 * // It will require modifications to work: 428 * // - It may require correct/in-range values for request initialization. 429 * // - It may require specifying regional endpoints when creating the service client as shown in 430 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 431 * try (ConversationDatasetsClient conversationDatasetsClient = 432 * ConversationDatasetsClient.create()) { 433 * String name = 434 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 435 * .toString(); 436 * ConversationDataset response = conversationDatasetsClient.getConversationDataset(name); 437 * } 438 * }</pre> 439 * 440 * @param name Required. The conversation dataset to retrieve. Format: `projects/<Project 441 * ID>/locations/<Location ID>/conversationDatasets/<Conversation Dataset ID>` 442 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 443 */ getConversationDataset(String name)444 public final ConversationDataset getConversationDataset(String name) { 445 GetConversationDatasetRequest request = 446 GetConversationDatasetRequest.newBuilder().setName(name).build(); 447 return getConversationDataset(request); 448 } 449 450 // AUTO-GENERATED DOCUMENTATION AND METHOD. 451 /** 452 * Retrieves the specified conversation dataset. 453 * 454 * <p>Sample code: 455 * 456 * <pre>{@code 457 * // This snippet has been automatically generated and should be regarded as a code template only. 458 * // It will require modifications to work: 459 * // - It may require correct/in-range values for request initialization. 460 * // - It may require specifying regional endpoints when creating the service client as shown in 461 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 462 * try (ConversationDatasetsClient conversationDatasetsClient = 463 * ConversationDatasetsClient.create()) { 464 * GetConversationDatasetRequest request = 465 * GetConversationDatasetRequest.newBuilder() 466 * .setName( 467 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 468 * .toString()) 469 * .build(); 470 * ConversationDataset response = conversationDatasetsClient.getConversationDataset(request); 471 * } 472 * }</pre> 473 * 474 * @param request The request object containing all of the parameters for the API call. 475 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 476 */ getConversationDataset(GetConversationDatasetRequest request)477 public final ConversationDataset getConversationDataset(GetConversationDatasetRequest request) { 478 return getConversationDatasetCallable().call(request); 479 } 480 481 // AUTO-GENERATED DOCUMENTATION AND METHOD. 482 /** 483 * Retrieves the specified conversation dataset. 484 * 485 * <p>Sample code: 486 * 487 * <pre>{@code 488 * // This snippet has been automatically generated and should be regarded as a code template only. 489 * // It will require modifications to work: 490 * // - It may require correct/in-range values for request initialization. 491 * // - It may require specifying regional endpoints when creating the service client as shown in 492 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 493 * try (ConversationDatasetsClient conversationDatasetsClient = 494 * ConversationDatasetsClient.create()) { 495 * GetConversationDatasetRequest request = 496 * GetConversationDatasetRequest.newBuilder() 497 * .setName( 498 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 499 * .toString()) 500 * .build(); 501 * ApiFuture<ConversationDataset> future = 502 * conversationDatasetsClient.getConversationDatasetCallable().futureCall(request); 503 * // Do something. 504 * ConversationDataset response = future.get(); 505 * } 506 * }</pre> 507 */ 508 public final UnaryCallable<GetConversationDatasetRequest, ConversationDataset> getConversationDatasetCallable()509 getConversationDatasetCallable() { 510 return stub.getConversationDatasetCallable(); 511 } 512 513 // AUTO-GENERATED DOCUMENTATION AND METHOD. 514 /** 515 * Returns the list of all conversation datasets in the specified project and location. 516 * 517 * <p>Sample code: 518 * 519 * <pre>{@code 520 * // This snippet has been automatically generated and should be regarded as a code template only. 521 * // It will require modifications to work: 522 * // - It may require correct/in-range values for request initialization. 523 * // - It may require specifying regional endpoints when creating the service client as shown in 524 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 525 * try (ConversationDatasetsClient conversationDatasetsClient = 526 * ConversationDatasetsClient.create()) { 527 * LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 528 * for (ConversationDataset element : 529 * conversationDatasetsClient.listConversationDatasets(parent).iterateAll()) { 530 * // doThingsWith(element); 531 * } 532 * } 533 * }</pre> 534 * 535 * @param parent Required. The project and location name to list all conversation datasets for. 536 * Format: `projects/<Project ID>/locations/<Location ID>` 537 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 538 */ listConversationDatasets(LocationName parent)539 public final ListConversationDatasetsPagedResponse listConversationDatasets(LocationName parent) { 540 ListConversationDatasetsRequest request = 541 ListConversationDatasetsRequest.newBuilder() 542 .setParent(parent == null ? null : parent.toString()) 543 .build(); 544 return listConversationDatasets(request); 545 } 546 547 // AUTO-GENERATED DOCUMENTATION AND METHOD. 548 /** 549 * Returns the list of all conversation datasets in the specified project and location. 550 * 551 * <p>Sample code: 552 * 553 * <pre>{@code 554 * // This snippet has been automatically generated and should be regarded as a code template only. 555 * // It will require modifications to work: 556 * // - It may require correct/in-range values for request initialization. 557 * // - It may require specifying regional endpoints when creating the service client as shown in 558 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 559 * try (ConversationDatasetsClient conversationDatasetsClient = 560 * ConversationDatasetsClient.create()) { 561 * String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString(); 562 * for (ConversationDataset element : 563 * conversationDatasetsClient.listConversationDatasets(parent).iterateAll()) { 564 * // doThingsWith(element); 565 * } 566 * } 567 * }</pre> 568 * 569 * @param parent Required. The project and location name to list all conversation datasets for. 570 * Format: `projects/<Project ID>/locations/<Location ID>` 571 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 572 */ listConversationDatasets(String parent)573 public final ListConversationDatasetsPagedResponse listConversationDatasets(String parent) { 574 ListConversationDatasetsRequest request = 575 ListConversationDatasetsRequest.newBuilder().setParent(parent).build(); 576 return listConversationDatasets(request); 577 } 578 579 // AUTO-GENERATED DOCUMENTATION AND METHOD. 580 /** 581 * Returns the list of all conversation datasets in the specified project and location. 582 * 583 * <p>Sample code: 584 * 585 * <pre>{@code 586 * // This snippet has been automatically generated and should be regarded as a code template only. 587 * // It will require modifications to work: 588 * // - It may require correct/in-range values for request initialization. 589 * // - It may require specifying regional endpoints when creating the service client as shown in 590 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 591 * try (ConversationDatasetsClient conversationDatasetsClient = 592 * ConversationDatasetsClient.create()) { 593 * ListConversationDatasetsRequest request = 594 * ListConversationDatasetsRequest.newBuilder() 595 * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) 596 * .setPageSize(883849137) 597 * .setPageToken("pageToken873572522") 598 * .build(); 599 * for (ConversationDataset element : 600 * conversationDatasetsClient.listConversationDatasets(request).iterateAll()) { 601 * // doThingsWith(element); 602 * } 603 * } 604 * }</pre> 605 * 606 * @param request The request object containing all of the parameters for the API call. 607 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 608 */ listConversationDatasets( ListConversationDatasetsRequest request)609 public final ListConversationDatasetsPagedResponse listConversationDatasets( 610 ListConversationDatasetsRequest request) { 611 return listConversationDatasetsPagedCallable().call(request); 612 } 613 614 // AUTO-GENERATED DOCUMENTATION AND METHOD. 615 /** 616 * Returns the list of all conversation datasets in the specified project and location. 617 * 618 * <p>Sample code: 619 * 620 * <pre>{@code 621 * // This snippet has been automatically generated and should be regarded as a code template only. 622 * // It will require modifications to work: 623 * // - It may require correct/in-range values for request initialization. 624 * // - It may require specifying regional endpoints when creating the service client as shown in 625 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 626 * try (ConversationDatasetsClient conversationDatasetsClient = 627 * ConversationDatasetsClient.create()) { 628 * ListConversationDatasetsRequest request = 629 * ListConversationDatasetsRequest.newBuilder() 630 * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) 631 * .setPageSize(883849137) 632 * .setPageToken("pageToken873572522") 633 * .build(); 634 * ApiFuture<ConversationDataset> future = 635 * conversationDatasetsClient.listConversationDatasetsPagedCallable().futureCall(request); 636 * // Do something. 637 * for (ConversationDataset element : future.get().iterateAll()) { 638 * // doThingsWith(element); 639 * } 640 * } 641 * }</pre> 642 */ 643 public final UnaryCallable<ListConversationDatasetsRequest, ListConversationDatasetsPagedResponse> listConversationDatasetsPagedCallable()644 listConversationDatasetsPagedCallable() { 645 return stub.listConversationDatasetsPagedCallable(); 646 } 647 648 // AUTO-GENERATED DOCUMENTATION AND METHOD. 649 /** 650 * Returns the list of all conversation datasets in the specified project and location. 651 * 652 * <p>Sample code: 653 * 654 * <pre>{@code 655 * // This snippet has been automatically generated and should be regarded as a code template only. 656 * // It will require modifications to work: 657 * // - It may require correct/in-range values for request initialization. 658 * // - It may require specifying regional endpoints when creating the service client as shown in 659 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 660 * try (ConversationDatasetsClient conversationDatasetsClient = 661 * ConversationDatasetsClient.create()) { 662 * ListConversationDatasetsRequest request = 663 * ListConversationDatasetsRequest.newBuilder() 664 * .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString()) 665 * .setPageSize(883849137) 666 * .setPageToken("pageToken873572522") 667 * .build(); 668 * while (true) { 669 * ListConversationDatasetsResponse response = 670 * conversationDatasetsClient.listConversationDatasetsCallable().call(request); 671 * for (ConversationDataset element : response.getConversationDatasetsList()) { 672 * // doThingsWith(element); 673 * } 674 * String nextPageToken = response.getNextPageToken(); 675 * if (!Strings.isNullOrEmpty(nextPageToken)) { 676 * request = request.toBuilder().setPageToken(nextPageToken).build(); 677 * } else { 678 * break; 679 * } 680 * } 681 * } 682 * }</pre> 683 */ 684 public final UnaryCallable<ListConversationDatasetsRequest, ListConversationDatasetsResponse> listConversationDatasetsCallable()685 listConversationDatasetsCallable() { 686 return stub.listConversationDatasetsCallable(); 687 } 688 689 // AUTO-GENERATED DOCUMENTATION AND METHOD. 690 /** 691 * Deletes the specified conversation dataset. 692 * 693 * <p>This method is a [long-running 694 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 695 * returned `Operation` type has the following method-specific fields: 696 * 697 * <p>- `metadata`: 698 * [DeleteConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.DeleteConversationDatasetOperationMetadata] 699 * - `response`: An [Empty 700 * message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) 701 * 702 * <p>Sample code: 703 * 704 * <pre>{@code 705 * // This snippet has been automatically generated and should be regarded as a code template only. 706 * // It will require modifications to work: 707 * // - It may require correct/in-range values for request initialization. 708 * // - It may require specifying regional endpoints when creating the service client as shown in 709 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 710 * try (ConversationDatasetsClient conversationDatasetsClient = 711 * ConversationDatasetsClient.create()) { 712 * ConversationDatasetName name = 713 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]"); 714 * conversationDatasetsClient.deleteConversationDatasetAsync(name).get(); 715 * } 716 * }</pre> 717 * 718 * @param name Required. The conversation dataset to delete. Format: `projects/<Project 719 * ID>/locations/<Location ID>/conversationDatasets/<Conversation Dataset ID>` 720 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 721 */ 722 public final OperationFuture<Empty, DeleteConversationDatasetOperationMetadata> deleteConversationDatasetAsync(ConversationDatasetName name)723 deleteConversationDatasetAsync(ConversationDatasetName name) { 724 DeleteConversationDatasetRequest request = 725 DeleteConversationDatasetRequest.newBuilder() 726 .setName(name == null ? null : name.toString()) 727 .build(); 728 return deleteConversationDatasetAsync(request); 729 } 730 731 // AUTO-GENERATED DOCUMENTATION AND METHOD. 732 /** 733 * Deletes the specified conversation dataset. 734 * 735 * <p>This method is a [long-running 736 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 737 * returned `Operation` type has the following method-specific fields: 738 * 739 * <p>- `metadata`: 740 * [DeleteConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.DeleteConversationDatasetOperationMetadata] 741 * - `response`: An [Empty 742 * message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) 743 * 744 * <p>Sample code: 745 * 746 * <pre>{@code 747 * // This snippet has been automatically generated and should be regarded as a code template only. 748 * // It will require modifications to work: 749 * // - It may require correct/in-range values for request initialization. 750 * // - It may require specifying regional endpoints when creating the service client as shown in 751 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 752 * try (ConversationDatasetsClient conversationDatasetsClient = 753 * ConversationDatasetsClient.create()) { 754 * String name = 755 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 756 * .toString(); 757 * conversationDatasetsClient.deleteConversationDatasetAsync(name).get(); 758 * } 759 * }</pre> 760 * 761 * @param name Required. The conversation dataset to delete. Format: `projects/<Project 762 * ID>/locations/<Location ID>/conversationDatasets/<Conversation Dataset ID>` 763 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 764 */ 765 public final OperationFuture<Empty, DeleteConversationDatasetOperationMetadata> deleteConversationDatasetAsync(String name)766 deleteConversationDatasetAsync(String name) { 767 DeleteConversationDatasetRequest request = 768 DeleteConversationDatasetRequest.newBuilder().setName(name).build(); 769 return deleteConversationDatasetAsync(request); 770 } 771 772 // AUTO-GENERATED DOCUMENTATION AND METHOD. 773 /** 774 * Deletes the specified conversation dataset. 775 * 776 * <p>This method is a [long-running 777 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 778 * returned `Operation` type has the following method-specific fields: 779 * 780 * <p>- `metadata`: 781 * [DeleteConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.DeleteConversationDatasetOperationMetadata] 782 * - `response`: An [Empty 783 * message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) 784 * 785 * <p>Sample code: 786 * 787 * <pre>{@code 788 * // This snippet has been automatically generated and should be regarded as a code template only. 789 * // It will require modifications to work: 790 * // - It may require correct/in-range values for request initialization. 791 * // - It may require specifying regional endpoints when creating the service client as shown in 792 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 793 * try (ConversationDatasetsClient conversationDatasetsClient = 794 * ConversationDatasetsClient.create()) { 795 * DeleteConversationDatasetRequest request = 796 * DeleteConversationDatasetRequest.newBuilder() 797 * .setName( 798 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 799 * .toString()) 800 * .build(); 801 * conversationDatasetsClient.deleteConversationDatasetAsync(request).get(); 802 * } 803 * }</pre> 804 * 805 * @param request The request object containing all of the parameters for the API call. 806 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 807 */ 808 public final OperationFuture<Empty, DeleteConversationDatasetOperationMetadata> deleteConversationDatasetAsync(DeleteConversationDatasetRequest request)809 deleteConversationDatasetAsync(DeleteConversationDatasetRequest request) { 810 return deleteConversationDatasetOperationCallable().futureCall(request); 811 } 812 813 // AUTO-GENERATED DOCUMENTATION AND METHOD. 814 /** 815 * Deletes the specified conversation dataset. 816 * 817 * <p>This method is a [long-running 818 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 819 * returned `Operation` type has the following method-specific fields: 820 * 821 * <p>- `metadata`: 822 * [DeleteConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.DeleteConversationDatasetOperationMetadata] 823 * - `response`: An [Empty 824 * message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) 825 * 826 * <p>Sample code: 827 * 828 * <pre>{@code 829 * // This snippet has been automatically generated and should be regarded as a code template only. 830 * // It will require modifications to work: 831 * // - It may require correct/in-range values for request initialization. 832 * // - It may require specifying regional endpoints when creating the service client as shown in 833 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 834 * try (ConversationDatasetsClient conversationDatasetsClient = 835 * ConversationDatasetsClient.create()) { 836 * DeleteConversationDatasetRequest request = 837 * DeleteConversationDatasetRequest.newBuilder() 838 * .setName( 839 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 840 * .toString()) 841 * .build(); 842 * OperationFuture<Empty, DeleteConversationDatasetOperationMetadata> future = 843 * conversationDatasetsClient 844 * .deleteConversationDatasetOperationCallable() 845 * .futureCall(request); 846 * // Do something. 847 * future.get(); 848 * } 849 * }</pre> 850 */ 851 public final OperationCallable< 852 DeleteConversationDatasetRequest, Empty, DeleteConversationDatasetOperationMetadata> deleteConversationDatasetOperationCallable()853 deleteConversationDatasetOperationCallable() { 854 return stub.deleteConversationDatasetOperationCallable(); 855 } 856 857 // AUTO-GENERATED DOCUMENTATION AND METHOD. 858 /** 859 * Deletes the specified conversation dataset. 860 * 861 * <p>This method is a [long-running 862 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 863 * returned `Operation` type has the following method-specific fields: 864 * 865 * <p>- `metadata`: 866 * [DeleteConversationDatasetOperationMetadata][google.cloud.dialogflow.v2.DeleteConversationDatasetOperationMetadata] 867 * - `response`: An [Empty 868 * message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) 869 * 870 * <p>Sample code: 871 * 872 * <pre>{@code 873 * // This snippet has been automatically generated and should be regarded as a code template only. 874 * // It will require modifications to work: 875 * // - It may require correct/in-range values for request initialization. 876 * // - It may require specifying regional endpoints when creating the service client as shown in 877 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 878 * try (ConversationDatasetsClient conversationDatasetsClient = 879 * ConversationDatasetsClient.create()) { 880 * DeleteConversationDatasetRequest request = 881 * DeleteConversationDatasetRequest.newBuilder() 882 * .setName( 883 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 884 * .toString()) 885 * .build(); 886 * ApiFuture<Operation> future = 887 * conversationDatasetsClient.deleteConversationDatasetCallable().futureCall(request); 888 * // Do something. 889 * future.get(); 890 * } 891 * }</pre> 892 */ 893 public final UnaryCallable<DeleteConversationDatasetRequest, Operation> deleteConversationDatasetCallable()894 deleteConversationDatasetCallable() { 895 return stub.deleteConversationDatasetCallable(); 896 } 897 898 // AUTO-GENERATED DOCUMENTATION AND METHOD. 899 /** 900 * Import data into the specified conversation dataset. Note that it is not allowed to import data 901 * to a conversation dataset that already has data in it. 902 * 903 * <p>This method is a [long-running 904 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 905 * returned `Operation` type has the following method-specific fields: 906 * 907 * <p>- `metadata`: 908 * [ImportConversationDataOperationMetadata][google.cloud.dialogflow.v2.ImportConversationDataOperationMetadata] 909 * - `response`: 910 * [ImportConversationDataOperationResponse][google.cloud.dialogflow.v2.ImportConversationDataOperationResponse] 911 * 912 * <p>Sample code: 913 * 914 * <pre>{@code 915 * // This snippet has been automatically generated and should be regarded as a code template only. 916 * // It will require modifications to work: 917 * // - It may require correct/in-range values for request initialization. 918 * // - It may require specifying regional endpoints when creating the service client as shown in 919 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 920 * try (ConversationDatasetsClient conversationDatasetsClient = 921 * ConversationDatasetsClient.create()) { 922 * ImportConversationDataRequest request = 923 * ImportConversationDataRequest.newBuilder() 924 * .setName( 925 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 926 * .toString()) 927 * .setInputConfig(InputConfig.newBuilder().build()) 928 * .build(); 929 * ImportConversationDataOperationResponse response = 930 * conversationDatasetsClient.importConversationDataAsync(request).get(); 931 * } 932 * }</pre> 933 * 934 * @param request The request object containing all of the parameters for the API call. 935 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 936 */ 937 public final OperationFuture< 938 ImportConversationDataOperationResponse, ImportConversationDataOperationMetadata> importConversationDataAsync(ImportConversationDataRequest request)939 importConversationDataAsync(ImportConversationDataRequest request) { 940 return importConversationDataOperationCallable().futureCall(request); 941 } 942 943 // AUTO-GENERATED DOCUMENTATION AND METHOD. 944 /** 945 * Import data into the specified conversation dataset. Note that it is not allowed to import data 946 * to a conversation dataset that already has data in it. 947 * 948 * <p>This method is a [long-running 949 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 950 * returned `Operation` type has the following method-specific fields: 951 * 952 * <p>- `metadata`: 953 * [ImportConversationDataOperationMetadata][google.cloud.dialogflow.v2.ImportConversationDataOperationMetadata] 954 * - `response`: 955 * [ImportConversationDataOperationResponse][google.cloud.dialogflow.v2.ImportConversationDataOperationResponse] 956 * 957 * <p>Sample code: 958 * 959 * <pre>{@code 960 * // This snippet has been automatically generated and should be regarded as a code template only. 961 * // It will require modifications to work: 962 * // - It may require correct/in-range values for request initialization. 963 * // - It may require specifying regional endpoints when creating the service client as shown in 964 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 965 * try (ConversationDatasetsClient conversationDatasetsClient = 966 * ConversationDatasetsClient.create()) { 967 * ImportConversationDataRequest request = 968 * ImportConversationDataRequest.newBuilder() 969 * .setName( 970 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 971 * .toString()) 972 * .setInputConfig(InputConfig.newBuilder().build()) 973 * .build(); 974 * OperationFuture< 975 * ImportConversationDataOperationResponse, ImportConversationDataOperationMetadata> 976 * future = 977 * conversationDatasetsClient 978 * .importConversationDataOperationCallable() 979 * .futureCall(request); 980 * // Do something. 981 * ImportConversationDataOperationResponse response = future.get(); 982 * } 983 * }</pre> 984 */ 985 public final OperationCallable< 986 ImportConversationDataRequest, 987 ImportConversationDataOperationResponse, 988 ImportConversationDataOperationMetadata> importConversationDataOperationCallable()989 importConversationDataOperationCallable() { 990 return stub.importConversationDataOperationCallable(); 991 } 992 993 // AUTO-GENERATED DOCUMENTATION AND METHOD. 994 /** 995 * Import data into the specified conversation dataset. Note that it is not allowed to import data 996 * to a conversation dataset that already has data in it. 997 * 998 * <p>This method is a [long-running 999 * operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations). The 1000 * returned `Operation` type has the following method-specific fields: 1001 * 1002 * <p>- `metadata`: 1003 * [ImportConversationDataOperationMetadata][google.cloud.dialogflow.v2.ImportConversationDataOperationMetadata] 1004 * - `response`: 1005 * [ImportConversationDataOperationResponse][google.cloud.dialogflow.v2.ImportConversationDataOperationResponse] 1006 * 1007 * <p>Sample code: 1008 * 1009 * <pre>{@code 1010 * // This snippet has been automatically generated and should be regarded as a code template only. 1011 * // It will require modifications to work: 1012 * // - It may require correct/in-range values for request initialization. 1013 * // - It may require specifying regional endpoints when creating the service client as shown in 1014 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 1015 * try (ConversationDatasetsClient conversationDatasetsClient = 1016 * ConversationDatasetsClient.create()) { 1017 * ImportConversationDataRequest request = 1018 * ImportConversationDataRequest.newBuilder() 1019 * .setName( 1020 * ConversationDatasetName.of("[PROJECT]", "[LOCATION]", "[CONVERSATION_DATASET]") 1021 * .toString()) 1022 * .setInputConfig(InputConfig.newBuilder().build()) 1023 * .build(); 1024 * ApiFuture<Operation> future = 1025 * conversationDatasetsClient.importConversationDataCallable().futureCall(request); 1026 * // Do something. 1027 * Operation response = future.get(); 1028 * } 1029 * }</pre> 1030 */ 1031 public final UnaryCallable<ImportConversationDataRequest, Operation> importConversationDataCallable()1032 importConversationDataCallable() { 1033 return stub.importConversationDataCallable(); 1034 } 1035 1036 // AUTO-GENERATED DOCUMENTATION AND METHOD. 1037 /** 1038 * Lists information about the supported locations for this service. 1039 * 1040 * <p>Sample code: 1041 * 1042 * <pre>{@code 1043 * // This snippet has been automatically generated and should be regarded as a code template only. 1044 * // It will require modifications to work: 1045 * // - It may require correct/in-range values for request initialization. 1046 * // - It may require specifying regional endpoints when creating the service client as shown in 1047 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 1048 * try (ConversationDatasetsClient conversationDatasetsClient = 1049 * ConversationDatasetsClient.create()) { 1050 * ListLocationsRequest request = 1051 * ListLocationsRequest.newBuilder() 1052 * .setName("name3373707") 1053 * .setFilter("filter-1274492040") 1054 * .setPageSize(883849137) 1055 * .setPageToken("pageToken873572522") 1056 * .build(); 1057 * for (Location element : conversationDatasetsClient.listLocations(request).iterateAll()) { 1058 * // doThingsWith(element); 1059 * } 1060 * } 1061 * }</pre> 1062 * 1063 * @param request The request object containing all of the parameters for the API call. 1064 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 1065 */ listLocations(ListLocationsRequest request)1066 public final ListLocationsPagedResponse listLocations(ListLocationsRequest request) { 1067 return listLocationsPagedCallable().call(request); 1068 } 1069 1070 // AUTO-GENERATED DOCUMENTATION AND METHOD. 1071 /** 1072 * Lists information about the supported locations for this service. 1073 * 1074 * <p>Sample code: 1075 * 1076 * <pre>{@code 1077 * // This snippet has been automatically generated and should be regarded as a code template only. 1078 * // It will require modifications to work: 1079 * // - It may require correct/in-range values for request initialization. 1080 * // - It may require specifying regional endpoints when creating the service client as shown in 1081 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 1082 * try (ConversationDatasetsClient conversationDatasetsClient = 1083 * ConversationDatasetsClient.create()) { 1084 * ListLocationsRequest request = 1085 * ListLocationsRequest.newBuilder() 1086 * .setName("name3373707") 1087 * .setFilter("filter-1274492040") 1088 * .setPageSize(883849137) 1089 * .setPageToken("pageToken873572522") 1090 * .build(); 1091 * ApiFuture<Location> future = 1092 * conversationDatasetsClient.listLocationsPagedCallable().futureCall(request); 1093 * // Do something. 1094 * for (Location element : future.get().iterateAll()) { 1095 * // doThingsWith(element); 1096 * } 1097 * } 1098 * }</pre> 1099 */ 1100 public final UnaryCallable<ListLocationsRequest, ListLocationsPagedResponse> listLocationsPagedCallable()1101 listLocationsPagedCallable() { 1102 return stub.listLocationsPagedCallable(); 1103 } 1104 1105 // AUTO-GENERATED DOCUMENTATION AND METHOD. 1106 /** 1107 * Lists information about the supported locations for this service. 1108 * 1109 * <p>Sample code: 1110 * 1111 * <pre>{@code 1112 * // This snippet has been automatically generated and should be regarded as a code template only. 1113 * // It will require modifications to work: 1114 * // - It may require correct/in-range values for request initialization. 1115 * // - It may require specifying regional endpoints when creating the service client as shown in 1116 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 1117 * try (ConversationDatasetsClient conversationDatasetsClient = 1118 * ConversationDatasetsClient.create()) { 1119 * ListLocationsRequest request = 1120 * ListLocationsRequest.newBuilder() 1121 * .setName("name3373707") 1122 * .setFilter("filter-1274492040") 1123 * .setPageSize(883849137) 1124 * .setPageToken("pageToken873572522") 1125 * .build(); 1126 * while (true) { 1127 * ListLocationsResponse response = 1128 * conversationDatasetsClient.listLocationsCallable().call(request); 1129 * for (Location element : response.getLocationsList()) { 1130 * // doThingsWith(element); 1131 * } 1132 * String nextPageToken = response.getNextPageToken(); 1133 * if (!Strings.isNullOrEmpty(nextPageToken)) { 1134 * request = request.toBuilder().setPageToken(nextPageToken).build(); 1135 * } else { 1136 * break; 1137 * } 1138 * } 1139 * } 1140 * }</pre> 1141 */ listLocationsCallable()1142 public final UnaryCallable<ListLocationsRequest, ListLocationsResponse> listLocationsCallable() { 1143 return stub.listLocationsCallable(); 1144 } 1145 1146 // AUTO-GENERATED DOCUMENTATION AND METHOD. 1147 /** 1148 * Gets information about a location. 1149 * 1150 * <p>Sample code: 1151 * 1152 * <pre>{@code 1153 * // This snippet has been automatically generated and should be regarded as a code template only. 1154 * // It will require modifications to work: 1155 * // - It may require correct/in-range values for request initialization. 1156 * // - It may require specifying regional endpoints when creating the service client as shown in 1157 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 1158 * try (ConversationDatasetsClient conversationDatasetsClient = 1159 * ConversationDatasetsClient.create()) { 1160 * GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 1161 * Location response = conversationDatasetsClient.getLocation(request); 1162 * } 1163 * }</pre> 1164 * 1165 * @param request The request object containing all of the parameters for the API call. 1166 * @throws com.google.api.gax.rpc.ApiException if the remote call fails 1167 */ getLocation(GetLocationRequest request)1168 public final Location getLocation(GetLocationRequest request) { 1169 return getLocationCallable().call(request); 1170 } 1171 1172 // AUTO-GENERATED DOCUMENTATION AND METHOD. 1173 /** 1174 * Gets information about a location. 1175 * 1176 * <p>Sample code: 1177 * 1178 * <pre>{@code 1179 * // This snippet has been automatically generated and should be regarded as a code template only. 1180 * // It will require modifications to work: 1181 * // - It may require correct/in-range values for request initialization. 1182 * // - It may require specifying regional endpoints when creating the service client as shown in 1183 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 1184 * try (ConversationDatasetsClient conversationDatasetsClient = 1185 * ConversationDatasetsClient.create()) { 1186 * GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 1187 * ApiFuture<Location> future = 1188 * conversationDatasetsClient.getLocationCallable().futureCall(request); 1189 * // Do something. 1190 * Location response = future.get(); 1191 * } 1192 * }</pre> 1193 */ getLocationCallable()1194 public final UnaryCallable<GetLocationRequest, Location> getLocationCallable() { 1195 return stub.getLocationCallable(); 1196 } 1197 1198 @Override close()1199 public final void close() { 1200 stub.close(); 1201 } 1202 1203 @Override shutdown()1204 public void shutdown() { 1205 stub.shutdown(); 1206 } 1207 1208 @Override isShutdown()1209 public boolean isShutdown() { 1210 return stub.isShutdown(); 1211 } 1212 1213 @Override isTerminated()1214 public boolean isTerminated() { 1215 return stub.isTerminated(); 1216 } 1217 1218 @Override shutdownNow()1219 public void shutdownNow() { 1220 stub.shutdownNow(); 1221 } 1222 1223 @Override awaitTermination(long duration, TimeUnit unit)1224 public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException { 1225 return stub.awaitTermination(duration, unit); 1226 } 1227 1228 public static class ListConversationDatasetsPagedResponse 1229 extends AbstractPagedListResponse< 1230 ListConversationDatasetsRequest, 1231 ListConversationDatasetsResponse, 1232 ConversationDataset, 1233 ListConversationDatasetsPage, 1234 ListConversationDatasetsFixedSizeCollection> { 1235 createAsync( PageContext< ListConversationDatasetsRequest, ListConversationDatasetsResponse, ConversationDataset> context, ApiFuture<ListConversationDatasetsResponse> futureResponse)1236 public static ApiFuture<ListConversationDatasetsPagedResponse> createAsync( 1237 PageContext< 1238 ListConversationDatasetsRequest, 1239 ListConversationDatasetsResponse, 1240 ConversationDataset> 1241 context, 1242 ApiFuture<ListConversationDatasetsResponse> futureResponse) { 1243 ApiFuture<ListConversationDatasetsPage> futurePage = 1244 ListConversationDatasetsPage.createEmptyPage().createPageAsync(context, futureResponse); 1245 return ApiFutures.transform( 1246 futurePage, 1247 input -> new ListConversationDatasetsPagedResponse(input), 1248 MoreExecutors.directExecutor()); 1249 } 1250 ListConversationDatasetsPagedResponse(ListConversationDatasetsPage page)1251 private ListConversationDatasetsPagedResponse(ListConversationDatasetsPage page) { 1252 super(page, ListConversationDatasetsFixedSizeCollection.createEmptyCollection()); 1253 } 1254 } 1255 1256 public static class ListConversationDatasetsPage 1257 extends AbstractPage< 1258 ListConversationDatasetsRequest, 1259 ListConversationDatasetsResponse, 1260 ConversationDataset, 1261 ListConversationDatasetsPage> { 1262 ListConversationDatasetsPage( PageContext< ListConversationDatasetsRequest, ListConversationDatasetsResponse, ConversationDataset> context, ListConversationDatasetsResponse response)1263 private ListConversationDatasetsPage( 1264 PageContext< 1265 ListConversationDatasetsRequest, 1266 ListConversationDatasetsResponse, 1267 ConversationDataset> 1268 context, 1269 ListConversationDatasetsResponse response) { 1270 super(context, response); 1271 } 1272 createEmptyPage()1273 private static ListConversationDatasetsPage createEmptyPage() { 1274 return new ListConversationDatasetsPage(null, null); 1275 } 1276 1277 @Override createPage( PageContext< ListConversationDatasetsRequest, ListConversationDatasetsResponse, ConversationDataset> context, ListConversationDatasetsResponse response)1278 protected ListConversationDatasetsPage createPage( 1279 PageContext< 1280 ListConversationDatasetsRequest, 1281 ListConversationDatasetsResponse, 1282 ConversationDataset> 1283 context, 1284 ListConversationDatasetsResponse response) { 1285 return new ListConversationDatasetsPage(context, response); 1286 } 1287 1288 @Override createPageAsync( PageContext< ListConversationDatasetsRequest, ListConversationDatasetsResponse, ConversationDataset> context, ApiFuture<ListConversationDatasetsResponse> futureResponse)1289 public ApiFuture<ListConversationDatasetsPage> createPageAsync( 1290 PageContext< 1291 ListConversationDatasetsRequest, 1292 ListConversationDatasetsResponse, 1293 ConversationDataset> 1294 context, 1295 ApiFuture<ListConversationDatasetsResponse> futureResponse) { 1296 return super.createPageAsync(context, futureResponse); 1297 } 1298 } 1299 1300 public static class ListConversationDatasetsFixedSizeCollection 1301 extends AbstractFixedSizeCollection< 1302 ListConversationDatasetsRequest, 1303 ListConversationDatasetsResponse, 1304 ConversationDataset, 1305 ListConversationDatasetsPage, 1306 ListConversationDatasetsFixedSizeCollection> { 1307 ListConversationDatasetsFixedSizeCollection( List<ListConversationDatasetsPage> pages, int collectionSize)1308 private ListConversationDatasetsFixedSizeCollection( 1309 List<ListConversationDatasetsPage> pages, int collectionSize) { 1310 super(pages, collectionSize); 1311 } 1312 createEmptyCollection()1313 private static ListConversationDatasetsFixedSizeCollection createEmptyCollection() { 1314 return new ListConversationDatasetsFixedSizeCollection(null, 0); 1315 } 1316 1317 @Override createCollection( List<ListConversationDatasetsPage> pages, int collectionSize)1318 protected ListConversationDatasetsFixedSizeCollection createCollection( 1319 List<ListConversationDatasetsPage> pages, int collectionSize) { 1320 return new ListConversationDatasetsFixedSizeCollection(pages, collectionSize); 1321 } 1322 } 1323 1324 public static class ListLocationsPagedResponse 1325 extends AbstractPagedListResponse< 1326 ListLocationsRequest, 1327 ListLocationsResponse, 1328 Location, 1329 ListLocationsPage, 1330 ListLocationsFixedSizeCollection> { 1331 createAsync( PageContext<ListLocationsRequest, ListLocationsResponse, Location> context, ApiFuture<ListLocationsResponse> futureResponse)1332 public static ApiFuture<ListLocationsPagedResponse> createAsync( 1333 PageContext<ListLocationsRequest, ListLocationsResponse, Location> context, 1334 ApiFuture<ListLocationsResponse> futureResponse) { 1335 ApiFuture<ListLocationsPage> futurePage = 1336 ListLocationsPage.createEmptyPage().createPageAsync(context, futureResponse); 1337 return ApiFutures.transform( 1338 futurePage, 1339 input -> new ListLocationsPagedResponse(input), 1340 MoreExecutors.directExecutor()); 1341 } 1342 ListLocationsPagedResponse(ListLocationsPage page)1343 private ListLocationsPagedResponse(ListLocationsPage page) { 1344 super(page, ListLocationsFixedSizeCollection.createEmptyCollection()); 1345 } 1346 } 1347 1348 public static class ListLocationsPage 1349 extends AbstractPage< 1350 ListLocationsRequest, ListLocationsResponse, Location, ListLocationsPage> { 1351 ListLocationsPage( PageContext<ListLocationsRequest, ListLocationsResponse, Location> context, ListLocationsResponse response)1352 private ListLocationsPage( 1353 PageContext<ListLocationsRequest, ListLocationsResponse, Location> context, 1354 ListLocationsResponse response) { 1355 super(context, response); 1356 } 1357 createEmptyPage()1358 private static ListLocationsPage createEmptyPage() { 1359 return new ListLocationsPage(null, null); 1360 } 1361 1362 @Override createPage( PageContext<ListLocationsRequest, ListLocationsResponse, Location> context, ListLocationsResponse response)1363 protected ListLocationsPage createPage( 1364 PageContext<ListLocationsRequest, ListLocationsResponse, Location> context, 1365 ListLocationsResponse response) { 1366 return new ListLocationsPage(context, response); 1367 } 1368 1369 @Override createPageAsync( PageContext<ListLocationsRequest, ListLocationsResponse, Location> context, ApiFuture<ListLocationsResponse> futureResponse)1370 public ApiFuture<ListLocationsPage> createPageAsync( 1371 PageContext<ListLocationsRequest, ListLocationsResponse, Location> context, 1372 ApiFuture<ListLocationsResponse> futureResponse) { 1373 return super.createPageAsync(context, futureResponse); 1374 } 1375 } 1376 1377 public static class ListLocationsFixedSizeCollection 1378 extends AbstractFixedSizeCollection< 1379 ListLocationsRequest, 1380 ListLocationsResponse, 1381 Location, 1382 ListLocationsPage, 1383 ListLocationsFixedSizeCollection> { 1384 ListLocationsFixedSizeCollection(List<ListLocationsPage> pages, int collectionSize)1385 private ListLocationsFixedSizeCollection(List<ListLocationsPage> pages, int collectionSize) { 1386 super(pages, collectionSize); 1387 } 1388 createEmptyCollection()1389 private static ListLocationsFixedSizeCollection createEmptyCollection() { 1390 return new ListLocationsFixedSizeCollection(null, 0); 1391 } 1392 1393 @Override createCollection( List<ListLocationsPage> pages, int collectionSize)1394 protected ListLocationsFixedSizeCollection createCollection( 1395 List<ListLocationsPage> pages, int collectionSize) { 1396 return new ListLocationsFixedSizeCollection(pages, collectionSize); 1397 } 1398 } 1399 } 1400