This class provides the ability to make remote calls to the backing service through method + * calls that map to API methods. Sample code to get started: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ProductSuiteName name = ProductSuiteName.of("[PRODUCT_SUITE]");
+ * ProductSuite response = cloudProductRegistryReadServiceClient.getProductSuite(name);
+ * }
+ * }
+ *
+ * Note: close() needs to be called on the CloudProductRegistryReadServiceClient object to clean + * up resources such as threads. In the example above, try-with-resources is used, which + * automatically calls close(). + * + *
| Method | + *Description | + *Method Variants | + *
|---|---|---|
GetProductSuite |
+ * Get details of a ProductSuite. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
ListProductSuites |
+ * Lists ProductSuites. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
GetLogicalProduct |
+ * Gets details of a LogicalProduct. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
ListLogicalProducts |
+ * Lists LogicalProducts matching given criteria. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
GetLogicalProductVariant |
+ * Get details of a LogicalProductVariant. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
ListLogicalProductVariants |
+ * Lists LogicalProductVariants matching given criteria. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
LookupEntity |
+ * Look up entities. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
See the individual methods for example code. + * + *
Many parameters require resource names to be formatted in a particular way. To assist with + * these names, this class includes a format method for each type of name, and additionally a parse + * method to extract the individual identifiers contained within names that are returned. + * + *
This class can be customized by passing in a custom instance of + * CloudProductRegistryReadServiceSettings to create(). For example: + * + *
To customize credentials: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * CloudProductRegistryReadServiceSettings cloudProductRegistryReadServiceSettings =
+ * CloudProductRegistryReadServiceSettings.newBuilder()
+ * .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
+ * .build();
+ * CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create(cloudProductRegistryReadServiceSettings);
+ * }
+ *
+ * To customize the endpoint: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * CloudProductRegistryReadServiceSettings cloudProductRegistryReadServiceSettings =
+ * CloudProductRegistryReadServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
+ * CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create(cloudProductRegistryReadServiceSettings);
+ * }
+ *
+ * To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over + * the wire: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * CloudProductRegistryReadServiceSettings cloudProductRegistryReadServiceSettings =
+ * CloudProductRegistryReadServiceSettings.newHttpJsonBuilder().build();
+ * CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create(cloudProductRegistryReadServiceSettings);
+ * }
+ *
+ * Please refer to the GitHub repository's samples for more quickstart code snippets. + */ +@NullMarked +@Generated("by gapic-generator-java") +public class CloudProductRegistryReadServiceClient implements BackgroundResource { + private final @Nullable CloudProductRegistryReadServiceSettings settings; + private final CloudProductRegistryReadServiceStub stub; + + /** Constructs an instance of CloudProductRegistryReadServiceClient with default settings. */ + public static final CloudProductRegistryReadServiceClient create() throws IOException { + return create(CloudProductRegistryReadServiceSettings.newBuilder().build()); + } + + /** + * Constructs an instance of CloudProductRegistryReadServiceClient, using the given settings. The + * channels are created based on the settings passed in, or defaults for any settings that are not + * set. + */ + public static final CloudProductRegistryReadServiceClient create( + CloudProductRegistryReadServiceSettings settings) throws IOException { + return new CloudProductRegistryReadServiceClient(settings); + } + + /** + * Constructs an instance of CloudProductRegistryReadServiceClient, using the given stub for + * making calls. This is for advanced usage - prefer using + * create(CloudProductRegistryReadServiceSettings). + */ + public static final CloudProductRegistryReadServiceClient create( + CloudProductRegistryReadServiceStub stub) { + return new CloudProductRegistryReadServiceClient(stub); + } + + /** + * Constructs an instance of CloudProductRegistryReadServiceClient, using the given settings. This + * is protected so that it is easy to make a subclass, but otherwise, the static factory methods + * should be preferred. + */ + protected CloudProductRegistryReadServiceClient(CloudProductRegistryReadServiceSettings settings) + throws IOException { + this.settings = settings; + this.stub = + ((CloudProductRegistryReadServiceStubSettings) settings.getStubSettings()).createStub(); + } + + protected CloudProductRegistryReadServiceClient(CloudProductRegistryReadServiceStub stub) { + this.settings = null; + this.stub = stub; + } + + public final @Nullable CloudProductRegistryReadServiceSettings getSettings() { + return settings; + } + + public CloudProductRegistryReadServiceStub getStub() { + return stub; + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Get details of a ProductSuite. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ProductSuiteName name = ProductSuiteName.of("[PRODUCT_SUITE]");
+ * ProductSuite response = cloudProductRegistryReadServiceClient.getProductSuite(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the ProductSuite to retrieve. Format:
+ * productSuites/{product_suite}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ProductSuite getProductSuite(@Nullable ProductSuiteName name) {
+ GetProductSuiteRequest request =
+ GetProductSuiteRequest.newBuilder().setName(name == null ? null : name.toString()).build();
+ return getProductSuite(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Get details of a ProductSuite.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * String name = ProductSuiteName.of("[PRODUCT_SUITE]").toString();
+ * ProductSuite response = cloudProductRegistryReadServiceClient.getProductSuite(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the ProductSuite to retrieve. Format:
+ * productSuites/{product_suite}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ProductSuite getProductSuite(String name) {
+ GetProductSuiteRequest request = GetProductSuiteRequest.newBuilder().setName(name).build();
+ return getProductSuite(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Get details of a ProductSuite.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * GetProductSuiteRequest request =
+ * GetProductSuiteRequest.newBuilder()
+ * .setName(ProductSuiteName.of("[PRODUCT_SUITE]").toString())
+ * .build();
+ * ProductSuite response = cloudProductRegistryReadServiceClient.getProductSuite(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ProductSuite getProductSuite(GetProductSuiteRequest request) {
+ return getProductSuiteCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Get details of a ProductSuite.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * GetProductSuiteRequest request =
+ * GetProductSuiteRequest.newBuilder()
+ * .setName(ProductSuiteName.of("[PRODUCT_SUITE]").toString())
+ * .build();
+ * ApiFuture future =
+ * cloudProductRegistryReadServiceClient.getProductSuiteCallable().futureCall(request);
+ * // Do something.
+ * ProductSuite response = future.get();
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListProductSuitesRequest request =
+ * ListProductSuitesRequest.newBuilder()
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * for (ProductSuite element :
+ * cloudProductRegistryReadServiceClient.listProductSuites(request).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListProductSuitesPagedResponse listProductSuites(ListProductSuitesRequest request) {
+ return listProductSuitesPagedCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists ProductSuites.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListProductSuitesRequest request =
+ * ListProductSuitesRequest.newBuilder()
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * ApiFuture future =
+ * cloudProductRegistryReadServiceClient
+ * .listProductSuitesPagedCallable()
+ * .futureCall(request);
+ * // Do something.
+ * for (ProductSuite element : future.get().iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListProductSuitesRequest request =
+ * ListProductSuitesRequest.newBuilder()
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * while (true) {
+ * ListProductSuitesResponse response =
+ * cloudProductRegistryReadServiceClient.listProductSuitesCallable().call(request);
+ * for (ProductSuite element : response.getProductSuitesList()) {
+ * // doThingsWith(element);
+ * }
+ * String nextPageToken = response.getNextPageToken();
+ * if (!Strings.isNullOrEmpty(nextPageToken)) {
+ * request = request.toBuilder().setPageToken(nextPageToken).build();
+ * } else {
+ * break;
+ * }
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * LogicalProductName name = LogicalProductName.of("[LOGICAL_PRODUCT]");
+ * LogicalProduct response = cloudProductRegistryReadServiceClient.getLogicalProduct(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the LogicalProduct to retrieve. Format:
+ * logicalProducts/{logical_product}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final LogicalProduct getLogicalProduct(@Nullable LogicalProductName name) {
+ GetLogicalProductRequest request =
+ GetLogicalProductRequest.newBuilder()
+ .setName(name == null ? null : name.toString())
+ .build();
+ return getLogicalProduct(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Gets details of a LogicalProduct.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * String name = LogicalProductName.of("[LOGICAL_PRODUCT]").toString();
+ * LogicalProduct response = cloudProductRegistryReadServiceClient.getLogicalProduct(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the LogicalProduct to retrieve. Format:
+ * logicalProducts/{logical_product}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final LogicalProduct getLogicalProduct(String name) {
+ GetLogicalProductRequest request = GetLogicalProductRequest.newBuilder().setName(name).build();
+ return getLogicalProduct(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Gets details of a LogicalProduct.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * GetLogicalProductRequest request =
+ * GetLogicalProductRequest.newBuilder()
+ * .setName(LogicalProductName.of("[LOGICAL_PRODUCT]").toString())
+ * .build();
+ * LogicalProduct response = cloudProductRegistryReadServiceClient.getLogicalProduct(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final LogicalProduct getLogicalProduct(GetLogicalProductRequest request) {
+ return getLogicalProductCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Gets details of a LogicalProduct.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * GetLogicalProductRequest request =
+ * GetLogicalProductRequest.newBuilder()
+ * .setName(LogicalProductName.of("[LOGICAL_PRODUCT]").toString())
+ * .build();
+ * ApiFuture future =
+ * cloudProductRegistryReadServiceClient.getLogicalProductCallable().futureCall(request);
+ * // Do something.
+ * LogicalProduct response = future.get();
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListLogicalProductsRequest request =
+ * ListLogicalProductsRequest.newBuilder()
+ * .setFilter("filter-1274492040")
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * for (LogicalProduct element :
+ * cloudProductRegistryReadServiceClient.listLogicalProducts(request).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListLogicalProductsPagedResponse listLogicalProducts(
+ ListLogicalProductsRequest request) {
+ return listLogicalProductsPagedCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists LogicalProducts matching given criteria.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListLogicalProductsRequest request =
+ * ListLogicalProductsRequest.newBuilder()
+ * .setFilter("filter-1274492040")
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * ApiFuture future =
+ * cloudProductRegistryReadServiceClient
+ * .listLogicalProductsPagedCallable()
+ * .futureCall(request);
+ * // Do something.
+ * for (LogicalProduct element : future.get().iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListLogicalProductsRequest request =
+ * ListLogicalProductsRequest.newBuilder()
+ * .setFilter("filter-1274492040")
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * while (true) {
+ * ListLogicalProductsResponse response =
+ * cloudProductRegistryReadServiceClient.listLogicalProductsCallable().call(request);
+ * for (LogicalProduct element : response.getLogicalProductsList()) {
+ * // doThingsWith(element);
+ * }
+ * String nextPageToken = response.getNextPageToken();
+ * if (!Strings.isNullOrEmpty(nextPageToken)) {
+ * request = request.toBuilder().setPageToken(nextPageToken).build();
+ * } else {
+ * break;
+ * }
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * LogicalProductVariantName name =
+ * LogicalProductVariantName.of("[LOGICAL_PRODUCT]", "[VARIANT]");
+ * LogicalProductVariant response =
+ * cloudProductRegistryReadServiceClient.getLogicalProductVariant(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the LogicalProductVariant to retrieve. Format:
+ * logicalProducts/{logical_product}/variants/{variant}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final LogicalProductVariant getLogicalProductVariant(
+ @Nullable LogicalProductVariantName name) {
+ GetLogicalProductVariantRequest request =
+ GetLogicalProductVariantRequest.newBuilder()
+ .setName(name == null ? null : name.toString())
+ .build();
+ return getLogicalProductVariant(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Get details of a LogicalProductVariant.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * String name = LogicalProductVariantName.of("[LOGICAL_PRODUCT]", "[VARIANT]").toString();
+ * LogicalProductVariant response =
+ * cloudProductRegistryReadServiceClient.getLogicalProductVariant(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the LogicalProductVariant to retrieve. Format:
+ * logicalProducts/{logical_product}/variants/{variant}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final LogicalProductVariant getLogicalProductVariant(String name) {
+ GetLogicalProductVariantRequest request =
+ GetLogicalProductVariantRequest.newBuilder().setName(name).build();
+ return getLogicalProductVariant(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Get details of a LogicalProductVariant.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * GetLogicalProductVariantRequest request =
+ * GetLogicalProductVariantRequest.newBuilder()
+ * .setName(LogicalProductVariantName.of("[LOGICAL_PRODUCT]", "[VARIANT]").toString())
+ * .build();
+ * LogicalProductVariant response =
+ * cloudProductRegistryReadServiceClient.getLogicalProductVariant(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final LogicalProductVariant getLogicalProductVariant(
+ GetLogicalProductVariantRequest request) {
+ return getLogicalProductVariantCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Get details of a LogicalProductVariant.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * GetLogicalProductVariantRequest request =
+ * GetLogicalProductVariantRequest.newBuilder()
+ * .setName(LogicalProductVariantName.of("[LOGICAL_PRODUCT]", "[VARIANT]").toString())
+ * .build();
+ * ApiFuture future =
+ * cloudProductRegistryReadServiceClient
+ * .getLogicalProductVariantCallable()
+ * .futureCall(request);
+ * // Do something.
+ * LogicalProductVariant response = future.get();
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * LogicalProductName parent = LogicalProductName.of("[LOGICAL_PRODUCT]");
+ * for (LogicalProductVariant element :
+ * cloudProductRegistryReadServiceClient.listLogicalProductVariants(parent).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param parent Required. Parent logical product id. Format: logicalProducts/{logical_product}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListLogicalProductVariantsPagedResponse listLogicalProductVariants(
+ @Nullable LogicalProductName parent) {
+ ListLogicalProductVariantsRequest request =
+ ListLogicalProductVariantsRequest.newBuilder()
+ .setParent(parent == null ? null : parent.toString())
+ .build();
+ return listLogicalProductVariants(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists LogicalProductVariants matching given criteria.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * String parent = LogicalProductName.of("[LOGICAL_PRODUCT]").toString();
+ * for (LogicalProductVariant element :
+ * cloudProductRegistryReadServiceClient.listLogicalProductVariants(parent).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param parent Required. Parent logical product id. Format: logicalProducts/{logical_product}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListLogicalProductVariantsPagedResponse listLogicalProductVariants(String parent) {
+ ListLogicalProductVariantsRequest request =
+ ListLogicalProductVariantsRequest.newBuilder().setParent(parent).build();
+ return listLogicalProductVariants(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists LogicalProductVariants matching given criteria.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListLogicalProductVariantsRequest request =
+ * ListLogicalProductVariantsRequest.newBuilder()
+ * .setParent(LogicalProductName.of("[LOGICAL_PRODUCT]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * for (LogicalProductVariant element :
+ * cloudProductRegistryReadServiceClient.listLogicalProductVariants(request).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListLogicalProductVariantsPagedResponse listLogicalProductVariants(
+ ListLogicalProductVariantsRequest request) {
+ return listLogicalProductVariantsPagedCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists LogicalProductVariants matching given criteria.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListLogicalProductVariantsRequest request =
+ * ListLogicalProductVariantsRequest.newBuilder()
+ * .setParent(LogicalProductName.of("[LOGICAL_PRODUCT]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * ApiFuture future =
+ * cloudProductRegistryReadServiceClient
+ * .listLogicalProductVariantsPagedCallable()
+ * .futureCall(request);
+ * // Do something.
+ * for (LogicalProductVariant element : future.get().iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallable<
+ ListLogicalProductVariantsRequest, ListLogicalProductVariantsPagedResponse>
+ listLogicalProductVariantsPagedCallable() {
+ return stub.listLogicalProductVariantsPagedCallable();
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists LogicalProductVariants matching given criteria.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ListLogicalProductVariantsRequest request =
+ * ListLogicalProductVariantsRequest.newBuilder()
+ * .setParent(LogicalProductName.of("[LOGICAL_PRODUCT]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * while (true) {
+ * ListLogicalProductVariantsResponse response =
+ * cloudProductRegistryReadServiceClient
+ * .listLogicalProductVariantsCallable()
+ * .call(request);
+ * for (LogicalProductVariant element : response.getLogicalProductVariantsList()) {
+ * // doThingsWith(element);
+ * }
+ * String nextPageToken = response.getNextPageToken();
+ * if (!Strings.isNullOrEmpty(nextPageToken)) {
+ * request = request.toBuilder().setPageToken(nextPageToken).build();
+ * } else {
+ * break;
+ * }
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * LookupEntityRequest request =
+ * LookupEntityRequest.newBuilder().setLookupUri("lookupUri1150318994").build();
+ * LookupEntityResponse response = cloudProductRegistryReadServiceClient.lookupEntity(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final LookupEntityResponse lookupEntity(LookupEntityRequest request) {
+ return lookupEntityCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Look up entities.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * LookupEntityRequest request =
+ * LookupEntityRequest.newBuilder().setLookupUri("lookupUri1150318994").build();
+ * ApiFuture future =
+ * cloudProductRegistryReadServiceClient.lookupEntityCallable().futureCall(request);
+ * // Do something.
+ * LookupEntityResponse response = future.get();
+ * }
+ * }
+ */
+ public final UnaryCallableThe default instance has everything set to sensible defaults: + * + *
The builder of this class is recursive, so contained classes are themselves builders. When + * build() is called, the tree of builders is called to create the complete settings object. + * + *
For example, to set the + * [RetrySettings](https://cloud.google.com/java/docs/reference/gax/latest/com.google.api.gax.retrying.RetrySettings) + * of getProductSuite: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * CloudProductRegistryReadServiceSettings.Builder cloudProductRegistryReadServiceSettingsBuilder =
+ * CloudProductRegistryReadServiceSettings.newBuilder();
+ * cloudProductRegistryReadServiceSettingsBuilder
+ * .getProductSuiteSettings()
+ * .setRetrySettings(
+ * cloudProductRegistryReadServiceSettingsBuilder
+ * .getProductSuiteSettings()
+ * .getRetrySettings()
+ * .toBuilder()
+ * .setInitialRetryDelayDuration(Duration.ofSeconds(1))
+ * .setInitialRpcTimeoutDuration(Duration.ofSeconds(5))
+ * .setMaxAttempts(5)
+ * .setMaxRetryDelayDuration(Duration.ofSeconds(30))
+ * .setMaxRpcTimeoutDuration(Duration.ofSeconds(60))
+ * .setRetryDelayMultiplier(1.3)
+ * .setRpcTimeoutMultiplier(1.5)
+ * .setTotalTimeoutDuration(Duration.ofSeconds(300))
+ * .build());
+ * CloudProductRegistryReadServiceSettings cloudProductRegistryReadServiceSettings =
+ * cloudProductRegistryReadServiceSettingsBuilder.build();
+ * }
+ *
+ * Please refer to the [Client Side Retry
+ * Guide](https://docs.cloud.google.com/java/docs/client-retries) for additional support in setting
+ * retries.
+ */
+@NullMarked
+@Generated("by gapic-generator-java")
+public class CloudProductRegistryReadServiceSettings
+ extends ClientSettingsNote: This method does not support applying settings to streaming methods.
+ */
+ public Builder applyToAllUnaryMethods(
+ ApiFunction The interfaces provided are listed below, along with usage samples.
+ *
+ * ======================= CloudProductRegistryReadServiceClient =======================
+ *
+ * Service Description: Cloud Product Registry Read Service provides capabilities to access all
+ * first and third party Google Cloud products.
+ *
+ * Sample for CloudProductRegistryReadServiceClient:
+ *
+ * This class is for advanced usage and reflects the underlying API directly.
+ */
+@NullMarked
+@Generated("by gapic-generator-java")
+public abstract class CloudProductRegistryReadServiceStub implements BackgroundResource {
+
+ public UnaryCallable The default instance has everything set to sensible defaults:
+ *
+ * The builder of this class is recursive, so contained classes are themselves builders. When
+ * build() is called, the tree of builders is called to create the complete settings object.
+ *
+ * For example, to set the
+ * [RetrySettings](https://cloud.google.com/java/docs/reference/gax/latest/com.google.api.gax.retrying.RetrySettings)
+ * of getProductSuite:
+ *
+ * Note: This method does not support applying settings to streaming methods.
+ */
+ public Builder applyToAllUnaryMethods(
+ ApiFunction This class is for advanced usage.
+ */
+@NullMarked
+@Generated("by gapic-generator-java")
+public class GrpcCloudProductRegistryReadServiceCallableFactory implements GrpcStubCallableFactory {
+
+ @Override
+ public This class is for advanced usage and reflects the underlying API directly.
+ */
+@NullMarked
+@Generated("by gapic-generator-java")
+public class GrpcCloudProductRegistryReadServiceStub extends CloudProductRegistryReadServiceStub {
+ private static final MethodDescriptor This class is for advanced usage.
+ */
+@NullMarked
+@Generated("by gapic-generator-java")
+public class HttpJsonCloudProductRegistryReadServiceCallableFactory
+ implements HttpJsonStubCallableFactory This class is for advanced usage and reflects the underlying API directly.
+ */
+@NullMarked
+@Generated("by gapic-generator-java")
+public class HttpJsonCloudProductRegistryReadServiceStub
+ extends CloudProductRegistryReadServiceStub {
+ private static final TypeRegistry typeRegistry = TypeRegistry.newBuilder().build();
+
+ private static final ApiMethodDescriptor{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (CloudProductRegistryReadServiceClient cloudProductRegistryReadServiceClient =
+ * CloudProductRegistryReadServiceClient.create()) {
+ * ProductSuiteName name = ProductSuiteName.of("[PRODUCT_SUITE]");
+ * ProductSuite response = cloudProductRegistryReadServiceClient.getProductSuite(name);
+ * }
+ * }
+ */
+@Generated("by gapic-generator-java")
+package com.google.cloud.productregistry.v1;
+
+import javax.annotation.Generated;
diff --git a/java-productregistry/google-cloud-productregistry/src/main/java/com/google/cloud/productregistry/v1/stub/CloudProductRegistryReadServiceStub.java b/java-productregistry/google-cloud-productregistry/src/main/java/com/google/cloud/productregistry/v1/stub/CloudProductRegistryReadServiceStub.java
new file mode 100644
index 000000000000..574d9576e2e5
--- /dev/null
+++ b/java-productregistry/google-cloud-productregistry/src/main/java/com/google/cloud/productregistry/v1/stub/CloudProductRegistryReadServiceStub.java
@@ -0,0 +1,103 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.google.cloud.productregistry.v1.stub;
+
+import static com.google.cloud.productregistry.v1.CloudProductRegistryReadServiceClient.ListLogicalProductVariantsPagedResponse;
+import static com.google.cloud.productregistry.v1.CloudProductRegistryReadServiceClient.ListLogicalProductsPagedResponse;
+import static com.google.cloud.productregistry.v1.CloudProductRegistryReadServiceClient.ListProductSuitesPagedResponse;
+
+import com.google.api.gax.core.BackgroundResource;
+import com.google.api.gax.rpc.UnaryCallable;
+import com.google.cloud.productregistry.v1.GetLogicalProductRequest;
+import com.google.cloud.productregistry.v1.GetLogicalProductVariantRequest;
+import com.google.cloud.productregistry.v1.GetProductSuiteRequest;
+import com.google.cloud.productregistry.v1.ListLogicalProductVariantsRequest;
+import com.google.cloud.productregistry.v1.ListLogicalProductVariantsResponse;
+import com.google.cloud.productregistry.v1.ListLogicalProductsRequest;
+import com.google.cloud.productregistry.v1.ListLogicalProductsResponse;
+import com.google.cloud.productregistry.v1.ListProductSuitesRequest;
+import com.google.cloud.productregistry.v1.ListProductSuitesResponse;
+import com.google.cloud.productregistry.v1.LogicalProduct;
+import com.google.cloud.productregistry.v1.LogicalProductVariant;
+import com.google.cloud.productregistry.v1.LookupEntityRequest;
+import com.google.cloud.productregistry.v1.LookupEntityResponse;
+import com.google.cloud.productregistry.v1.ProductSuite;
+import javax.annotation.Generated;
+import org.jspecify.annotations.NullMarked;
+
+// AUTO-GENERATED DOCUMENTATION AND CLASS.
+/**
+ * Base stub class for the CloudProductRegistryReadService service API.
+ *
+ *
+ *
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * CloudProductRegistryReadServiceStubSettings.Builder
+ * cloudProductRegistryReadServiceSettingsBuilder =
+ * CloudProductRegistryReadServiceStubSettings.newBuilder();
+ * cloudProductRegistryReadServiceSettingsBuilder
+ * .getProductSuiteSettings()
+ * .setRetrySettings(
+ * cloudProductRegistryReadServiceSettingsBuilder
+ * .getProductSuiteSettings()
+ * .getRetrySettings()
+ * .toBuilder()
+ * .setInitialRetryDelayDuration(Duration.ofSeconds(1))
+ * .setInitialRpcTimeoutDuration(Duration.ofSeconds(5))
+ * .setMaxAttempts(5)
+ * .setMaxRetryDelayDuration(Duration.ofSeconds(30))
+ * .setMaxRpcTimeoutDuration(Duration.ofSeconds(60))
+ * .setRetryDelayMultiplier(1.3)
+ * .setRpcTimeoutMultiplier(1.5)
+ * .setTotalTimeoutDuration(Duration.ofSeconds(300))
+ * .build());
+ * CloudProductRegistryReadServiceStubSettings cloudProductRegistryReadServiceSettings =
+ * cloudProductRegistryReadServiceSettingsBuilder.build();
+ * }
+ *
+ * Please refer to the [Client Side Retry
+ * Guide](https://docs.cloud.google.com/java/docs/client-retries) for additional support in setting
+ * retries.
+ */
+@NullMarked
+@Generated("by gapic-generator-java")
+@SuppressWarnings("CanonicalDuration")
+public class CloudProductRegistryReadServiceStubSettings
+ extends StubSettings