From 6f58655d78b0f61819f885e21f7bee616771950d Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Mon, 4 May 2020 12:56:40 -0700 Subject: [PATCH] feat(v1beta1)!: add resource names and switch to gapic v2 configuration (#49) * chore: enable gapicv2 and annotate protos for recommendationengine/v1beta1 API Committer: @miraleung PiperOrigin-RevId: 309426927 Source-Author: Google APIs Source-Date: Fri May 1 10:08:56 2020 -0700 Source-Repo: googleapis/googleapis Source-Sha: aaff764c185e18a6c73227357c3df5fa60fec85a Source-Link: https://github.com/googleapis/googleapis/commit/aaff764c185e18a6c73227357c3df5fa60fec85a * chore: allow breaking resource name changes Co-authored-by: Jeff Ching --- .../clirr-ignored-differences.xml | 50 + .../v1beta1/CatalogServiceClient.java | 766 ++++++++------- .../v1beta1/CatalogServiceSettings.java | 84 +- .../PredictionApiKeyRegistryClient.java | 416 ++++---- .../PredictionApiKeyRegistrySettings.java | 36 +- .../v1beta1/PredictionServiceClient.java | 199 ++-- .../v1beta1/PredictionServiceSettings.java | 2 +- .../v1beta1/UserEventServiceClient.java | 916 ++++++++++-------- .../v1beta1/UserEventServiceSettings.java | 68 +- .../v1beta1/package-info.java | 22 +- .../v1beta1/stub/CatalogServiceStub.java | 30 +- .../stub/CatalogServiceStubSettings.java | 164 ++-- .../v1beta1/stub/GrpcCatalogServiceStub.java | 162 ++-- .../GrpcPredictionApiKeyRegistryStub.java | 76 +- .../stub/GrpcUserEventServiceStub.java | 160 +-- .../stub/PredictionApiKeyRegistryStub.java | 12 +- .../PredictionApiKeyRegistryStubSettings.java | 72 +- .../stub/PredictionServiceStubSettings.java | 2 +- .../v1beta1/stub/UserEventServiceStub.java | 34 +- .../stub/UserEventServiceStubSettings.java | 144 +-- .../v1beta1/CatalogServiceClientTest.java | 255 +++-- .../PredictionApiKeyRegistryClientTest.java | 132 ++- .../v1beta1/PredictionServiceClientTest.java | 20 +- .../v1beta1/UserEventServiceClientTest.java | 274 +++--- .../v1beta1/CatalogServiceOuterClass.java | 157 +-- .../v1beta1/CollectUserEventRequest.java | 108 ++- .../CollectUserEventRequestOrBuilder.java | 30 +- .../v1beta1/CreateCatalogItemRequest.java | 28 +- .../CreateCatalogItemRequestOrBuilder.java | 8 +- ...tePredictionApiKeyRegistrationRequest.java | 52 +- ...ionApiKeyRegistrationRequestOrBuilder.java | 14 +- .../v1beta1/DeleteCatalogItemRequest.java | 28 +- .../DeleteCatalogItemRequestOrBuilder.java | 8 +- ...tePredictionApiKeyRegistrationRequest.java | 28 +- ...ionApiKeyRegistrationRequestOrBuilder.java | 8 +- .../v1beta1/GetCatalogItemRequest.java | 28 +- .../GetCatalogItemRequestOrBuilder.java | 8 +- .../recommendationengine/v1beta1/Import.java | 127 +-- .../v1beta1/ImportCatalogItemsRequest.java | 28 +- .../ImportCatalogItemsRequestOrBuilder.java | 8 +- .../v1beta1/ImportUserEventsRequest.java | 49 +- .../ImportUserEventsRequestOrBuilder.java | 14 +- .../v1beta1/ListCatalogItemsRequest.java | 28 +- .../ListCatalogItemsRequestOrBuilder.java | 8 +- ...tPredictionApiKeyRegistrationsRequest.java | 28 +- ...onApiKeyRegistrationsRequestOrBuilder.java | 8 +- .../v1beta1/ListUserEventsRequest.java | 28 +- .../ListUserEventsRequestOrBuilder.java | 8 +- .../v1beta1/PredictRequest.java | 28 +- .../v1beta1/PredictRequestOrBuilder.java | 8 +- .../PredictionApikeyRegistryService.java | 115 ++- .../v1beta1/PredictionServiceOuterClass.java | 100 +- .../v1beta1/PurgeUserEventsRequest.java | 28 +- .../PurgeUserEventsRequestOrBuilder.java | 8 +- .../v1beta1/UpdateCatalogItemRequest.java | 64 +- .../UpdateCatalogItemRequestOrBuilder.java | 17 +- .../v1beta1/UserEventServiceOuterClass.java | 151 +-- .../v1beta1/WriteUserEventRequest.java | 28 +- .../WriteUserEventRequestOrBuilder.java | 8 +- .../RecommendationengineResources.java | 78 ++ .../v1beta1/catalog_service.proto | 57 +- .../recommendationengine/v1beta1/import.proto | 22 +- .../prediction_apikey_registry_service.proto | 45 +- .../v1beta1/prediction_service.proto | 15 +- .../recommendationengine_resources.proto | 46 + .../v1beta1/user_event_service.proto | 58 +- synth.metadata | 6 +- 67 files changed, 3286 insertions(+), 2531 deletions(-) create mode 100644 google-cloud-recommendations-ai/clirr-ignored-differences.xml create mode 100644 proto-google-cloud-recommendations-ai-v1beta1/src/main/java/google/cloud/recommendationengine/v1beta1/RecommendationengineResources.java create mode 100644 proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto diff --git a/google-cloud-recommendations-ai/clirr-ignored-differences.xml b/google-cloud-recommendations-ai/clirr-ignored-differences.xml new file mode 100644 index 00000000..3cc91795 --- /dev/null +++ b/google-cloud-recommendations-ai/clirr-ignored-differences.xml @@ -0,0 +1,50 @@ + + + + + + 7002 + com/google/cloud/recommendationengine/v1beta1/CatalogServiceClient + java.lang.String format*Name(*) + + + 7002 + com/google/cloud/recommendationengine/v1beta1/CatalogServiceClient + java.lang.String parse*Name(*) + + + 7002 + com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClient + java.lang.String format*Name(*) + + + 7002 + com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClient + java.lang.String parse*Name(*) + + + 7002 + com/google/cloud/recommendationengine/v1beta1/PredictionServiceClient + java.lang.String format*Name(*) + + + 7002 + com/google/cloud/recommendationengine/v1beta1/PredictionServiceClient + java.lang.String parse*Name(*) + + + 7002 + com/google/cloud/recommendationengine/v1beta1/UserEventServiceClient + java.lang.String format*Name(*) + + + 7002 + com/google/cloud/recommendationengine/v1beta1/UserEventServiceClient + java.lang.String parse*Name(*) + + + 7004 + com/google/cloud/recommendationengine/v1beta1/CatalogServiceClient + com.google.cloud.recommendationengine.v1beta1.CatalogItem updateCatalogItem(java.lang.String, com.google.cloud.recommendationengine.v1beta1.CatalogItem) + + diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceClient.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceClient.java index 8f252ca6..20b7abc7 100644 --- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceClient.java +++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceClient.java @@ -27,13 +27,13 @@ import com.google.api.gax.rpc.OperationCallable; import com.google.api.gax.rpc.PageContext; import com.google.api.gax.rpc.UnaryCallable; -import com.google.api.pathtemplate.PathTemplate; import com.google.cloud.recommendationengine.v1beta1.stub.CatalogServiceStub; import com.google.cloud.recommendationengine.v1beta1.stub.CatalogServiceStubSettings; import com.google.common.util.concurrent.MoreExecutors; import com.google.longrunning.Operation; import com.google.longrunning.OperationsClient; import com.google.protobuf.Empty; +import com.google.protobuf.FieldMask; import java.io.IOException; import java.util.List; import java.util.concurrent.TimeUnit; @@ -49,9 +49,8 @@ *
  * 
  * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
- *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
- *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
- *   CatalogItem response = catalogServiceClient.createCatalogItem(formattedParent, catalogItem);
+ *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+ *   catalogServiceClient.deleteCatalogItem(name);
  * }
  * 
  * 
@@ -113,175 +112,364 @@ public class CatalogServiceClient implements BackgroundResource { private final CatalogServiceStub stub; private final OperationsClient operationsClient; - private static final PathTemplate CATALOG_PATH_TEMPLATE = - PathTemplate.createWithoutUrlEncoding( - "projects/{project}/locations/{location}/catalogs/{catalog}"); - - private static final PathTemplate CATALOG_ITEM_PATH_PATH_TEMPLATE = - PathTemplate.createWithoutUrlEncoding( - "projects/{project}/locations/{location}/catalogs/{catalog}/catalogItems/{catalog_item_path=**}"); + /** Constructs an instance of CatalogServiceClient with default settings. */ + public static final CatalogServiceClient create() throws IOException { + return create(CatalogServiceSettings.newBuilder().build()); + } /** - * Formats a string containing the fully-qualified path to represent a catalog resource. - * - * @deprecated Use the {@link CatalogName} class instead. + * Constructs an instance of CatalogServiceClient, using the given settings. The channels are + * created based on the settings passed in, or defaults for any settings that are not set. */ - @Deprecated - public static final String formatCatalogName(String project, String location, String catalog) { - return CATALOG_PATH_TEMPLATE.instantiate( - "project", project, - "location", location, - "catalog", catalog); + public static final CatalogServiceClient create(CatalogServiceSettings settings) + throws IOException { + return new CatalogServiceClient(settings); } /** - * Formats a string containing the fully-qualified path to represent a catalog_item_path resource. - * - * @deprecated Use the {@link CatalogItemPathName} class instead. + * Constructs an instance of CatalogServiceClient, using the given stub for making calls. This is + * for advanced usage - prefer to use CatalogServiceSettings}. */ - @Deprecated - public static final String formatCatalogItemPathName( - String project, String location, String catalog, String catalogItemPath) { - return CATALOG_ITEM_PATH_PATH_TEMPLATE.instantiate( - "project", project, - "location", location, - "catalog", catalog, - "catalog_item_path", catalogItemPath); + @BetaApi("A restructuring of stub classes is planned, so this may break in the future") + public static final CatalogServiceClient create(CatalogServiceStub stub) { + return new CatalogServiceClient(stub); } /** - * Parses the project from the given fully-qualified path which represents a catalog resource. - * - * @deprecated Use the {@link CatalogName} class instead. + * Constructs an instance of CatalogServiceClient, 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. */ - @Deprecated - public static final String parseProjectFromCatalogName(String catalogName) { - return CATALOG_PATH_TEMPLATE.parse(catalogName).get("project"); + protected CatalogServiceClient(CatalogServiceSettings settings) throws IOException { + this.settings = settings; + this.stub = ((CatalogServiceStubSettings) settings.getStubSettings()).createStub(); + this.operationsClient = OperationsClient.create(this.stub.getOperationsStub()); + } + + @BetaApi("A restructuring of stub classes is planned, so this may break in the future") + protected CatalogServiceClient(CatalogServiceStub stub) { + this.settings = null; + this.stub = stub; + this.operationsClient = OperationsClient.create(this.stub.getOperationsStub()); + } + + public final CatalogServiceSettings getSettings() { + return settings; + } + + @BetaApi("A restructuring of stub classes is planned, so this may break in the future") + public CatalogServiceStub getStub() { + return stub; } /** - * Parses the location from the given fully-qualified path which represents a catalog resource. - * - * @deprecated Use the {@link CatalogName} class instead. + * Returns the OperationsClient that can be used to query the status of a long-running operation + * returned by another API method call. */ - @Deprecated - public static final String parseLocationFromCatalogName(String catalogName) { - return CATALOG_PATH_TEMPLATE.parse(catalogName).get("location"); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationsClient getOperationsClient() { + return operationsClient; } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Parses the catalog from the given fully-qualified path which represents a catalog resource. + * Deletes a catalog item. + * + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   catalogServiceClient.deleteCatalogItem(name);
+   * }
+   * 
* - * @deprecated Use the {@link CatalogName} class instead. + * @param name Required. Full resource name of catalog item, such as + * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". + * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - @Deprecated - public static final String parseCatalogFromCatalogName(String catalogName) { - return CATALOG_PATH_TEMPLATE.parse(catalogName).get("catalog"); + public final void deleteCatalogItem(CatalogItemPathName name) { + DeleteCatalogItemRequest request = + DeleteCatalogItemRequest.newBuilder() + .setName(name == null ? null : name.toString()) + .build(); + deleteCatalogItem(request); } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Parses the project from the given fully-qualified path which represents a catalog_item_path - * resource. + * Deletes a catalog item. * - * @deprecated Use the {@link CatalogItemPathName} class instead. + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   catalogServiceClient.deleteCatalogItem(name.toString());
+   * }
+   * 
+ * + * @param name Required. Full resource name of catalog item, such as + * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". + * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - @Deprecated - public static final String parseProjectFromCatalogItemPathName(String catalogItemPathName) { - return CATALOG_ITEM_PATH_PATH_TEMPLATE.parse(catalogItemPathName).get("project"); + public final void deleteCatalogItem(String name) { + DeleteCatalogItemRequest request = DeleteCatalogItemRequest.newBuilder().setName(name).build(); + deleteCatalogItem(request); } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Parses the location from the given fully-qualified path which represents a catalog_item_path - * resource. + * Deletes a catalog item. + * + *

Sample code: * - * @deprecated Use the {@link CatalogItemPathName} class instead. + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   DeleteCatalogItemRequest request = DeleteCatalogItemRequest.newBuilder()
+   *     .setName(name.toString())
+   *     .build();
+   *   catalogServiceClient.deleteCatalogItem(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 */ - @Deprecated - public static final String parseLocationFromCatalogItemPathName(String catalogItemPathName) { - return CATALOG_ITEM_PATH_PATH_TEMPLATE.parse(catalogItemPathName).get("location"); + public final void deleteCatalogItem(DeleteCatalogItemRequest request) { + deleteCatalogItemCallable().call(request); } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Parses the catalog from the given fully-qualified path which represents a catalog_item_path - * resource. + * Deletes a catalog item. * - * @deprecated Use the {@link CatalogItemPathName} class instead. + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   DeleteCatalogItemRequest request = DeleteCatalogItemRequest.newBuilder()
+   *     .setName(name.toString())
+   *     .build();
+   *   ApiFuture<Void> future = catalogServiceClient.deleteCatalogItemCallable().futureCall(request);
+   *   // Do something
+   *   future.get();
+   * }
+   * 
*/ - @Deprecated - public static final String parseCatalogFromCatalogItemPathName(String catalogItemPathName) { - return CATALOG_ITEM_PATH_PATH_TEMPLATE.parse(catalogItemPathName).get("catalog"); + public final UnaryCallable deleteCatalogItemCallable() { + return stub.deleteCatalogItemCallable(); } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Parses the catalog_item_path from the given fully-qualified path which represents a - * catalog_item_path resource. + * Bulk import of multiple catalog items. Request processing may be synchronous. No partial + * updating supported. Non-existing items will be created. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully updated. * - * @deprecated Use the {@link CatalogItemPathName} class instead. + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   String requestId = "";
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
+   *   ImportCatalogItemsResponse response = catalogServiceClient.importCatalogItemsAsync(parent, requestId, inputConfig, errorsConfig).get();
+   * }
+   * 
+ * + * @param parent Required. "projects/1234/locations/global/catalogs/default_catalog" + * @param requestId Optional. Unique identifier provided by client, within the ancestor dataset + * scope. Ensures idempotency and used for request deduplication. Server-generated if + * unspecified. Up to 128 characters long. This is returned as + * google.longrunning.Operation.name in the response. + * @param inputConfig Required. The desired input location of the data. + * @param errorsConfig Optional. The desired location of errors incurred during the Import. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - @Deprecated - public static final String parseCatalogItemPathFromCatalogItemPathName( - String catalogItemPathName) { - return CATALOG_ITEM_PATH_PATH_TEMPLATE.parse(catalogItemPathName).get("catalog_item_path"); - } - - /** Constructs an instance of CatalogServiceClient with default settings. */ - public static final CatalogServiceClient create() throws IOException { - return create(CatalogServiceSettings.newBuilder().build()); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture importCatalogItemsAsync( + CatalogName parent, + String requestId, + InputConfig inputConfig, + ImportErrorsConfig errorsConfig) { + ImportCatalogItemsRequest request = + ImportCatalogItemsRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setRequestId(requestId) + .setInputConfig(inputConfig) + .setErrorsConfig(errorsConfig) + .build(); + return importCatalogItemsAsync(request); } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Constructs an instance of CatalogServiceClient, using the given settings. The channels are - * created based on the settings passed in, or defaults for any settings that are not set. + * Bulk import of multiple catalog items. Request processing may be synchronous. No partial + * updating supported. Non-existing items will be created. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully updated. + * + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   String requestId = "";
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
+   *   ImportCatalogItemsResponse response = catalogServiceClient.importCatalogItemsAsync(parent.toString(), requestId, inputConfig, errorsConfig).get();
+   * }
+   * 
+ * + * @param parent Required. "projects/1234/locations/global/catalogs/default_catalog" + * @param requestId Optional. Unique identifier provided by client, within the ancestor dataset + * scope. Ensures idempotency and used for request deduplication. Server-generated if + * unspecified. Up to 128 characters long. This is returned as + * google.longrunning.Operation.name in the response. + * @param inputConfig Required. The desired input location of the data. + * @param errorsConfig Optional. The desired location of errors incurred during the Import. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - public static final CatalogServiceClient create(CatalogServiceSettings settings) - throws IOException { - return new CatalogServiceClient(settings); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture importCatalogItemsAsync( + String parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig) { + ImportCatalogItemsRequest request = + ImportCatalogItemsRequest.newBuilder() + .setParent(parent) + .setRequestId(requestId) + .setInputConfig(inputConfig) + .setErrorsConfig(errorsConfig) + .build(); + return importCatalogItemsAsync(request); } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Constructs an instance of CatalogServiceClient, using the given stub for making calls. This is - * for advanced usage - prefer to use CatalogServiceSettings}. + * Bulk import of multiple catalog items. Request processing may be synchronous. No partial + * updating supported. Non-existing items will be created. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully updated. + * + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportCatalogItemsRequest request = ImportCatalogItemsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setInputConfig(inputConfig)
+   *     .build();
+   *   ImportCatalogItemsResponse response = catalogServiceClient.importCatalogItemsAsync(request).get();
+   * }
+   * 
+ * + * @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 */ - @BetaApi("A restructuring of stub classes is planned, so this may break in the future") - public static final CatalogServiceClient create(CatalogServiceStub stub) { - return new CatalogServiceClient(stub); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture importCatalogItemsAsync( + ImportCatalogItemsRequest request) { + return importCatalogItemsOperationCallable().futureCall(request); } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Constructs an instance of CatalogServiceClient, 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. + * Bulk import of multiple catalog items. Request processing may be synchronous. No partial + * updating supported. Non-existing items will be created. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully updated. + * + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportCatalogItemsRequest request = ImportCatalogItemsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setInputConfig(inputConfig)
+   *     .build();
+   *   OperationFuture<ImportCatalogItemsResponse, ImportMetadata> future = catalogServiceClient.importCatalogItemsOperationCallable().futureCall(request);
+   *   // Do something
+   *   ImportCatalogItemsResponse response = future.get();
+   * }
+   * 
*/ - protected CatalogServiceClient(CatalogServiceSettings settings) throws IOException { - this.settings = settings; - this.stub = ((CatalogServiceStubSettings) settings.getStubSettings()).createStub(); - this.operationsClient = OperationsClient.create(this.stub.getOperationsStub()); - } - - @BetaApi("A restructuring of stub classes is planned, so this may break in the future") - protected CatalogServiceClient(CatalogServiceStub stub) { - this.settings = null; - this.stub = stub; - this.operationsClient = OperationsClient.create(this.stub.getOperationsStub()); - } - - public final CatalogServiceSettings getSettings() { - return settings; + @BetaApi("The surface for use by generated code is not stable yet and may change in the future.") + public final OperationCallable< + ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata> + importCatalogItemsOperationCallable() { + return stub.importCatalogItemsOperationCallable(); } - @BetaApi("A restructuring of stub classes is planned, so this may break in the future") - public CatalogServiceStub getStub() { - return stub; + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Bulk import of multiple catalog items. Request processing may be synchronous. No partial + * updating supported. Non-existing items will be created. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully updated. + * + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportCatalogItemsRequest request = ImportCatalogItemsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setInputConfig(inputConfig)
+   *     .build();
+   *   ApiFuture<Operation> future = catalogServiceClient.importCatalogItemsCallable().futureCall(request);
+   *   // Do something
+   *   Operation response = future.get();
+   * }
+   * 
+ */ + public final UnaryCallable importCatalogItemsCallable() { + return stub.importCatalogItemsCallable(); } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Returns the OperationsClient that can be used to query the status of a long-running operation - * returned by another API method call. + * Creates a catalog item. + * + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
+   *   CatalogItem response = catalogServiceClient.createCatalogItem(parent, catalogItem);
+   * }
+   * 
+ * + * @param parent Required. The parent catalog resource name, such as + * "projects/*/locations/global/catalogs/default_catalog". + * @param catalogItem Required. The catalog item to create. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - @BetaApi( - "The surface for long-running operations is not stable yet and may change in the future.") - public final OperationsClient getOperationsClient() { - return operationsClient; + public final CatalogItem createCatalogItem(CatalogName parent, CatalogItem catalogItem) { + CreateCatalogItemRequest request = + CreateCatalogItemRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setCatalogItem(catalogItem) + .build(); + return createCatalogItem(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD @@ -292,9 +480,9 @@ public final OperationsClient getOperationsClient() { * *

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
    *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
-   *   CatalogItem response = catalogServiceClient.createCatalogItem(formattedParent, catalogItem);
+   *   CatalogItem response = catalogServiceClient.createCatalogItem(parent.toString(), catalogItem);
    * }
    * 
* @@ -304,7 +492,6 @@ public final OperationsClient getOperationsClient() { * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final CatalogItem createCatalogItem(String parent, CatalogItem catalogItem) { - CATALOG_PATH_TEMPLATE.validate(parent, "createCatalogItem"); CreateCatalogItemRequest request = CreateCatalogItemRequest.newBuilder().setParent(parent).setCatalogItem(catalogItem).build(); return createCatalogItem(request); @@ -318,10 +505,10 @@ public final CatalogItem createCatalogItem(String parent, CatalogItem catalogIte * *

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
    *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
    *   CreateCatalogItemRequest request = CreateCatalogItemRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .setCatalogItem(catalogItem)
    *     .build();
    *   CatalogItem response = catalogServiceClient.createCatalogItem(request);
@@ -343,10 +530,10 @@ public final CatalogItem createCatalogItem(CreateCatalogItemRequest request) {
    *
    * 

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
    *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
    *   CreateCatalogItemRequest request = CreateCatalogItemRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .setCatalogItem(catalogItem)
    *     .build();
    *   ApiFuture<CatalogItem> future = catalogServiceClient.createCatalogItemCallable().futureCall(request);
@@ -367,8 +554,31 @@ public final UnaryCallable createCatalogI
    *
    * 

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
-   *   CatalogItem response = catalogServiceClient.getCatalogItem(formattedName);
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   CatalogItem response = catalogServiceClient.getCatalogItem(name);
+   * }
+   * 
+ * + * @param name Required. Full resource name of catalog item, such as + * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final CatalogItem getCatalogItem(CatalogItemPathName name) { + GetCatalogItemRequest request = + GetCatalogItemRequest.newBuilder().setName(name == null ? null : name.toString()).build(); + return getCatalogItem(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Gets a specific catalog item. + * + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   CatalogItem response = catalogServiceClient.getCatalogItem(name.toString());
    * }
    * 
* @@ -377,7 +587,6 @@ public final UnaryCallable createCatalogI * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final CatalogItem getCatalogItem(String name) { - CATALOG_ITEM_PATH_PATH_TEMPLATE.validate(name, "getCatalogItem"); GetCatalogItemRequest request = GetCatalogItemRequest.newBuilder().setName(name).build(); return getCatalogItem(request); } @@ -390,9 +599,9 @@ public final CatalogItem getCatalogItem(String name) { * *

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
    *   GetCatalogItemRequest request = GetCatalogItemRequest.newBuilder()
-   *     .setName(formattedName)
+   *     .setName(name.toString())
    *     .build();
    *   CatalogItem response = catalogServiceClient.getCatalogItem(request);
    * }
@@ -413,9 +622,9 @@ public final CatalogItem getCatalogItem(GetCatalogItemRequest request) {
    *
    * 

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
    *   GetCatalogItemRequest request = GetCatalogItemRequest.newBuilder()
-   *     .setName(formattedName)
+   *     .setName(name.toString())
    *     .build();
    *   ApiFuture<CatalogItem> future = catalogServiceClient.getCatalogItemCallable().futureCall(request);
    *   // Do something
@@ -435,9 +644,39 @@ public final UnaryCallable getCatalogItemCal
    *
    * 

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   String filter = "";
+   *   for (CatalogItem element : catalogServiceClient.listCatalogItems(parent, filter).iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
+   * }
+   * 
+ * + * @param parent Required. The parent catalog resource name, such as + * "projects/*/locations/global/catalogs/default_catalog". + * @param filter Optional. A filter to apply on the list results. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final ListCatalogItemsPagedResponse listCatalogItems(CatalogName parent, String filter) { + ListCatalogItemsRequest request = + ListCatalogItemsRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setFilter(filter) + .build(); + return listCatalogItems(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Gets a list of catalog items. + * + *

Sample code: + * + *


+   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
    *   String filter = "";
-   *   for (CatalogItem element : catalogServiceClient.listCatalogItems(formattedParent, filter).iterateAll()) {
+   *   for (CatalogItem element : catalogServiceClient.listCatalogItems(parent.toString(), filter).iterateAll()) {
    *     // doThingsWith(element);
    *   }
    * }
@@ -449,7 +688,6 @@ public final UnaryCallable getCatalogItemCal
    * @throws com.google.api.gax.rpc.ApiException if the remote call fails
    */
   public final ListCatalogItemsPagedResponse listCatalogItems(String parent, String filter) {
-    CATALOG_PATH_TEMPLATE.validate(parent, "listCatalogItems");
     ListCatalogItemsRequest request =
         ListCatalogItemsRequest.newBuilder().setParent(parent).setFilter(filter).build();
     return listCatalogItems(request);
@@ -463,9 +701,9 @@ public final ListCatalogItemsPagedResponse listCatalogItems(String parent, Strin
    *
    * 

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
    *   ListCatalogItemsRequest request = ListCatalogItemsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .build();
    *   for (CatalogItem element : catalogServiceClient.listCatalogItems(request).iterateAll()) {
    *     // doThingsWith(element);
@@ -488,9 +726,9 @@ public final ListCatalogItemsPagedResponse listCatalogItems(ListCatalogItemsRequ
    *
    * 

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
    *   ListCatalogItemsRequest request = ListCatalogItemsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .build();
    *   ApiFuture<ListCatalogItemsPagedResponse> future = catalogServiceClient.listCatalogItemsPagedCallable().futureCall(request);
    *   // Do something
@@ -513,9 +751,9 @@ public final ListCatalogItemsPagedResponse listCatalogItems(ListCatalogItemsRequ
    *
    * 

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+   *   CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
    *   ListCatalogItemsRequest request = ListCatalogItemsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .build();
    *   while (true) {
    *     ListCatalogItemsResponse response = catalogServiceClient.listCatalogItemsCallable().call(request);
@@ -545,9 +783,10 @@ public final ListCatalogItemsPagedResponse listCatalogItems(ListCatalogItemsRequ
    *
    * 

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
    *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
-   *   CatalogItem response = catalogServiceClient.updateCatalogItem(formattedName, catalogItem);
+   *   FieldMask updateMask = FieldMask.newBuilder().build();
+   *   CatalogItem response = catalogServiceClient.updateCatalogItem(name, catalogItem, updateMask);
    * }
    * 
* @@ -555,12 +794,18 @@ public final ListCatalogItemsPagedResponse listCatalogItems(ListCatalogItemsRequ * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * @param catalogItem Required. The catalog item to update/create. The 'catalog_item_id' field has * to match that in the 'name'. + * @param updateMask Optional. Indicates which fields in the provided 'item' to update. If not + * set, will by default update all fields. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - public final CatalogItem updateCatalogItem(String name, CatalogItem catalogItem) { - CATALOG_ITEM_PATH_PATH_TEMPLATE.validate(name, "updateCatalogItem"); + public final CatalogItem updateCatalogItem( + CatalogItemPathName name, CatalogItem catalogItem, FieldMask updateMask) { UpdateCatalogItemRequest request = - UpdateCatalogItemRequest.newBuilder().setName(name).setCatalogItem(catalogItem).build(); + UpdateCatalogItemRequest.newBuilder() + .setName(name == null ? null : name.toString()) + .setCatalogItem(catalogItem) + .setUpdateMask(updateMask) + .build(); return updateCatalogItem(request); } @@ -572,21 +817,30 @@ public final CatalogItem updateCatalogItem(String name, CatalogItem catalogItem) * *

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
    *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
-   *   UpdateCatalogItemRequest request = UpdateCatalogItemRequest.newBuilder()
-   *     .setName(formattedName)
-   *     .setCatalogItem(catalogItem)
-   *     .build();
-   *   CatalogItem response = catalogServiceClient.updateCatalogItem(request);
+   *   FieldMask updateMask = FieldMask.newBuilder().build();
+   *   CatalogItem response = catalogServiceClient.updateCatalogItem(name.toString(), catalogItem, updateMask);
    * }
    * 
* - * @param request The request object containing all of the parameters for the API call. + * @param name Required. Full resource name of catalog item, such as + * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". + * @param catalogItem Required. The catalog item to update/create. The 'catalog_item_id' field has + * to match that in the 'name'. + * @param updateMask Optional. Indicates which fields in the provided 'item' to update. If not + * set, will by default update all fields. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - public final CatalogItem updateCatalogItem(UpdateCatalogItemRequest request) { - return updateCatalogItemCallable().call(request); + public final CatalogItem updateCatalogItem( + String name, CatalogItem catalogItem, FieldMask updateMask) { + UpdateCatalogItemRequest request = + UpdateCatalogItemRequest.newBuilder() + .setName(name) + .setCatalogItem(catalogItem) + .setUpdateMask(updateMask) + .build(); + return updateCatalogItem(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD @@ -597,223 +851,45 @@ public final CatalogItem updateCatalogItem(UpdateCatalogItemRequest request) { * *

    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
    *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
    *   UpdateCatalogItemRequest request = UpdateCatalogItemRequest.newBuilder()
-   *     .setName(formattedName)
+   *     .setName(name.toString())
    *     .setCatalogItem(catalogItem)
    *     .build();
-   *   ApiFuture<CatalogItem> future = catalogServiceClient.updateCatalogItemCallable().futureCall(request);
-   *   // Do something
-   *   CatalogItem response = future.get();
-   * }
-   * 
- */ - public final UnaryCallable updateCatalogItemCallable() { - return stub.updateCatalogItemCallable(); - } - - // AUTO-GENERATED DOCUMENTATION AND METHOD - /** - * Deletes a catalog item. - * - *

Sample code: - * - *


-   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
-   *   catalogServiceClient.deleteCatalogItem(formattedName);
-   * }
-   * 
- * - * @param name Required. Full resource name of catalog item, such as - * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". - * @throws com.google.api.gax.rpc.ApiException if the remote call fails - */ - public final void deleteCatalogItem(String name) { - CATALOG_ITEM_PATH_PATH_TEMPLATE.validate(name, "deleteCatalogItem"); - DeleteCatalogItemRequest request = DeleteCatalogItemRequest.newBuilder().setName(name).build(); - deleteCatalogItem(request); - } - - // AUTO-GENERATED DOCUMENTATION AND METHOD - /** - * Deletes a catalog item. - * - *

Sample code: - * - *


-   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
-   *   DeleteCatalogItemRequest request = DeleteCatalogItemRequest.newBuilder()
-   *     .setName(formattedName)
-   *     .build();
-   *   catalogServiceClient.deleteCatalogItem(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 void deleteCatalogItem(DeleteCatalogItemRequest request) { - deleteCatalogItemCallable().call(request); - } - - // AUTO-GENERATED DOCUMENTATION AND METHOD - /** - * Deletes a catalog item. - * - *

Sample code: - * - *


-   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedName = CatalogServiceClient.formatCatalogItemPathName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
-   *   DeleteCatalogItemRequest request = DeleteCatalogItemRequest.newBuilder()
-   *     .setName(formattedName)
-   *     .build();
-   *   ApiFuture<Void> future = catalogServiceClient.deleteCatalogItemCallable().futureCall(request);
-   *   // Do something
-   *   future.get();
-   * }
-   * 
- */ - public final UnaryCallable deleteCatalogItemCallable() { - return stub.deleteCatalogItemCallable(); - } - - // AUTO-GENERATED DOCUMENTATION AND METHOD - /** - * Bulk import of multiple catalog items. Request processing may be synchronous. No partial - * updating supported. Non-existing items will be created. - * - *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the - * items to be successfully updated. - * - *

Sample code: - * - *


-   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
-   *   String requestId = "";
-   *   InputConfig inputConfig = InputConfig.newBuilder().build();
-   *   ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
-   *   ImportCatalogItemsResponse response = catalogServiceClient.importCatalogItemsAsync(formattedParent, requestId, inputConfig, errorsConfig).get();
-   * }
-   * 
- * - * @param parent Required. "projects/1234/locations/global/catalogs/default_catalog" - * @param requestId Optional. Unique identifier provided by client, within the ancestor dataset - * scope. Ensures idempotency and used for request deduplication. Server-generated if - * unspecified. Up to 128 characters long. This is returned as - * google.longrunning.Operation.name in the response. - * @param inputConfig Required. The desired input location of the data. - * @param errorsConfig Optional. The desired location of errors incurred during the Import. - * @throws com.google.api.gax.rpc.ApiException if the remote call fails - */ - @BetaApi( - "The surface for long-running operations is not stable yet and may change in the future.") - public final OperationFuture importCatalogItemsAsync( - String parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig) { - CATALOG_PATH_TEMPLATE.validate(parent, "importCatalogItems"); - ImportCatalogItemsRequest request = - ImportCatalogItemsRequest.newBuilder() - .setParent(parent) - .setRequestId(requestId) - .setInputConfig(inputConfig) - .setErrorsConfig(errorsConfig) - .build(); - return importCatalogItemsAsync(request); - } - - // AUTO-GENERATED DOCUMENTATION AND METHOD - /** - * Bulk import of multiple catalog items. Request processing may be synchronous. No partial - * updating supported. Non-existing items will be created. - * - *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the - * items to be successfully updated. - * - *

Sample code: - * - *


-   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
-   *   InputConfig inputConfig = InputConfig.newBuilder().build();
-   *   ImportCatalogItemsRequest request = ImportCatalogItemsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setInputConfig(inputConfig)
-   *     .build();
-   *   ImportCatalogItemsResponse response = catalogServiceClient.importCatalogItemsAsync(request).get();
+   *   CatalogItem response = catalogServiceClient.updateCatalogItem(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 */ - @BetaApi( - "The surface for long-running operations is not stable yet and may change in the future.") - public final OperationFuture importCatalogItemsAsync( - ImportCatalogItemsRequest request) { - return importCatalogItemsOperationCallable().futureCall(request); - } - - // AUTO-GENERATED DOCUMENTATION AND METHOD - /** - * Bulk import of multiple catalog items. Request processing may be synchronous. No partial - * updating supported. Non-existing items will be created. - * - *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the - * items to be successfully updated. - * - *

Sample code: - * - *


-   * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
-   *   InputConfig inputConfig = InputConfig.newBuilder().build();
-   *   ImportCatalogItemsRequest request = ImportCatalogItemsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setInputConfig(inputConfig)
-   *     .build();
-   *   OperationFuture<ImportCatalogItemsResponse, ImportMetadata> future = catalogServiceClient.importCatalogItemsOperationCallable().futureCall(request);
-   *   // Do something
-   *   ImportCatalogItemsResponse response = future.get();
-   * }
-   * 
- */ - @BetaApi("The surface for use by generated code is not stable yet and may change in the future.") - public final OperationCallable< - ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata> - importCatalogItemsOperationCallable() { - return stub.importCatalogItemsOperationCallable(); + public final CatalogItem updateCatalogItem(UpdateCatalogItemRequest request) { + return updateCatalogItemCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Bulk import of multiple catalog items. Request processing may be synchronous. No partial - * updating supported. Non-existing items will be created. - * - *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the - * items to be successfully updated. + * Updates a catalog item. Partial updating is supported. Non-existing items will be created. * *

Sample code: * *


    * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
-   *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
-   *   InputConfig inputConfig = InputConfig.newBuilder().build();
-   *   ImportCatalogItemsRequest request = ImportCatalogItemsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setInputConfig(inputConfig)
+   *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+   *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
+   *   UpdateCatalogItemRequest request = UpdateCatalogItemRequest.newBuilder()
+   *     .setName(name.toString())
+   *     .setCatalogItem(catalogItem)
    *     .build();
-   *   ApiFuture<Operation> future = catalogServiceClient.importCatalogItemsCallable().futureCall(request);
+   *   ApiFuture<CatalogItem> future = catalogServiceClient.updateCatalogItemCallable().futureCall(request);
    *   // Do something
-   *   Operation response = future.get();
+   *   CatalogItem response = future.get();
    * }
    * 
*/ - public final UnaryCallable importCatalogItemsCallable() { - return stub.importCatalogItemsCallable(); + public final UnaryCallable updateCatalogItemCallable() { + return stub.updateCatalogItemCallable(); } @Override diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceSettings.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceSettings.java index fb44de2a..f061de3d 100644 --- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceSettings.java +++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceSettings.java @@ -52,16 +52,16 @@ *

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 total timeout of createCatalogItem to 30 seconds: + *

For example, to set the total timeout of deleteCatalogItem to 30 seconds: * *

  * 
  * CatalogServiceSettings.Builder catalogServiceSettingsBuilder =
  *     CatalogServiceSettings.newBuilder();
  * catalogServiceSettingsBuilder
- *     .createCatalogItemSettings()
+ *     .deleteCatalogItemSettings()
  *     .setRetrySettings(
- *         catalogServiceSettingsBuilder.createCatalogItemSettings().getRetrySettings().toBuilder()
+ *         catalogServiceSettingsBuilder.deleteCatalogItemSettings().getRetrySettings().toBuilder()
  *             .setTotalTimeout(Duration.ofSeconds(30))
  *             .build());
  * CatalogServiceSettings catalogServiceSettings = catalogServiceSettingsBuilder.build();
@@ -71,6 +71,25 @@
 @Generated("by gapic-generator")
 @BetaApi
 public class CatalogServiceSettings extends ClientSettings {
+  /** Returns the object with the settings used for calls to deleteCatalogItem. */
+  public UnaryCallSettings deleteCatalogItemSettings() {
+    return ((CatalogServiceStubSettings) getStubSettings()).deleteCatalogItemSettings();
+  }
+
+  /** Returns the object with the settings used for calls to importCatalogItems. */
+  public UnaryCallSettings importCatalogItemsSettings() {
+    return ((CatalogServiceStubSettings) getStubSettings()).importCatalogItemsSettings();
+  }
+
+  /** Returns the object with the settings used for calls to importCatalogItems. */
+  @BetaApi(
+      "The surface for long-running operations is not stable yet and may change in the future.")
+  public OperationCallSettings<
+          ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
+      importCatalogItemsOperationSettings() {
+    return ((CatalogServiceStubSettings) getStubSettings()).importCatalogItemsOperationSettings();
+  }
+
   /** Returns the object with the settings used for calls to createCatalogItem. */
   public UnaryCallSettings createCatalogItemSettings() {
     return ((CatalogServiceStubSettings) getStubSettings()).createCatalogItemSettings();
@@ -93,25 +112,6 @@ public UnaryCallSettings updateCatalogIte
     return ((CatalogServiceStubSettings) getStubSettings()).updateCatalogItemSettings();
   }
 
-  /** Returns the object with the settings used for calls to deleteCatalogItem. */
-  public UnaryCallSettings deleteCatalogItemSettings() {
-    return ((CatalogServiceStubSettings) getStubSettings()).deleteCatalogItemSettings();
-  }
-
-  /** Returns the object with the settings used for calls to importCatalogItems. */
-  public UnaryCallSettings importCatalogItemsSettings() {
-    return ((CatalogServiceStubSettings) getStubSettings()).importCatalogItemsSettings();
-  }
-
-  /** Returns the object with the settings used for calls to importCatalogItems. */
-  @BetaApi(
-      "The surface for long-running operations is not stable yet and may change in the future.")
-  public OperationCallSettings<
-          ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
-      importCatalogItemsOperationSettings() {
-    return ((CatalogServiceStubSettings) getStubSettings()).importCatalogItemsOperationSettings();
-  }
-
   public static final CatalogServiceSettings create(CatalogServiceStubSettings stub)
       throws IOException {
     return new CatalogServiceSettings.Builder(stub.toBuilder()).build();
@@ -209,6 +209,26 @@ public Builder applyToAllUnaryMethods(
       return this;
     }
 
+    /** Returns the builder for the settings used for calls to deleteCatalogItem. */
+    public UnaryCallSettings.Builder deleteCatalogItemSettings() {
+      return getStubSettingsBuilder().deleteCatalogItemSettings();
+    }
+
+    /** Returns the builder for the settings used for calls to importCatalogItems. */
+    public UnaryCallSettings.Builder
+        importCatalogItemsSettings() {
+      return getStubSettingsBuilder().importCatalogItemsSettings();
+    }
+
+    /** Returns the builder for the settings used for calls to importCatalogItems. */
+    @BetaApi(
+        "The surface for long-running operations is not stable yet and may change in the future.")
+    public OperationCallSettings.Builder<
+            ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
+        importCatalogItemsOperationSettings() {
+      return getStubSettingsBuilder().importCatalogItemsOperationSettings();
+    }
+
     /** Returns the builder for the settings used for calls to createCatalogItem. */
     public UnaryCallSettings.Builder
         createCatalogItemSettings() {
@@ -233,26 +253,6 @@ public UnaryCallSettings.Builder getCatalogI
       return getStubSettingsBuilder().updateCatalogItemSettings();
     }
 
-    /** Returns the builder for the settings used for calls to deleteCatalogItem. */
-    public UnaryCallSettings.Builder deleteCatalogItemSettings() {
-      return getStubSettingsBuilder().deleteCatalogItemSettings();
-    }
-
-    /** Returns the builder for the settings used for calls to importCatalogItems. */
-    public UnaryCallSettings.Builder
-        importCatalogItemsSettings() {
-      return getStubSettingsBuilder().importCatalogItemsSettings();
-    }
-
-    /** Returns the builder for the settings used for calls to importCatalogItems. */
-    @BetaApi(
-        "The surface for long-running operations is not stable yet and may change in the future.")
-    public OperationCallSettings.Builder<
-            ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
-        importCatalogItemsOperationSettings() {
-      return getStubSettingsBuilder().importCatalogItemsOperationSettings();
-    }
-
     @Override
     public CatalogServiceSettings build() throws IOException {
       return new CatalogServiceSettings(this);
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClient.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClient.java
index 89fd576b..2e1a01d0 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClient.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClient.java
@@ -25,7 +25,6 @@
 import com.google.api.gax.paging.AbstractPagedListResponse;
 import com.google.api.gax.rpc.PageContext;
 import com.google.api.gax.rpc.UnaryCallable;
-import com.google.api.pathtemplate.PathTemplate;
 import com.google.cloud.recommendationengine.v1beta1.stub.PredictionApiKeyRegistryStub;
 import com.google.cloud.recommendationengine.v1beta1.stub.PredictionApiKeyRegistryStubSettings;
 import com.google.common.util.concurrent.MoreExecutors;
@@ -48,9 +47,8 @@
  * 
  * 
  * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
- *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
- *   PredictionApiKeyRegistration predictionApiKeyRegistration = PredictionApiKeyRegistration.newBuilder().build();
- *   PredictionApiKeyRegistration response = predictionApiKeyRegistryClient.createPredictionApiKeyRegistration(formattedParent, predictionApiKeyRegistration);
+ *   PredictionApiKeyRegistrationName name = PredictionApiKeyRegistrationName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
+ *   predictionApiKeyRegistryClient.deletePredictionApiKeyRegistration(name);
  * }
  * 
  * 
@@ -112,162 +110,6 @@ public class PredictionApiKeyRegistryClient implements BackgroundResource { private final PredictionApiKeyRegistrySettings settings; private final PredictionApiKeyRegistryStub stub; - private static final PathTemplate EVENT_STORE_PATH_TEMPLATE = - PathTemplate.createWithoutUrlEncoding( - "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}"); - - private static final PathTemplate PREDICTION_API_KEY_REGISTRATION_PATH_TEMPLATE = - PathTemplate.createWithoutUrlEncoding( - "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/predictionApiKeyRegistrations/{prediction_api_key_registration}"); - - /** - * Formats a string containing the fully-qualified path to represent a event_store resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String formatEventStoreName( - String project, String location, String catalog, String eventStore) { - return EVENT_STORE_PATH_TEMPLATE.instantiate( - "project", project, - "location", location, - "catalog", catalog, - "event_store", eventStore); - } - - /** - * Formats a string containing the fully-qualified path to represent a - * prediction_api_key_registration resource. - * - * @deprecated Use the {@link PredictionApiKeyRegistrationName} class instead. - */ - @Deprecated - public static final String formatPredictionApiKeyRegistrationName( - String project, - String location, - String catalog, - String eventStore, - String predictionApiKeyRegistration) { - return PREDICTION_API_KEY_REGISTRATION_PATH_TEMPLATE.instantiate( - "project", project, - "location", location, - "catalog", catalog, - "event_store", eventStore, - "prediction_api_key_registration", predictionApiKeyRegistration); - } - - /** - * Parses the project from the given fully-qualified path which represents a event_store resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String parseProjectFromEventStoreName(String eventStoreName) { - return EVENT_STORE_PATH_TEMPLATE.parse(eventStoreName).get("project"); - } - - /** - * Parses the location from the given fully-qualified path which represents a event_store - * resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String parseLocationFromEventStoreName(String eventStoreName) { - return EVENT_STORE_PATH_TEMPLATE.parse(eventStoreName).get("location"); - } - - /** - * Parses the catalog from the given fully-qualified path which represents a event_store resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String parseCatalogFromEventStoreName(String eventStoreName) { - return EVENT_STORE_PATH_TEMPLATE.parse(eventStoreName).get("catalog"); - } - - /** - * Parses the event_store from the given fully-qualified path which represents a event_store - * resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String parseEventStoreFromEventStoreName(String eventStoreName) { - return EVENT_STORE_PATH_TEMPLATE.parse(eventStoreName).get("event_store"); - } - - /** - * Parses the project from the given fully-qualified path which represents a - * prediction_api_key_registration resource. - * - * @deprecated Use the {@link PredictionApiKeyRegistrationName} class instead. - */ - @Deprecated - public static final String parseProjectFromPredictionApiKeyRegistrationName( - String predictionApiKeyRegistrationName) { - return PREDICTION_API_KEY_REGISTRATION_PATH_TEMPLATE - .parse(predictionApiKeyRegistrationName) - .get("project"); - } - - /** - * Parses the location from the given fully-qualified path which represents a - * prediction_api_key_registration resource. - * - * @deprecated Use the {@link PredictionApiKeyRegistrationName} class instead. - */ - @Deprecated - public static final String parseLocationFromPredictionApiKeyRegistrationName( - String predictionApiKeyRegistrationName) { - return PREDICTION_API_KEY_REGISTRATION_PATH_TEMPLATE - .parse(predictionApiKeyRegistrationName) - .get("location"); - } - - /** - * Parses the catalog from the given fully-qualified path which represents a - * prediction_api_key_registration resource. - * - * @deprecated Use the {@link PredictionApiKeyRegistrationName} class instead. - */ - @Deprecated - public static final String parseCatalogFromPredictionApiKeyRegistrationName( - String predictionApiKeyRegistrationName) { - return PREDICTION_API_KEY_REGISTRATION_PATH_TEMPLATE - .parse(predictionApiKeyRegistrationName) - .get("catalog"); - } - - /** - * Parses the event_store from the given fully-qualified path which represents a - * prediction_api_key_registration resource. - * - * @deprecated Use the {@link PredictionApiKeyRegistrationName} class instead. - */ - @Deprecated - public static final String parseEventStoreFromPredictionApiKeyRegistrationName( - String predictionApiKeyRegistrationName) { - return PREDICTION_API_KEY_REGISTRATION_PATH_TEMPLATE - .parse(predictionApiKeyRegistrationName) - .get("event_store"); - } - - /** - * Parses the prediction_api_key_registration from the given fully-qualified path which represents - * a prediction_api_key_registration resource. - * - * @deprecated Use the {@link PredictionApiKeyRegistrationName} class instead. - */ - @Deprecated - public static final String parsePredictionApiKeyRegistrationFromPredictionApiKeyRegistrationName( - String predictionApiKeyRegistrationName) { - return PREDICTION_API_KEY_REGISTRATION_PATH_TEMPLATE - .parse(predictionApiKeyRegistrationName) - .get("prediction_api_key_registration"); - } - /** Constructs an instance of PredictionApiKeyRegistryClient with default settings. */ public static final PredictionApiKeyRegistryClient create() throws IOException { return create(PredictionApiKeyRegistrySettings.newBuilder().build()); @@ -318,6 +160,101 @@ public PredictionApiKeyRegistryStub getStub() { return stub; } + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Unregister an apiKey from using for predict method. + * + *

Sample code: + * + *


+   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
+   *   PredictionApiKeyRegistrationName name = PredictionApiKeyRegistrationName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
+   *   predictionApiKeyRegistryClient.deletePredictionApiKeyRegistration(name);
+   * }
+   * 
+ * + * @param name Required. The API key to unregister including full resource path. + * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final void deletePredictionApiKeyRegistration(PredictionApiKeyRegistrationName name) { + DeletePredictionApiKeyRegistrationRequest request = + DeletePredictionApiKeyRegistrationRequest.newBuilder() + .setName(name == null ? null : name.toString()) + .build(); + deletePredictionApiKeyRegistration(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Unregister an apiKey from using for predict method. + * + *

Sample code: + * + *


+   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
+   *   PredictionApiKeyRegistrationName name = PredictionApiKeyRegistrationName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
+   *   predictionApiKeyRegistryClient.deletePredictionApiKeyRegistration(name.toString());
+   * }
+   * 
+ * + * @param name Required. The API key to unregister including full resource path. + * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final void deletePredictionApiKeyRegistration(String name) { + DeletePredictionApiKeyRegistrationRequest request = + DeletePredictionApiKeyRegistrationRequest.newBuilder().setName(name).build(); + deletePredictionApiKeyRegistration(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Unregister an apiKey from using for predict method. + * + *

Sample code: + * + *


+   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
+   *   PredictionApiKeyRegistrationName name = PredictionApiKeyRegistrationName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
+   *   DeletePredictionApiKeyRegistrationRequest request = DeletePredictionApiKeyRegistrationRequest.newBuilder()
+   *     .setName(name.toString())
+   *     .build();
+   *   predictionApiKeyRegistryClient.deletePredictionApiKeyRegistration(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 void deletePredictionApiKeyRegistration( + DeletePredictionApiKeyRegistrationRequest request) { + deletePredictionApiKeyRegistrationCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Unregister an apiKey from using for predict method. + * + *

Sample code: + * + *


+   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
+   *   PredictionApiKeyRegistrationName name = PredictionApiKeyRegistrationName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
+   *   DeletePredictionApiKeyRegistrationRequest request = DeletePredictionApiKeyRegistrationRequest.newBuilder()
+   *     .setName(name.toString())
+   *     .build();
+   *   ApiFuture<Void> future = predictionApiKeyRegistryClient.deletePredictionApiKeyRegistrationCallable().futureCall(request);
+   *   // Do something
+   *   future.get();
+   * }
+   * 
+ */ + public final UnaryCallable + deletePredictionApiKeyRegistrationCallable() { + return stub.deletePredictionApiKeyRegistrationCallable(); + } + // AUTO-GENERATED DOCUMENTATION AND METHOD /** * Register an API key for use with predict method. @@ -326,9 +263,38 @@ public PredictionApiKeyRegistryStub getStub() { * *

    * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
    *   PredictionApiKeyRegistration predictionApiKeyRegistration = PredictionApiKeyRegistration.newBuilder().build();
-   *   PredictionApiKeyRegistration response = predictionApiKeyRegistryClient.createPredictionApiKeyRegistration(formattedParent, predictionApiKeyRegistration);
+   *   PredictionApiKeyRegistration response = predictionApiKeyRegistryClient.createPredictionApiKeyRegistration(parent, predictionApiKeyRegistration);
+   * }
+   * 
+ * + * @param parent Required. The parent resource path. + * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". + * @param predictionApiKeyRegistration Required. The prediction API key registration. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final PredictionApiKeyRegistration createPredictionApiKeyRegistration( + EventStoreName parent, PredictionApiKeyRegistration predictionApiKeyRegistration) { + CreatePredictionApiKeyRegistrationRequest request = + CreatePredictionApiKeyRegistrationRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setPredictionApiKeyRegistration(predictionApiKeyRegistration) + .build(); + return createPredictionApiKeyRegistration(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Register an API key for use with predict method. + * + *

Sample code: + * + *


+   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   PredictionApiKeyRegistration predictionApiKeyRegistration = PredictionApiKeyRegistration.newBuilder().build();
+   *   PredictionApiKeyRegistration response = predictionApiKeyRegistryClient.createPredictionApiKeyRegistration(parent.toString(), predictionApiKeyRegistration);
    * }
    * 
* @@ -339,7 +305,6 @@ public PredictionApiKeyRegistryStub getStub() { */ public final PredictionApiKeyRegistration createPredictionApiKeyRegistration( String parent, PredictionApiKeyRegistration predictionApiKeyRegistration) { - EVENT_STORE_PATH_TEMPLATE.validate(parent, "createPredictionApiKeyRegistration"); CreatePredictionApiKeyRegistrationRequest request = CreatePredictionApiKeyRegistrationRequest.newBuilder() .setParent(parent) @@ -356,10 +321,10 @@ public final PredictionApiKeyRegistration createPredictionApiKeyRegistration( * *

    * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
    *   PredictionApiKeyRegistration predictionApiKeyRegistration = PredictionApiKeyRegistration.newBuilder().build();
    *   CreatePredictionApiKeyRegistrationRequest request = CreatePredictionApiKeyRegistrationRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .setPredictionApiKeyRegistration(predictionApiKeyRegistration)
    *     .build();
    *   PredictionApiKeyRegistration response = predictionApiKeyRegistryClient.createPredictionApiKeyRegistration(request);
@@ -382,10 +347,10 @@ public final PredictionApiKeyRegistration createPredictionApiKeyRegistration(
    *
    * 

    * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
    *   PredictionApiKeyRegistration predictionApiKeyRegistration = PredictionApiKeyRegistration.newBuilder().build();
    *   CreatePredictionApiKeyRegistrationRequest request = CreatePredictionApiKeyRegistrationRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .setPredictionApiKeyRegistration(predictionApiKeyRegistration)
    *     .build();
    *   ApiFuture<PredictionApiKeyRegistration> future = predictionApiKeyRegistryClient.createPredictionApiKeyRegistrationCallable().futureCall(request);
@@ -408,8 +373,36 @@ public final PredictionApiKeyRegistration createPredictionApiKeyRegistration(
    *
    * 

    * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   for (PredictionApiKeyRegistration element : predictionApiKeyRegistryClient.listPredictionApiKeyRegistrations(formattedParent).iterateAll()) {
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   for (PredictionApiKeyRegistration element : predictionApiKeyRegistryClient.listPredictionApiKeyRegistrations(parent).iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
+   * }
+   * 
+ * + * @param parent Required. The parent placement resource name such as + * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final ListPredictionApiKeyRegistrationsPagedResponse listPredictionApiKeyRegistrations( + EventStoreName parent) { + ListPredictionApiKeyRegistrationsRequest request = + ListPredictionApiKeyRegistrationsRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .build(); + return listPredictionApiKeyRegistrations(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * List the registered apiKeys for use with predict method. + * + *

Sample code: + * + *


+   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   for (PredictionApiKeyRegistration element : predictionApiKeyRegistryClient.listPredictionApiKeyRegistrations(parent.toString()).iterateAll()) {
    *     // doThingsWith(element);
    *   }
    * }
@@ -421,7 +414,6 @@ public final PredictionApiKeyRegistration createPredictionApiKeyRegistration(
    */
   public final ListPredictionApiKeyRegistrationsPagedResponse listPredictionApiKeyRegistrations(
       String parent) {
-    EVENT_STORE_PATH_TEMPLATE.validate(parent, "listPredictionApiKeyRegistrations");
     ListPredictionApiKeyRegistrationsRequest request =
         ListPredictionApiKeyRegistrationsRequest.newBuilder().setParent(parent).build();
     return listPredictionApiKeyRegistrations(request);
@@ -435,9 +427,9 @@ public final ListPredictionApiKeyRegistrationsPagedResponse listPredictionApiKey
    *
    * 

    * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
    *   ListPredictionApiKeyRegistrationsRequest request = ListPredictionApiKeyRegistrationsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .build();
    *   for (PredictionApiKeyRegistration element : predictionApiKeyRegistryClient.listPredictionApiKeyRegistrations(request).iterateAll()) {
    *     // doThingsWith(element);
@@ -461,9 +453,9 @@ public final ListPredictionApiKeyRegistrationsPagedResponse listPredictionApiKey
    *
    * 

    * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
    *   ListPredictionApiKeyRegistrationsRequest request = ListPredictionApiKeyRegistrationsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .build();
    *   ApiFuture<ListPredictionApiKeyRegistrationsPagedResponse> future = predictionApiKeyRegistryClient.listPredictionApiKeyRegistrationsPagedCallable().futureCall(request);
    *   // Do something
@@ -487,9 +479,9 @@ public final ListPredictionApiKeyRegistrationsPagedResponse listPredictionApiKey
    *
    * 

    * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
    *   ListPredictionApiKeyRegistrationsRequest request = ListPredictionApiKeyRegistrationsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *     .setParent(parent.toString())
    *     .build();
    *   while (true) {
    *     ListPredictionApiKeyRegistrationsResponse response = predictionApiKeyRegistryClient.listPredictionApiKeyRegistrationsCallable().call(request);
@@ -512,78 +504,6 @@ public final ListPredictionApiKeyRegistrationsPagedResponse listPredictionApiKey
     return stub.listPredictionApiKeyRegistrationsCallable();
   }
 
-  // AUTO-GENERATED DOCUMENTATION AND METHOD
-  /**
-   * Unregister an apiKey from using for predict method.
-   *
-   * 

Sample code: - * - *


-   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedName = PredictionApiKeyRegistryClient.formatPredictionApiKeyRegistrationName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
-   *   predictionApiKeyRegistryClient.deletePredictionApiKeyRegistration(formattedName);
-   * }
-   * 
- * - * @param name Required. The API key to unregister including full resource path. - * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" - * @throws com.google.api.gax.rpc.ApiException if the remote call fails - */ - public final void deletePredictionApiKeyRegistration(String name) { - PREDICTION_API_KEY_REGISTRATION_PATH_TEMPLATE.validate( - name, "deletePredictionApiKeyRegistration"); - DeletePredictionApiKeyRegistrationRequest request = - DeletePredictionApiKeyRegistrationRequest.newBuilder().setName(name).build(); - deletePredictionApiKeyRegistration(request); - } - - // AUTO-GENERATED DOCUMENTATION AND METHOD - /** - * Unregister an apiKey from using for predict method. - * - *

Sample code: - * - *


-   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedName = PredictionApiKeyRegistryClient.formatPredictionApiKeyRegistrationName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
-   *   DeletePredictionApiKeyRegistrationRequest request = DeletePredictionApiKeyRegistrationRequest.newBuilder()
-   *     .setName(formattedName)
-   *     .build();
-   *   predictionApiKeyRegistryClient.deletePredictionApiKeyRegistration(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 void deletePredictionApiKeyRegistration( - DeletePredictionApiKeyRegistrationRequest request) { - deletePredictionApiKeyRegistrationCallable().call(request); - } - - // AUTO-GENERATED DOCUMENTATION AND METHOD - /** - * Unregister an apiKey from using for predict method. - * - *

Sample code: - * - *


-   * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
-   *   String formattedName = PredictionApiKeyRegistryClient.formatPredictionApiKeyRegistrationName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
-   *   DeletePredictionApiKeyRegistrationRequest request = DeletePredictionApiKeyRegistrationRequest.newBuilder()
-   *     .setName(formattedName)
-   *     .build();
-   *   ApiFuture<Void> future = predictionApiKeyRegistryClient.deletePredictionApiKeyRegistrationCallable().futureCall(request);
-   *   // Do something
-   *   future.get();
-   * }
-   * 
- */ - public final UnaryCallable - deletePredictionApiKeyRegistrationCallable() { - return stub.deletePredictionApiKeyRegistrationCallable(); - } - @Override public final void close() { stub.close(); diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistrySettings.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistrySettings.java index e1669db9..795e9e26 100644 --- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistrySettings.java +++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistrySettings.java @@ -50,16 +50,16 @@ *

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 total timeout of createPredictionApiKeyRegistration to 30 seconds: + *

For example, to set the total timeout of deletePredictionApiKeyRegistration to 30 seconds: * *

  * 
  * PredictionApiKeyRegistrySettings.Builder predictionApiKeyRegistrySettingsBuilder =
  *     PredictionApiKeyRegistrySettings.newBuilder();
  * predictionApiKeyRegistrySettingsBuilder
- *     .createPredictionApiKeyRegistrationSettings()
+ *     .deletePredictionApiKeyRegistrationSettings()
  *     .setRetrySettings(
- *         predictionApiKeyRegistrySettingsBuilder.createPredictionApiKeyRegistrationSettings().getRetrySettings().toBuilder()
+ *         predictionApiKeyRegistrySettingsBuilder.deletePredictionApiKeyRegistrationSettings().getRetrySettings().toBuilder()
  *             .setTotalTimeout(Duration.ofSeconds(30))
  *             .build());
  * PredictionApiKeyRegistrySettings predictionApiKeyRegistrySettings = predictionApiKeyRegistrySettingsBuilder.build();
@@ -70,6 +70,13 @@
 @BetaApi
 public class PredictionApiKeyRegistrySettings
     extends ClientSettings {
+  /** Returns the object with the settings used for calls to deletePredictionApiKeyRegistration. */
+  public UnaryCallSettings
+      deletePredictionApiKeyRegistrationSettings() {
+    return ((PredictionApiKeyRegistryStubSettings) getStubSettings())
+        .deletePredictionApiKeyRegistrationSettings();
+  }
+
   /** Returns the object with the settings used for calls to createPredictionApiKeyRegistration. */
   public UnaryCallSettings
       createPredictionApiKeyRegistrationSettings() {
@@ -87,13 +94,6 @@ public class PredictionApiKeyRegistrySettings
         .listPredictionApiKeyRegistrationsSettings();
   }
 
-  /** Returns the object with the settings used for calls to deletePredictionApiKeyRegistration. */
-  public UnaryCallSettings
-      deletePredictionApiKeyRegistrationSettings() {
-    return ((PredictionApiKeyRegistryStubSettings) getStubSettings())
-        .deletePredictionApiKeyRegistrationSettings();
-  }
-
   public static final PredictionApiKeyRegistrySettings create(
       PredictionApiKeyRegistryStubSettings stub) throws IOException {
     return new PredictionApiKeyRegistrySettings.Builder(stub.toBuilder()).build();
@@ -192,6 +192,14 @@ public Builder applyToAllUnaryMethods(
       return this;
     }
 
+    /**
+     * Returns the builder for the settings used for calls to deletePredictionApiKeyRegistration.
+     */
+    public UnaryCallSettings.Builder
+        deletePredictionApiKeyRegistrationSettings() {
+      return getStubSettingsBuilder().deletePredictionApiKeyRegistrationSettings();
+    }
+
     /**
      * Returns the builder for the settings used for calls to createPredictionApiKeyRegistration.
      */
@@ -210,14 +218,6 @@ public Builder applyToAllUnaryMethods(
       return getStubSettingsBuilder().listPredictionApiKeyRegistrationsSettings();
     }
 
-    /**
-     * Returns the builder for the settings used for calls to deletePredictionApiKeyRegistration.
-     */
-    public UnaryCallSettings.Builder
-        deletePredictionApiKeyRegistrationSettings() {
-      return getStubSettingsBuilder().deletePredictionApiKeyRegistrationSettings();
-    }
-
     @Override
     public PredictionApiKeyRegistrySettings build() throws IOException {
       return new PredictionApiKeyRegistrySettings(this);
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceClient.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceClient.java
index 67c71b95..e99b24c9 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceClient.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceClient.java
@@ -25,7 +25,6 @@
 import com.google.api.gax.paging.AbstractPagedListResponse;
 import com.google.api.gax.rpc.PageContext;
 import com.google.api.gax.rpc.UnaryCallable;
-import com.google.api.pathtemplate.PathTemplate;
 import com.google.cloud.recommendationengine.v1beta1.stub.PredictionServiceStub;
 import com.google.cloud.recommendationengine.v1beta1.stub.PredictionServiceStubSettings;
 import com.google.common.util.concurrent.MoreExecutors;
@@ -44,15 +43,9 @@
  * 
  * 
  * try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
- *   String formattedName = PredictionServiceClient.formatPlacementName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+ *   PlacementName name = PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
  *   UserEvent userEvent = UserEvent.newBuilder().build();
- *   PredictRequest request = PredictRequest.newBuilder()
- *     .setName(formattedName)
- *     .setUserEvent(userEvent)
- *     .build();
- *   ApiFuture<PredictPagedResponse> future = predictionServiceClient.predictPagedCallable().futureCall(request);
- *   // Do something
- *   for (PredictResponse.PredictionResult element : future.get().iterateAll()) {
+ *   for (PredictResponse.PredictionResult element : predictionServiceClient.predict(name, userEvent).iterateAll()) {
  *     // doThingsWith(element);
  *   }
  * }
@@ -116,77 +109,6 @@ public class PredictionServiceClient implements BackgroundResource {
   private final PredictionServiceSettings settings;
   private final PredictionServiceStub stub;
 
-  private static final PathTemplate PLACEMENT_PATH_TEMPLATE =
-      PathTemplate.createWithoutUrlEncoding(
-          "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/placements/{placement}");
-
-  /**
-   * Formats a string containing the fully-qualified path to represent a placement resource.
-   *
-   * @deprecated Use the {@link PlacementName} class instead.
-   */
-  @Deprecated
-  public static final String formatPlacementName(
-      String project, String location, String catalog, String eventStore, String placement) {
-    return PLACEMENT_PATH_TEMPLATE.instantiate(
-        "project", project,
-        "location", location,
-        "catalog", catalog,
-        "event_store", eventStore,
-        "placement", placement);
-  }
-
-  /**
-   * Parses the project from the given fully-qualified path which represents a placement resource.
-   *
-   * @deprecated Use the {@link PlacementName} class instead.
-   */
-  @Deprecated
-  public static final String parseProjectFromPlacementName(String placementName) {
-    return PLACEMENT_PATH_TEMPLATE.parse(placementName).get("project");
-  }
-
-  /**
-   * Parses the location from the given fully-qualified path which represents a placement resource.
-   *
-   * @deprecated Use the {@link PlacementName} class instead.
-   */
-  @Deprecated
-  public static final String parseLocationFromPlacementName(String placementName) {
-    return PLACEMENT_PATH_TEMPLATE.parse(placementName).get("location");
-  }
-
-  /**
-   * Parses the catalog from the given fully-qualified path which represents a placement resource.
-   *
-   * @deprecated Use the {@link PlacementName} class instead.
-   */
-  @Deprecated
-  public static final String parseCatalogFromPlacementName(String placementName) {
-    return PLACEMENT_PATH_TEMPLATE.parse(placementName).get("catalog");
-  }
-
-  /**
-   * Parses the event_store from the given fully-qualified path which represents a placement
-   * resource.
-   *
-   * @deprecated Use the {@link PlacementName} class instead.
-   */
-  @Deprecated
-  public static final String parseEventStoreFromPlacementName(String placementName) {
-    return PLACEMENT_PATH_TEMPLATE.parse(placementName).get("event_store");
-  }
-
-  /**
-   * Parses the placement from the given fully-qualified path which represents a placement resource.
-   *
-   * @deprecated Use the {@link PlacementName} class instead.
-   */
-  @Deprecated
-  public static final String parsePlacementFromPlacementName(String placementName) {
-    return PLACEMENT_PATH_TEMPLATE.parse(placementName).get("placement");
-  }
-
   /** Constructs an instance of PredictionServiceClient with default settings. */
   public static final PredictionServiceClient create() throws IOException {
     return create(PredictionServiceSettings.newBuilder().build());
@@ -246,10 +168,115 @@ public PredictionServiceStub getStub() {
    *
    * 

    * try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
-   *   String formattedName = PredictionServiceClient.formatPlacementName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+   *   PlacementName name = PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+   *   UserEvent userEvent = UserEvent.newBuilder().build();
+   *   for (PredictResponse.PredictionResult element : predictionServiceClient.predict(name, userEvent).iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
+   * }
+   * 
+ * + * @param name Required. Full resource name of the format: + * {name=projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/placements/*} + * The id of the recommendation engine placement. This id is used to identify the set of + * models that will be used to make the prediction. + *

We currently support three placements with the following IDs by default: + *

* `shopping_cart`: Predicts items frequently bought together with one or more + * catalog items in the same shopping session. Commonly displayed after `add-to-cart` events, + * on product detail pages, or on the shopping cart page. + *

* `home_page`: Predicts the next product that a user will most likely engage with or + * purchase based on the shopping or viewing history of the specified `userId` or `visitorId`. + * For example - Recommendations for you. + *

* `product_detail`: Predicts the next product that a user will most likely engage + * with or purchase. The prediction is based on the shopping or viewing history of the + * specified `userId` or `visitorId` and its relevance to a specified `CatalogItem`. Typically + * used on product detail pages. For example - More items like this. + *

* `recently_viewed_default`: Returns up to 75 items recently viewed by the specified + * `userId` or `visitorId`, most recent ones first. Returns nothing if neither of them has + * viewed any items yet. For example - Recently viewed. + *

The full list of available placements can be seen at + * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard + * @param userEvent Required. Context about the user, what they are looking at and what action + * they took to trigger the predict request. Note that this user event detail won't be + * ingested to userEvent logs. Thus, a separate userEvent write request is required for event + * logging. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final PredictPagedResponse predict(PlacementName name, UserEvent userEvent) { + PredictRequest request = + PredictRequest.newBuilder() + .setName(name == null ? null : name.toString()) + .setUserEvent(userEvent) + .build(); + return predict(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Makes a recommendation prediction. If using API Key based authentication, the API Key must be + * registered using the + * [PredictionApiKeyRegistry][google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry] + * service. [Learn more](/recommendations-ai/docs/setting-up#register-key). + * + *

Sample code: + * + *


+   * try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
+   *   PlacementName name = PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+   *   UserEvent userEvent = UserEvent.newBuilder().build();
+   *   for (PredictResponse.PredictionResult element : predictionServiceClient.predict(name.toString(), userEvent).iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
+   * }
+   * 
+ * + * @param name Required. Full resource name of the format: + * {name=projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/placements/*} + * The id of the recommendation engine placement. This id is used to identify the set of + * models that will be used to make the prediction. + *

We currently support three placements with the following IDs by default: + *

* `shopping_cart`: Predicts items frequently bought together with one or more + * catalog items in the same shopping session. Commonly displayed after `add-to-cart` events, + * on product detail pages, or on the shopping cart page. + *

* `home_page`: Predicts the next product that a user will most likely engage with or + * purchase based on the shopping or viewing history of the specified `userId` or `visitorId`. + * For example - Recommendations for you. + *

* `product_detail`: Predicts the next product that a user will most likely engage + * with or purchase. The prediction is based on the shopping or viewing history of the + * specified `userId` or `visitorId` and its relevance to a specified `CatalogItem`. Typically + * used on product detail pages. For example - More items like this. + *

* `recently_viewed_default`: Returns up to 75 items recently viewed by the specified + * `userId` or `visitorId`, most recent ones first. Returns nothing if neither of them has + * viewed any items yet. For example - Recently viewed. + *

The full list of available placements can be seen at + * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard + * @param userEvent Required. Context about the user, what they are looking at and what action + * they took to trigger the predict request. Note that this user event detail won't be + * ingested to userEvent logs. Thus, a separate userEvent write request is required for event + * logging. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final PredictPagedResponse predict(String name, UserEvent userEvent) { + PredictRequest request = + PredictRequest.newBuilder().setName(name).setUserEvent(userEvent).build(); + return predict(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Makes a recommendation prediction. If using API Key based authentication, the API Key must be + * registered using the + * [PredictionApiKeyRegistry][google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry] + * service. [Learn more](/recommendations-ai/docs/setting-up#register-key). + * + *

Sample code: + * + *


+   * try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
+   *   PlacementName name = PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
    *   UserEvent userEvent = UserEvent.newBuilder().build();
    *   PredictRequest request = PredictRequest.newBuilder()
-   *     .setName(formattedName)
+   *     .setName(name.toString())
    *     .setUserEvent(userEvent)
    *     .build();
    *   for (PredictResponse.PredictionResult element : predictionServiceClient.predict(request).iterateAll()) {
@@ -276,10 +303,10 @@ public final PredictPagedResponse predict(PredictRequest request) {
    *
    * 

    * try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
-   *   String formattedName = PredictionServiceClient.formatPlacementName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+   *   PlacementName name = PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
    *   UserEvent userEvent = UserEvent.newBuilder().build();
    *   PredictRequest request = PredictRequest.newBuilder()
-   *     .setName(formattedName)
+   *     .setName(name.toString())
    *     .setUserEvent(userEvent)
    *     .build();
    *   ApiFuture<PredictPagedResponse> future = predictionServiceClient.predictPagedCallable().futureCall(request);
@@ -305,10 +332,10 @@ public final UnaryCallable predictPagedCal
    *
    * 

    * try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
-   *   String formattedName = PredictionServiceClient.formatPlacementName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+   *   PlacementName name = PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
    *   UserEvent userEvent = UserEvent.newBuilder().build();
    *   PredictRequest request = PredictRequest.newBuilder()
-   *     .setName(formattedName)
+   *     .setName(name.toString())
    *     .setUserEvent(userEvent)
    *     .build();
    *   while (true) {
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceSettings.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceSettings.java
index cecd5685..b5818f05 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceSettings.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceSettings.java
@@ -49,7 +49,7 @@
  * 

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 total timeout of predictPagedCallable to 30 seconds: + *

For example, to set the total timeout of predict to 30 seconds: * *

  * 
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceClient.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceClient.java
index 99f0d1cc..63205274 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceClient.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceClient.java
@@ -28,7 +28,6 @@
 import com.google.api.gax.rpc.OperationCallable;
 import com.google.api.gax.rpc.PageContext;
 import com.google.api.gax.rpc.UnaryCallable;
-import com.google.api.pathtemplate.PathTemplate;
 import com.google.cloud.recommendationengine.v1beta1.stub.UserEventServiceStub;
 import com.google.cloud.recommendationengine.v1beta1.stub.UserEventServiceStubSettings;
 import com.google.common.util.concurrent.MoreExecutors;
@@ -49,9 +48,9 @@
  * 
  * 
  * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
- *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+ *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
  *   UserEvent userEvent = UserEvent.newBuilder().build();
- *   UserEvent response = userEventServiceClient.writeUserEvent(formattedParent, userEvent);
+ *   UserEvent response = userEventServiceClient.writeUserEvent(parent, userEvent);
  * }
  * 
  * 
@@ -114,67 +113,6 @@ public class UserEventServiceClient implements BackgroundResource { private final UserEventServiceStub stub; private final OperationsClient operationsClient; - private static final PathTemplate EVENT_STORE_PATH_TEMPLATE = - PathTemplate.createWithoutUrlEncoding( - "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}"); - - /** - * Formats a string containing the fully-qualified path to represent a event_store resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String formatEventStoreName( - String project, String location, String catalog, String eventStore) { - return EVENT_STORE_PATH_TEMPLATE.instantiate( - "project", project, - "location", location, - "catalog", catalog, - "event_store", eventStore); - } - - /** - * Parses the project from the given fully-qualified path which represents a event_store resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String parseProjectFromEventStoreName(String eventStoreName) { - return EVENT_STORE_PATH_TEMPLATE.parse(eventStoreName).get("project"); - } - - /** - * Parses the location from the given fully-qualified path which represents a event_store - * resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String parseLocationFromEventStoreName(String eventStoreName) { - return EVENT_STORE_PATH_TEMPLATE.parse(eventStoreName).get("location"); - } - - /** - * Parses the catalog from the given fully-qualified path which represents a event_store resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String parseCatalogFromEventStoreName(String eventStoreName) { - return EVENT_STORE_PATH_TEMPLATE.parse(eventStoreName).get("catalog"); - } - - /** - * Parses the event_store from the given fully-qualified path which represents a event_store - * resource. - * - * @deprecated Use the {@link EventStoreName} class instead. - */ - @Deprecated - public static final String parseEventStoreFromEventStoreName(String eventStoreName) { - return EVENT_STORE_PATH_TEMPLATE.parse(eventStoreName).get("event_store"); - } - /** Constructs an instance of UserEventServiceClient with default settings. */ public static final UserEventServiceClient create() throws IOException { return create(UserEventServiceSettings.newBuilder().build()); @@ -237,577 +175,789 @@ public final OperationsClient getOperationsClient() { // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Writes a single user event. + * Deletes permanently all user events specified by the filter provided. Depending on the number + * of events specified by the filter, this operation could take hours or days to complete. To test + * a filter, use the list command first. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   UserEvent userEvent = UserEvent.newBuilder().build();
-   *   UserEvent response = userEventServiceClient.writeUserEvent(formattedParent, userEvent);
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String filter = "";
+   *   boolean force = false;
+   *   PurgeUserEventsResponse response = userEventServiceClient.purgeUserEventsAsync(parent, filter, force).get();
    * }
    * 
* - * @param parent Required. The parent eventStore resource name, such as - * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". - * @param userEvent Required. User event to write. + * @param parent Required. The resource name of the event_store under which the events are + * created. The format is + * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" + * @param filter Required. The filter string to specify the events to be deleted. Empty string + * filter is not allowed. This filter can also be used with ListUserEvents API to list events + * that will be deleted. The eligible fields for filtering are: * eventType - + * UserEvent.eventType field of type string. * eventTime - in ISO 8601 "zulu" format. + * * visitorId - field of type string. Specifying this will delete all events associated + * with a visitor. * userId - field of type string. Specifying this will delete all events + * associated with a user. Example 1: Deleting all events in a time range. `eventTime > + * "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z"` Example 2: Deleting + * specific eventType in time range. `eventTime > "2012-04-23T18:25:43.511Z" eventType = + * "detail-page-view"` Example 3: Deleting all events for a specific visitor `visitorId = + * visitor1024` The filtering fields are assumed to have an implicit AND. + * @param force Optional. The default value is false. Override this flag to true to actually + * perform the purge. If the field is not set to true, a sampling of events to be deleted will + * be returned. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - public final UserEvent writeUserEvent(String parent, UserEvent userEvent) { - EVENT_STORE_PATH_TEMPLATE.validate(parent, "writeUserEvent"); - WriteUserEventRequest request = - WriteUserEventRequest.newBuilder().setParent(parent).setUserEvent(userEvent).build(); - return writeUserEvent(request); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture + purgeUserEventsAsync(EventStoreName parent, String filter, boolean force) { + PurgeUserEventsRequest request = + PurgeUserEventsRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setFilter(filter) + .setForce(force) + .build(); + return purgeUserEventsAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Writes a single user event. + * Deletes permanently all user events specified by the filter provided. Depending on the number + * of events specified by the filter, this operation could take hours or days to complete. To test + * a filter, use the list command first. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   UserEvent userEvent = UserEvent.newBuilder().build();
-   *   WriteUserEventRequest request = WriteUserEventRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setUserEvent(userEvent)
-   *     .build();
-   *   UserEvent response = userEventServiceClient.writeUserEvent(request);
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String filter = "";
+   *   boolean force = false;
+   *   PurgeUserEventsResponse response = userEventServiceClient.purgeUserEventsAsync(parent.toString(), filter, force).get();
    * }
    * 
* - * @param request The request object containing all of the parameters for the API call. + * @param parent Required. The resource name of the event_store under which the events are + * created. The format is + * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" + * @param filter Required. The filter string to specify the events to be deleted. Empty string + * filter is not allowed. This filter can also be used with ListUserEvents API to list events + * that will be deleted. The eligible fields for filtering are: * eventType - + * UserEvent.eventType field of type string. * eventTime - in ISO 8601 "zulu" format. + * * visitorId - field of type string. Specifying this will delete all events associated + * with a visitor. * userId - field of type string. Specifying this will delete all events + * associated with a user. Example 1: Deleting all events in a time range. `eventTime > + * "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z"` Example 2: Deleting + * specific eventType in time range. `eventTime > "2012-04-23T18:25:43.511Z" eventType = + * "detail-page-view"` Example 3: Deleting all events for a specific visitor `visitorId = + * visitor1024` The filtering fields are assumed to have an implicit AND. + * @param force Optional. The default value is false. Override this flag to true to actually + * perform the purge. If the field is not set to true, a sampling of events to be deleted will + * be returned. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - public final UserEvent writeUserEvent(WriteUserEventRequest request) { - return writeUserEventCallable().call(request); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture + purgeUserEventsAsync(String parent, String filter, boolean force) { + PurgeUserEventsRequest request = + PurgeUserEventsRequest.newBuilder() + .setParent(parent) + .setFilter(filter) + .setForce(force) + .build(); + return purgeUserEventsAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Writes a single user event. + * Deletes permanently all user events specified by the filter provided. Depending on the number + * of events specified by the filter, this operation could take hours or days to complete. To test + * a filter, use the list command first. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   UserEvent userEvent = UserEvent.newBuilder().build();
-   *   WriteUserEventRequest request = WriteUserEventRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setUserEvent(userEvent)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String filter = "";
+   *   PurgeUserEventsRequest request = PurgeUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setFilter(filter)
    *     .build();
-   *   ApiFuture<UserEvent> future = userEventServiceClient.writeUserEventCallable().futureCall(request);
-   *   // Do something
-   *   UserEvent response = future.get();
+   *   PurgeUserEventsResponse response = userEventServiceClient.purgeUserEventsAsync(request).get();
    * }
    * 
+ * + * @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 UnaryCallable writeUserEventCallable() { - return stub.writeUserEventCallable(); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture + purgeUserEventsAsync(PurgeUserEventsRequest request) { + return purgeUserEventsOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Writes a single user event from the browser. This uses a GET request to due to browser - * restriction of POST-ing to a 3rd party domain. - * - *

This method is used only by the Recommendations AI JavaScript pixel. Users should not call - * this method directly. + * Deletes permanently all user events specified by the filter provided. Depending on the number + * of events specified by the filter, this operation could take hours or days to complete. To test + * a filter, use the list command first. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String userEvent = "";
-   *   String uri = "";
-   *   long ets = 0L;
-   *   HttpBody response = userEventServiceClient.collectUserEvent(formattedParent, userEvent, uri, ets);
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String filter = "";
+   *   PurgeUserEventsRequest request = PurgeUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setFilter(filter)
+   *     .build();
+   *   OperationFuture<PurgeUserEventsResponse, PurgeUserEventsMetadata> future = userEventServiceClient.purgeUserEventsOperationCallable().futureCall(request);
+   *   // Do something
+   *   PurgeUserEventsResponse response = future.get();
    * }
    * 
- * - * @param parent Required. The parent eventStore name, such as - * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". - * @param userEvent Required. URL encoded UserEvent proto. - * @param uri Optional. The url including cgi-parameters but excluding the hash fragment. The URL - * must be truncated to 1.5K bytes to conservatively be under the 2K bytes. This is often more - * useful than the referer url, because many browsers only send the domain for 3rd party - * requests. - * @param ets Optional. The event timestamp in milliseconds. This prevents browser caching of - * otherwise identical get requests. The name is abbreviated to reduce the payload bytes. - * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - public final HttpBody collectUserEvent(String parent, String userEvent, String uri, long ets) { - EVENT_STORE_PATH_TEMPLATE.validate(parent, "collectUserEvent"); - CollectUserEventRequest request = - CollectUserEventRequest.newBuilder() - .setParent(parent) - .setUserEvent(userEvent) - .setUri(uri) - .setEts(ets) - .build(); - return collectUserEvent(request); + @BetaApi("The surface for use by generated code is not stable yet and may change in the future.") + public final OperationCallable< + PurgeUserEventsRequest, PurgeUserEventsResponse, PurgeUserEventsMetadata> + purgeUserEventsOperationCallable() { + return stub.purgeUserEventsOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Writes a single user event from the browser. This uses a GET request to due to browser - * restriction of POST-ing to a 3rd party domain. - * - *

This method is used only by the Recommendations AI JavaScript pixel. Users should not call - * this method directly. + * Deletes permanently all user events specified by the filter provided. Depending on the number + * of events specified by the filter, this operation could take hours or days to complete. To test + * a filter, use the list command first. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String userEvent = "";
-   *   CollectUserEventRequest request = CollectUserEventRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setUserEvent(userEvent)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String filter = "";
+   *   PurgeUserEventsRequest request = PurgeUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setFilter(filter)
    *     .build();
-   *   HttpBody response = userEventServiceClient.collectUserEvent(request);
+   *   ApiFuture<Operation> future = userEventServiceClient.purgeUserEventsCallable().futureCall(request);
+   *   // Do something
+   *   Operation response = future.get();
    * }
    * 
- * - * @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 HttpBody collectUserEvent(CollectUserEventRequest request) { - return collectUserEventCallable().call(request); + public final UnaryCallable purgeUserEventsCallable() { + return stub.purgeUserEventsCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Writes a single user event from the browser. This uses a GET request to due to browser - * restriction of POST-ing to a 3rd party domain. + * Bulk import of User events. Request processing might be synchronous. Events that already exist + * are skipped. Use this method for backfilling historical user events. * - *

This method is used only by the Recommendations AI JavaScript pixel. Users should not call - * this method directly. + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully inserted. Operation.metadata is of type ImportMetadata. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String userEvent = "";
-   *   CollectUserEventRequest request = CollectUserEventRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setUserEvent(userEvent)
-   *     .build();
-   *   ApiFuture<HttpBody> future = userEventServiceClient.collectUserEventCallable().futureCall(request);
-   *   // Do something
-   *   HttpBody response = future.get();
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String requestId = "";
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
+   *   ImportUserEventsResponse response = userEventServiceClient.importUserEventsAsync(parent, requestId, inputConfig, errorsConfig).get();
    * }
    * 
+ * + * @param parent Required. + * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" + * @param requestId Optional. Unique identifier provided by client, within the ancestor dataset + * scope. Ensures idempotency for expensive long running operations. Server-generated if + * unspecified. Up to 128 characters long. This is returned as + * google.longrunning.Operation.name in the response. Note that this field must not be set if + * the desired input config is catalog_inline_source. + * @param inputConfig Required. The desired input location of the data. + * @param errorsConfig Optional. The desired location of errors incurred during the Import. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - public final UnaryCallable collectUserEventCallable() { - return stub.collectUserEventCallable(); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture importUserEventsAsync( + EventStoreName parent, + String requestId, + InputConfig inputConfig, + ImportErrorsConfig errorsConfig) { + ImportUserEventsRequest request = + ImportUserEventsRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setRequestId(requestId) + .setInputConfig(inputConfig) + .setErrorsConfig(errorsConfig) + .build(); + return importUserEventsAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Gets a list of user events within a time range, with potential filtering. + * Bulk import of User events. Request processing might be synchronous. Events that already exist + * are skipped. Use this method for backfilling historical user events. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully inserted. Operation.metadata is of type ImportMetadata. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String filter = "";
-   *   for (UserEvent element : userEventServiceClient.listUserEvents(formattedParent, filter).iterateAll()) {
-   *     // doThingsWith(element);
-   *   }
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String requestId = "";
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
+   *   ImportUserEventsResponse response = userEventServiceClient.importUserEventsAsync(parent.toString(), requestId, inputConfig, errorsConfig).get();
    * }
    * 
* - * @param parent Required. The parent eventStore resource name, such as - * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". - * @param filter Optional. Filtering expression to specify restrictions over returned events. This - * is a sequence of terms, where each term applies some kind of a restriction to the returned - * user events. Use this expression to restrict results to a specific time range, or filter - * events by eventType. eg: eventTime > "2012-04-23T18:25:43.511Z" - * eventsMissingCatalogItems eventTime<"2012-04-23T18:25:43.511Z" eventType=search - *

We expect only 3 types of fields: - *

* eventTime: this can be specified a maximum of 2 times, once with a less than - * operator and once with a greater than operator. The eventTime restrict should result in one - * contiguous valid eventTime range. - *

* eventType: only 1 eventType restriction can be specified. - *

* eventsMissingCatalogItems: specififying this will restrict results to events for - * which catalog items were not found in the catalog. The default behavior is to return only - * those events for which catalog items were found. - *

Some examples of valid filters expressions: - *

* Example 1: eventTime > "2012-04-23T18:25:43.511Z" eventTime < - * "2012-04-23T18:30:43.511Z" * Example 2: eventTime > "2012-04-23T18:25:43.511Z" - * eventType = detail-page-view * Example 3: eventsMissingCatalogItems eventType = search - * eventTime < "2018-04-23T18:30:43.511Z" * Example 4: eventTime > - * "2012-04-23T18:25:43.511Z" * Example 5: eventType = search * Example 6: - * eventsMissingCatalogItems + * @param parent Required. + * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" + * @param requestId Optional. Unique identifier provided by client, within the ancestor dataset + * scope. Ensures idempotency for expensive long running operations. Server-generated if + * unspecified. Up to 128 characters long. This is returned as + * google.longrunning.Operation.name in the response. Note that this field must not be set if + * the desired input config is catalog_inline_source. + * @param inputConfig Required. The desired input location of the data. + * @param errorsConfig Optional. The desired location of errors incurred during the Import. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - public final ListUserEventsPagedResponse listUserEvents(String parent, String filter) { - EVENT_STORE_PATH_TEMPLATE.validate(parent, "listUserEvents"); - ListUserEventsRequest request = - ListUserEventsRequest.newBuilder().setParent(parent).setFilter(filter).build(); - return listUserEvents(request); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture importUserEventsAsync( + String parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig) { + ImportUserEventsRequest request = + ImportUserEventsRequest.newBuilder() + .setParent(parent) + .setRequestId(requestId) + .setInputConfig(inputConfig) + .setErrorsConfig(errorsConfig) + .build(); + return importUserEventsAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Gets a list of user events within a time range, with potential filtering. + * Bulk import of User events. Request processing might be synchronous. Events that already exist + * are skipped. Use this method for backfilling historical user events. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully inserted. Operation.metadata is of type ImportMetadata. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   ListUserEventsRequest request = ListUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportUserEventsRequest request = ImportUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setInputConfig(inputConfig)
    *     .build();
-   *   for (UserEvent element : userEventServiceClient.listUserEvents(request).iterateAll()) {
-   *     // doThingsWith(element);
-   *   }
+   *   ImportUserEventsResponse response = userEventServiceClient.importUserEventsAsync(request).get();
    * }
    * 
* * @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 ListUserEventsPagedResponse listUserEvents(ListUserEventsRequest request) { - return listUserEventsPagedCallable().call(request); + @BetaApi( + "The surface for long-running operations is not stable yet and may change in the future.") + public final OperationFuture importUserEventsAsync( + ImportUserEventsRequest request) { + return importUserEventsOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Gets a list of user events within a time range, with potential filtering. + * Bulk import of User events. Request processing might be synchronous. Events that already exist + * are skipped. Use this method for backfilling historical user events. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully inserted. Operation.metadata is of type ImportMetadata. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   ListUserEventsRequest request = ListUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportUserEventsRequest request = ImportUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setInputConfig(inputConfig)
    *     .build();
-   *   ApiFuture<ListUserEventsPagedResponse> future = userEventServiceClient.listUserEventsPagedCallable().futureCall(request);
+   *   OperationFuture<ImportUserEventsResponse, ImportMetadata> future = userEventServiceClient.importUserEventsOperationCallable().futureCall(request);
    *   // Do something
-   *   for (UserEvent element : future.get().iterateAll()) {
-   *     // doThingsWith(element);
-   *   }
+   *   ImportUserEventsResponse response = future.get();
    * }
    * 
*/ - public final UnaryCallable - listUserEventsPagedCallable() { - return stub.listUserEventsPagedCallable(); + @BetaApi("The surface for use by generated code is not stable yet and may change in the future.") + public final OperationCallable + importUserEventsOperationCallable() { + return stub.importUserEventsOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Gets a list of user events within a time range, with potential filtering. + * Bulk import of User events. Request processing might be synchronous. Events that already exist + * are skipped. Use this method for backfilling historical user events. + * + *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the + * items to be successfully inserted. Operation.metadata is of type ImportMetadata. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   ListUserEventsRequest request = ListUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   InputConfig inputConfig = InputConfig.newBuilder().build();
+   *   ImportUserEventsRequest request = ImportUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setInputConfig(inputConfig)
    *     .build();
-   *   while (true) {
-   *     ListUserEventsResponse response = userEventServiceClient.listUserEventsCallable().call(request);
-   *     for (UserEvent element : response.getUserEventsList()) {
-   *       // doThingsWith(element);
-   *     }
-   *     String nextPageToken = response.getNextPageToken();
-   *     if (!Strings.isNullOrEmpty(nextPageToken)) {
-   *       request = request.toBuilder().setPageToken(nextPageToken).build();
-   *     } else {
-   *       break;
-   *     }
-   *   }
+   *   ApiFuture<Operation> future = userEventServiceClient.importUserEventsCallable().futureCall(request);
+   *   // Do something
+   *   Operation response = future.get();
    * }
    * 
*/ - public final UnaryCallable - listUserEventsCallable() { - return stub.listUserEventsCallable(); + public final UnaryCallable importUserEventsCallable() { + return stub.importUserEventsCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Deletes permanently all user events specified by the filter provided. Depending on the number - * of events specified by the filter, this operation could take hours or days to complete. To test - * a filter, use the list command first. + * Writes a single user event. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String filter = "";
-   *   boolean force = false;
-   *   PurgeUserEventsResponse response = userEventServiceClient.purgeUserEventsAsync(formattedParent, filter, force).get();
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   UserEvent userEvent = UserEvent.newBuilder().build();
+   *   UserEvent response = userEventServiceClient.writeUserEvent(parent, userEvent);
    * }
    * 
* - * @param parent Required. The resource name of the event_store under which the events are - * created. The format is - * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" - * @param filter Required. The filter string to specify the events to be deleted. Empty string - * filter is not allowed. This filter can also be used with ListUserEvents API to list events - * that will be deleted. The eligible fields for filtering are: * eventType - - * UserEvent.eventType field of type string. * eventTime - in ISO 8601 "zulu" format. - * * visitorId - field of type string. Specifying this will delete all events associated - * with a visitor. * userId - field of type string. Specifying this will delete all events - * associated with a user. Example 1: Deleting all events in a time range. `eventTime > - * "2012-04-23T18:25:43.511Z" eventTime < "2012-04-23T18:30:43.511Z"` Example 2: Deleting - * specific eventType in time range. `eventTime > "2012-04-23T18:25:43.511Z" eventType = - * "detail-page-view"` Example 3: Deleting all events for a specific visitor `visitorId = - * visitor1024` The filtering fields are assumed to have an implicit AND. - * @param force Optional. The default value is false. Override this flag to true to actually - * perform the purge. If the field is not set to true, a sampling of events to be deleted will - * be returned. + * @param parent Required. The parent eventStore resource name, such as + * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". + * @param userEvent Required. User event to write. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - @BetaApi( - "The surface for long-running operations is not stable yet and may change in the future.") - public final OperationFuture - purgeUserEventsAsync(String parent, String filter, boolean force) { - EVENT_STORE_PATH_TEMPLATE.validate(parent, "purgeUserEvents"); - PurgeUserEventsRequest request = - PurgeUserEventsRequest.newBuilder() - .setParent(parent) - .setFilter(filter) - .setForce(force) + public final UserEvent writeUserEvent(EventStoreName parent, UserEvent userEvent) { + WriteUserEventRequest request = + WriteUserEventRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setUserEvent(userEvent) .build(); - return purgeUserEventsAsync(request); + return writeUserEvent(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Deletes permanently all user events specified by the filter provided. Depending on the number - * of events specified by the filter, this operation could take hours or days to complete. To test - * a filter, use the list command first. + * Writes a single user event. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String filter = "";
-   *   PurgeUserEventsRequest request = PurgeUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setFilter(filter)
-   *     .build();
-   *   PurgeUserEventsResponse response = userEventServiceClient.purgeUserEventsAsync(request).get();
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   UserEvent userEvent = UserEvent.newBuilder().build();
+   *   UserEvent response = userEventServiceClient.writeUserEvent(parent.toString(), userEvent);
    * }
    * 
* - * @param request The request object containing all of the parameters for the API call. + * @param parent Required. The parent eventStore resource name, such as + * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". + * @param userEvent Required. User event to write. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - @BetaApi( - "The surface for long-running operations is not stable yet and may change in the future.") - public final OperationFuture - purgeUserEventsAsync(PurgeUserEventsRequest request) { - return purgeUserEventsOperationCallable().futureCall(request); + public final UserEvent writeUserEvent(String parent, UserEvent userEvent) { + WriteUserEventRequest request = + WriteUserEventRequest.newBuilder().setParent(parent).setUserEvent(userEvent).build(); + return writeUserEvent(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Deletes permanently all user events specified by the filter provided. Depending on the number - * of events specified by the filter, this operation could take hours or days to complete. To test - * a filter, use the list command first. + * Writes a single user event. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String filter = "";
-   *   PurgeUserEventsRequest request = PurgeUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setFilter(filter)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   UserEvent userEvent = UserEvent.newBuilder().build();
+   *   WriteUserEventRequest request = WriteUserEventRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setUserEvent(userEvent)
    *     .build();
-   *   OperationFuture<PurgeUserEventsResponse, PurgeUserEventsMetadata> future = userEventServiceClient.purgeUserEventsOperationCallable().futureCall(request);
-   *   // Do something
-   *   PurgeUserEventsResponse response = future.get();
+   *   UserEvent response = userEventServiceClient.writeUserEvent(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 */ - @BetaApi("The surface for use by generated code is not stable yet and may change in the future.") - public final OperationCallable< - PurgeUserEventsRequest, PurgeUserEventsResponse, PurgeUserEventsMetadata> - purgeUserEventsOperationCallable() { - return stub.purgeUserEventsOperationCallable(); + public final UserEvent writeUserEvent(WriteUserEventRequest request) { + return writeUserEventCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Deletes permanently all user events specified by the filter provided. Depending on the number - * of events specified by the filter, this operation could take hours or days to complete. To test - * a filter, use the list command first. + * Writes a single user event. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String filter = "";
-   *   PurgeUserEventsRequest request = PurgeUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setFilter(filter)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   UserEvent userEvent = UserEvent.newBuilder().build();
+   *   WriteUserEventRequest request = WriteUserEventRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setUserEvent(userEvent)
    *     .build();
-   *   ApiFuture<Operation> future = userEventServiceClient.purgeUserEventsCallable().futureCall(request);
+   *   ApiFuture<UserEvent> future = userEventServiceClient.writeUserEventCallable().futureCall(request);
    *   // Do something
-   *   Operation response = future.get();
+   *   UserEvent response = future.get();
    * }
    * 
*/ - public final UnaryCallable purgeUserEventsCallable() { - return stub.purgeUserEventsCallable(); + public final UnaryCallable writeUserEventCallable() { + return stub.writeUserEventCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Bulk import of User events. Request processing might be synchronous. Events that already exist - * are skipped. Use this method for backfilling historical user events. + * Writes a single user event from the browser. This uses a GET request to due to browser + * restriction of POST-ing to a 3rd party domain. * - *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the - * items to be successfully inserted. Operation.metadata is of type ImportMetadata. + *

This method is used only by the Recommendations AI JavaScript pixel. Users should not call + * this method directly. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   String requestId = "";
-   *   InputConfig inputConfig = InputConfig.newBuilder().build();
-   *   ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
-   *   ImportUserEventsResponse response = userEventServiceClient.importUserEventsAsync(formattedParent, requestId, inputConfig, errorsConfig).get();
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String userEvent = "";
+   *   String uri = "";
+   *   long ets = 0L;
+   *   HttpBody response = userEventServiceClient.collectUserEvent(parent, userEvent, uri, ets);
    * }
    * 
* - * @param parent Required. - * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" - * @param requestId Optional. Unique identifier provided by client, within the ancestor dataset - * scope. Ensures idempotency for expensive long running operations. Server-generated if - * unspecified. Up to 128 characters long. This is returned as - * google.longrunning.Operation.name in the response. Note that this field must not be set if - * the desired input config is catalog_inline_source. - * @param inputConfig Required. The desired input location of the data. - * @param errorsConfig Optional. The desired location of errors incurred during the Import. + * @param parent Required. The parent eventStore name, such as + * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". + * @param userEvent Required. URL encoded UserEvent proto. + * @param uri Optional. The url including cgi-parameters but excluding the hash fragment. The URL + * must be truncated to 1.5K bytes to conservatively be under the 2K bytes. This is often more + * useful than the referer url, because many browsers only send the domain for 3rd party + * requests. + * @param ets Optional. The event timestamp in milliseconds. This prevents browser caching of + * otherwise identical get requests. The name is abbreviated to reduce the payload bytes. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ - @BetaApi( - "The surface for long-running operations is not stable yet and may change in the future.") - public final OperationFuture importUserEventsAsync( - String parent, String requestId, InputConfig inputConfig, ImportErrorsConfig errorsConfig) { - EVENT_STORE_PATH_TEMPLATE.validate(parent, "importUserEvents"); - ImportUserEventsRequest request = - ImportUserEventsRequest.newBuilder() + public final HttpBody collectUserEvent( + EventStoreName parent, String userEvent, String uri, long ets) { + CollectUserEventRequest request = + CollectUserEventRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setUserEvent(userEvent) + .setUri(uri) + .setEts(ets) + .build(); + return collectUserEvent(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Writes a single user event from the browser. This uses a GET request to due to browser + * restriction of POST-ing to a 3rd party domain. + * + *

This method is used only by the Recommendations AI JavaScript pixel. Users should not call + * this method directly. + * + *

Sample code: + * + *


+   * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String userEvent = "";
+   *   String uri = "";
+   *   long ets = 0L;
+   *   HttpBody response = userEventServiceClient.collectUserEvent(parent.toString(), userEvent, uri, ets);
+   * }
+   * 
+ * + * @param parent Required. The parent eventStore name, such as + * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". + * @param userEvent Required. URL encoded UserEvent proto. + * @param uri Optional. The url including cgi-parameters but excluding the hash fragment. The URL + * must be truncated to 1.5K bytes to conservatively be under the 2K bytes. This is often more + * useful than the referer url, because many browsers only send the domain for 3rd party + * requests. + * @param ets Optional. The event timestamp in milliseconds. This prevents browser caching of + * otherwise identical get requests. The name is abbreviated to reduce the payload bytes. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final HttpBody collectUserEvent(String parent, String userEvent, String uri, long ets) { + CollectUserEventRequest request = + CollectUserEventRequest.newBuilder() .setParent(parent) - .setRequestId(requestId) - .setInputConfig(inputConfig) - .setErrorsConfig(errorsConfig) + .setUserEvent(userEvent) + .setUri(uri) + .setEts(ets) .build(); - return importUserEventsAsync(request); + return collectUserEvent(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Bulk import of User events. Request processing might be synchronous. Events that already exist - * are skipped. Use this method for backfilling historical user events. + * Writes a single user event from the browser. This uses a GET request to due to browser + * restriction of POST-ing to a 3rd party domain. * - *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the - * items to be successfully inserted. Operation.metadata is of type ImportMetadata. + *

This method is used only by the Recommendations AI JavaScript pixel. Users should not call + * this method directly. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   InputConfig inputConfig = InputConfig.newBuilder().build();
-   *   ImportUserEventsRequest request = ImportUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setInputConfig(inputConfig)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String userEvent = "";
+   *   CollectUserEventRequest request = CollectUserEventRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setUserEvent(userEvent)
    *     .build();
-   *   ImportUserEventsResponse response = userEventServiceClient.importUserEventsAsync(request).get();
+   *   HttpBody response = userEventServiceClient.collectUserEvent(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 */ - @BetaApi( - "The surface for long-running operations is not stable yet and may change in the future.") - public final OperationFuture importUserEventsAsync( - ImportUserEventsRequest request) { - return importUserEventsOperationCallable().futureCall(request); + public final HttpBody collectUserEvent(CollectUserEventRequest request) { + return collectUserEventCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Bulk import of User events. Request processing might be synchronous. Events that already exist - * are skipped. Use this method for backfilling historical user events. + * Writes a single user event from the browser. This uses a GET request to due to browser + * restriction of POST-ing to a 3rd party domain. * - *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the - * items to be successfully inserted. Operation.metadata is of type ImportMetadata. + *

This method is used only by the Recommendations AI JavaScript pixel. Users should not call + * this method directly. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   InputConfig inputConfig = InputConfig.newBuilder().build();
-   *   ImportUserEventsRequest request = ImportUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setInputConfig(inputConfig)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String userEvent = "";
+   *   CollectUserEventRequest request = CollectUserEventRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .setUserEvent(userEvent)
    *     .build();
-   *   OperationFuture<ImportUserEventsResponse, ImportMetadata> future = userEventServiceClient.importUserEventsOperationCallable().futureCall(request);
+   *   ApiFuture<HttpBody> future = userEventServiceClient.collectUserEventCallable().futureCall(request);
    *   // Do something
-   *   ImportUserEventsResponse response = future.get();
+   *   HttpBody response = future.get();
    * }
    * 
*/ - @BetaApi("The surface for use by generated code is not stable yet and may change in the future.") - public final OperationCallable - importUserEventsOperationCallable() { - return stub.importUserEventsOperationCallable(); + public final UnaryCallable collectUserEventCallable() { + return stub.collectUserEventCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD /** - * Bulk import of User events. Request processing might be synchronous. Events that already exist - * are skipped. Use this method for backfilling historical user events. + * Gets a list of user events within a time range, with potential filtering. * - *

Operation.response is of type ImportResponse. Note that it is possible for a subset of the - * items to be successfully inserted. Operation.metadata is of type ImportMetadata. + *

Sample code: + * + *


+   * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String filter = "";
+   *   for (UserEvent element : userEventServiceClient.listUserEvents(parent, filter).iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
+   * }
+   * 
+ * + * @param parent Required. The parent eventStore resource name, such as + * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". + * @param filter Optional. Filtering expression to specify restrictions over returned events. This + * is a sequence of terms, where each term applies some kind of a restriction to the returned + * user events. Use this expression to restrict results to a specific time range, or filter + * events by eventType. eg: eventTime > "2012-04-23T18:25:43.511Z" + * eventsMissingCatalogItems eventTime<"2012-04-23T18:25:43.511Z" eventType=search + *

We expect only 3 types of fields: + *

* eventTime: this can be specified a maximum of 2 times, once with a less than + * operator and once with a greater than operator. The eventTime restrict should result in one + * contiguous valid eventTime range. + *

* eventType: only 1 eventType restriction can be specified. + *

* eventsMissingCatalogItems: specififying this will restrict results to events for + * which catalog items were not found in the catalog. The default behavior is to return only + * those events for which catalog items were found. + *

Some examples of valid filters expressions: + *

* Example 1: eventTime > "2012-04-23T18:25:43.511Z" eventTime < + * "2012-04-23T18:30:43.511Z" * Example 2: eventTime > "2012-04-23T18:25:43.511Z" + * eventType = detail-page-view * Example 3: eventsMissingCatalogItems eventType = search + * eventTime < "2018-04-23T18:30:43.511Z" * Example 4: eventTime > + * "2012-04-23T18:25:43.511Z" * Example 5: eventType = search * Example 6: + * eventsMissingCatalogItems + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final ListUserEventsPagedResponse listUserEvents(EventStoreName parent, String filter) { + ListUserEventsRequest request = + ListUserEventsRequest.newBuilder() + .setParent(parent == null ? null : parent.toString()) + .setFilter(filter) + .build(); + return listUserEvents(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Gets a list of user events within a time range, with potential filtering. * *

Sample code: * *


    * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
-   *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-   *   InputConfig inputConfig = InputConfig.newBuilder().build();
-   *   ImportUserEventsRequest request = ImportUserEventsRequest.newBuilder()
-   *     .setParent(formattedParent)
-   *     .setInputConfig(inputConfig)
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   String filter = "";
+   *   for (UserEvent element : userEventServiceClient.listUserEvents(parent.toString(), filter).iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
+   * }
+   * 
+ * + * @param parent Required. The parent eventStore resource name, such as + * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". + * @param filter Optional. Filtering expression to specify restrictions over returned events. This + * is a sequence of terms, where each term applies some kind of a restriction to the returned + * user events. Use this expression to restrict results to a specific time range, or filter + * events by eventType. eg: eventTime > "2012-04-23T18:25:43.511Z" + * eventsMissingCatalogItems eventTime<"2012-04-23T18:25:43.511Z" eventType=search + *

We expect only 3 types of fields: + *

* eventTime: this can be specified a maximum of 2 times, once with a less than + * operator and once with a greater than operator. The eventTime restrict should result in one + * contiguous valid eventTime range. + *

* eventType: only 1 eventType restriction can be specified. + *

* eventsMissingCatalogItems: specififying this will restrict results to events for + * which catalog items were not found in the catalog. The default behavior is to return only + * those events for which catalog items were found. + *

Some examples of valid filters expressions: + *

* Example 1: eventTime > "2012-04-23T18:25:43.511Z" eventTime < + * "2012-04-23T18:30:43.511Z" * Example 2: eventTime > "2012-04-23T18:25:43.511Z" + * eventType = detail-page-view * Example 3: eventsMissingCatalogItems eventType = search + * eventTime < "2018-04-23T18:30:43.511Z" * Example 4: eventTime > + * "2012-04-23T18:25:43.511Z" * Example 5: eventType = search * Example 6: + * eventsMissingCatalogItems + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final ListUserEventsPagedResponse listUserEvents(String parent, String filter) { + ListUserEventsRequest request = + ListUserEventsRequest.newBuilder().setParent(parent).setFilter(filter).build(); + return listUserEvents(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Gets a list of user events within a time range, with potential filtering. + * + *

Sample code: + * + *


+   * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   ListUserEventsRequest request = ListUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
    *     .build();
-   *   ApiFuture<Operation> future = userEventServiceClient.importUserEventsCallable().futureCall(request);
+   *   for (UserEvent element : userEventServiceClient.listUserEvents(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 ListUserEventsPagedResponse listUserEvents(ListUserEventsRequest request) { + return listUserEventsPagedCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Gets a list of user events within a time range, with potential filtering. + * + *

Sample code: + * + *


+   * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   ListUserEventsRequest request = ListUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .build();
+   *   ApiFuture<ListUserEventsPagedResponse> future = userEventServiceClient.listUserEventsPagedCallable().futureCall(request);
    *   // Do something
-   *   Operation response = future.get();
+   *   for (UserEvent element : future.get().iterateAll()) {
+   *     // doThingsWith(element);
+   *   }
    * }
    * 
*/ - public final UnaryCallable importUserEventsCallable() { - return stub.importUserEventsCallable(); + public final UnaryCallable + listUserEventsPagedCallable() { + return stub.listUserEventsPagedCallable(); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD + /** + * Gets a list of user events within a time range, with potential filtering. + * + *

Sample code: + * + *


+   * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
+   *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+   *   ListUserEventsRequest request = ListUserEventsRequest.newBuilder()
+   *     .setParent(parent.toString())
+   *     .build();
+   *   while (true) {
+   *     ListUserEventsResponse response = userEventServiceClient.listUserEventsCallable().call(request);
+   *     for (UserEvent element : response.getUserEventsList()) {
+   *       // doThingsWith(element);
+   *     }
+   *     String nextPageToken = response.getNextPageToken();
+   *     if (!Strings.isNullOrEmpty(nextPageToken)) {
+   *       request = request.toBuilder().setPageToken(nextPageToken).build();
+   *     } else {
+   *       break;
+   *     }
+   *   }
+   * }
+   * 
+ */ + public final UnaryCallable + listUserEventsCallable() { + return stub.listUserEventsCallable(); } @Override diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceSettings.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceSettings.java index 8d861f9e..51405015 100644 --- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceSettings.java +++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceSettings.java @@ -71,23 +71,6 @@ @Generated("by gapic-generator") @BetaApi public class UserEventServiceSettings extends ClientSettings { - /** Returns the object with the settings used for calls to writeUserEvent. */ - public UnaryCallSettings writeUserEventSettings() { - return ((UserEventServiceStubSettings) getStubSettings()).writeUserEventSettings(); - } - - /** Returns the object with the settings used for calls to collectUserEvent. */ - public UnaryCallSettings collectUserEventSettings() { - return ((UserEventServiceStubSettings) getStubSettings()).collectUserEventSettings(); - } - - /** Returns the object with the settings used for calls to listUserEvents. */ - public PagedCallSettings< - ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse> - listUserEventsSettings() { - return ((UserEventServiceStubSettings) getStubSettings()).listUserEventsSettings(); - } - /** Returns the object with the settings used for calls to purgeUserEvents. */ public UnaryCallSettings purgeUserEventsSettings() { return ((UserEventServiceStubSettings) getStubSettings()).purgeUserEventsSettings(); @@ -115,6 +98,23 @@ public UnaryCallSettings importUserEventsSet return ((UserEventServiceStubSettings) getStubSettings()).importUserEventsOperationSettings(); } + /** Returns the object with the settings used for calls to writeUserEvent. */ + public UnaryCallSettings writeUserEventSettings() { + return ((UserEventServiceStubSettings) getStubSettings()).writeUserEventSettings(); + } + + /** Returns the object with the settings used for calls to collectUserEvent. */ + public UnaryCallSettings collectUserEventSettings() { + return ((UserEventServiceStubSettings) getStubSettings()).collectUserEventSettings(); + } + + /** Returns the object with the settings used for calls to listUserEvents. */ + public PagedCallSettings< + ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse> + listUserEventsSettings() { + return ((UserEventServiceStubSettings) getStubSettings()).listUserEventsSettings(); + } + public static final UserEventServiceSettings create(UserEventServiceStubSettings stub) throws IOException { return new UserEventServiceSettings.Builder(stub.toBuilder()).build(); @@ -212,23 +212,6 @@ public Builder applyToAllUnaryMethods( return this; } - /** Returns the builder for the settings used for calls to writeUserEvent. */ - public UnaryCallSettings.Builder writeUserEventSettings() { - return getStubSettingsBuilder().writeUserEventSettings(); - } - - /** Returns the builder for the settings used for calls to collectUserEvent. */ - public UnaryCallSettings.Builder collectUserEventSettings() { - return getStubSettingsBuilder().collectUserEventSettings(); - } - - /** Returns the builder for the settings used for calls to listUserEvents. */ - public PagedCallSettings.Builder< - ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse> - listUserEventsSettings() { - return getStubSettingsBuilder().listUserEventsSettings(); - } - /** Returns the builder for the settings used for calls to purgeUserEvents. */ public UnaryCallSettings.Builder purgeUserEventsSettings() { return getStubSettingsBuilder().purgeUserEventsSettings(); @@ -258,6 +241,23 @@ public UnaryCallSettings.Builder purgeUserEve return getStubSettingsBuilder().importUserEventsOperationSettings(); } + /** Returns the builder for the settings used for calls to writeUserEvent. */ + public UnaryCallSettings.Builder writeUserEventSettings() { + return getStubSettingsBuilder().writeUserEventSettings(); + } + + /** Returns the builder for the settings used for calls to collectUserEvent. */ + public UnaryCallSettings.Builder collectUserEventSettings() { + return getStubSettingsBuilder().collectUserEventSettings(); + } + + /** Returns the builder for the settings used for calls to listUserEvents. */ + public PagedCallSettings.Builder< + ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse> + listUserEventsSettings() { + return getStubSettingsBuilder().listUserEventsSettings(); + } + @Override public UserEventServiceSettings build() throws IOException { return new UserEventServiceSettings(this); diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/package-info.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/package-info.java index 86fcfdb8..31d43fad 100644 --- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/package-info.java +++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/package-info.java @@ -28,9 +28,8 @@ *
  * 
  * try (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
- *   String formattedParent = CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
- *   CatalogItem catalogItem = CatalogItem.newBuilder().build();
- *   CatalogItem response = catalogServiceClient.createCatalogItem(formattedParent, catalogItem);
+ *   CatalogItemPathName name = CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+ *   catalogServiceClient.deleteCatalogItem(name);
  * }
  * 
  * 
@@ -47,9 +46,8 @@ *
  * 
  * try (PredictionApiKeyRegistryClient predictionApiKeyRegistryClient = PredictionApiKeyRegistryClient.create()) {
- *   String formattedParent = PredictionApiKeyRegistryClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
- *   PredictionApiKeyRegistration predictionApiKeyRegistration = PredictionApiKeyRegistration.newBuilder().build();
- *   PredictionApiKeyRegistration response = predictionApiKeyRegistryClient.createPredictionApiKeyRegistration(formattedParent, predictionApiKeyRegistration);
+ *   PredictionApiKeyRegistrationName name = PredictionApiKeyRegistrationName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PREDICTION_API_KEY_REGISTRATION]");
+ *   predictionApiKeyRegistryClient.deletePredictionApiKeyRegistration(name);
  * }
  * 
  * 
@@ -63,13 +61,9 @@ *
  * 
  * try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
- *   String formattedName = PredictionServiceClient.formatPlacementName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+ *   PlacementName name = PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
  *   UserEvent userEvent = UserEvent.newBuilder().build();
- *   PredictRequest request = PredictRequest.newBuilder()
- *     .setName(formattedName)
- *     .setUserEvent(userEvent)
- *     .build();
- *   PredictPagedResponse response = predictionServiceClient.predictPagedCallable(request);
+ *   PredictPagedResponse response = predictionServiceClient.predict(name, userEvent);
  * }
  * 
  * 
@@ -83,9 +77,9 @@ *
  * 
  * try (UserEventServiceClient userEventServiceClient = UserEventServiceClient.create()) {
- *   String formattedParent = UserEventServiceClient.formatEventStoreName("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+ *   EventStoreName parent = EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
  *   UserEvent userEvent = UserEvent.newBuilder().build();
- *   UserEvent response = userEventServiceClient.writeUserEvent(formattedParent, userEvent);
+ *   UserEvent response = userEventServiceClient.writeUserEvent(parent, userEvent);
  * }
  * 
  * 
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/CatalogServiceStub.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/CatalogServiceStub.java index 944c833b..d921aac3 100644 --- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/CatalogServiceStub.java +++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/CatalogServiceStub.java @@ -51,6 +51,21 @@ public OperationsStub getOperationsStub() { throw new UnsupportedOperationException("Not implemented: getOperationsStub()"); } + public UnaryCallable deleteCatalogItemCallable() { + throw new UnsupportedOperationException("Not implemented: deleteCatalogItemCallable()"); + } + + @BetaApi("The surface for use by generated code is not stable yet and may change in the future.") + public OperationCallable + importCatalogItemsOperationCallable() { + throw new UnsupportedOperationException( + "Not implemented: importCatalogItemsOperationCallable()"); + } + + public UnaryCallable importCatalogItemsCallable() { + throw new UnsupportedOperationException("Not implemented: importCatalogItemsCallable()"); + } + public UnaryCallable createCatalogItemCallable() { throw new UnsupportedOperationException("Not implemented: createCatalogItemCallable()"); } @@ -73,21 +88,6 @@ public UnaryCallable updateCatalogItemCal throw new UnsupportedOperationException("Not implemented: updateCatalogItemCallable()"); } - public UnaryCallable deleteCatalogItemCallable() { - throw new UnsupportedOperationException("Not implemented: deleteCatalogItemCallable()"); - } - - @BetaApi("The surface for use by generated code is not stable yet and may change in the future.") - public OperationCallable - importCatalogItemsOperationCallable() { - throw new UnsupportedOperationException( - "Not implemented: importCatalogItemsOperationCallable()"); - } - - public UnaryCallable importCatalogItemsCallable() { - throw new UnsupportedOperationException("Not implemented: importCatalogItemsCallable()"); - } - @Override public abstract void close(); } diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/CatalogServiceStubSettings.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/CatalogServiceStubSettings.java index 5745275c..b61b4520 100644 --- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/CatalogServiceStubSettings.java +++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/CatalogServiceStubSettings.java @@ -80,16 +80,16 @@ *

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 total timeout of createCatalogItem to 30 seconds: + *

For example, to set the total timeout of deleteCatalogItem to 30 seconds: * *

  * 
  * CatalogServiceStubSettings.Builder catalogServiceSettingsBuilder =
  *     CatalogServiceStubSettings.newBuilder();
  * catalogServiceSettingsBuilder
- *     .createCatalogItemSettings()
+ *     .deleteCatalogItemSettings()
  *     .setRetrySettings(
- *         catalogServiceSettingsBuilder.createCatalogItemSettings().getRetrySettings().toBuilder()
+ *         catalogServiceSettingsBuilder.deleteCatalogItemSettings().getRetrySettings().toBuilder()
  *             .setTotalTimeout(Duration.ofSeconds(30))
  *             .build());
  * CatalogServiceStubSettings catalogServiceSettings = catalogServiceSettingsBuilder.build();
@@ -103,17 +103,35 @@ public class CatalogServiceStubSettings extends StubSettings DEFAULT_SERVICE_SCOPES =
       ImmutableList.builder().add("https://www.googleapis.com/auth/cloud-platform").build();
 
+  private final UnaryCallSettings deleteCatalogItemSettings;
+  private final UnaryCallSettings importCatalogItemsSettings;
+  private final OperationCallSettings<
+          ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
+      importCatalogItemsOperationSettings;
   private final UnaryCallSettings createCatalogItemSettings;
   private final UnaryCallSettings getCatalogItemSettings;
   private final PagedCallSettings<
           ListCatalogItemsRequest, ListCatalogItemsResponse, ListCatalogItemsPagedResponse>
       listCatalogItemsSettings;
   private final UnaryCallSettings updateCatalogItemSettings;
-  private final UnaryCallSettings deleteCatalogItemSettings;
-  private final UnaryCallSettings importCatalogItemsSettings;
-  private final OperationCallSettings<
+
+  /** Returns the object with the settings used for calls to deleteCatalogItem. */
+  public UnaryCallSettings deleteCatalogItemSettings() {
+    return deleteCatalogItemSettings;
+  }
+
+  /** Returns the object with the settings used for calls to importCatalogItems. */
+  public UnaryCallSettings importCatalogItemsSettings() {
+    return importCatalogItemsSettings;
+  }
+
+  /** Returns the object with the settings used for calls to importCatalogItems. */
+  @BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
+  public OperationCallSettings<
           ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
-      importCatalogItemsOperationSettings;
+      importCatalogItemsOperationSettings() {
+    return importCatalogItemsOperationSettings;
+  }
 
   /** Returns the object with the settings used for calls to createCatalogItem. */
   public UnaryCallSettings createCatalogItemSettings() {
@@ -137,24 +155,6 @@ public UnaryCallSettings updateCatalogIte
     return updateCatalogItemSettings;
   }
 
-  /** Returns the object with the settings used for calls to deleteCatalogItem. */
-  public UnaryCallSettings deleteCatalogItemSettings() {
-    return deleteCatalogItemSettings;
-  }
-
-  /** Returns the object with the settings used for calls to importCatalogItems. */
-  public UnaryCallSettings importCatalogItemsSettings() {
-    return importCatalogItemsSettings;
-  }
-
-  /** Returns the object with the settings used for calls to importCatalogItems. */
-  @BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
-  public OperationCallSettings<
-          ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
-      importCatalogItemsOperationSettings() {
-    return importCatalogItemsOperationSettings;
-  }
-
   @BetaApi("A restructuring of stub classes is planned, so this may break in the future")
   public CatalogServiceStub createStub() throws IOException {
     if (getTransportChannelProvider()
@@ -224,14 +224,14 @@ public Builder toBuilder() {
   protected CatalogServiceStubSettings(Builder settingsBuilder) throws IOException {
     super(settingsBuilder);
 
-    createCatalogItemSettings = settingsBuilder.createCatalogItemSettings().build();
-    getCatalogItemSettings = settingsBuilder.getCatalogItemSettings().build();
-    listCatalogItemsSettings = settingsBuilder.listCatalogItemsSettings().build();
-    updateCatalogItemSettings = settingsBuilder.updateCatalogItemSettings().build();
     deleteCatalogItemSettings = settingsBuilder.deleteCatalogItemSettings().build();
     importCatalogItemsSettings = settingsBuilder.importCatalogItemsSettings().build();
     importCatalogItemsOperationSettings =
         settingsBuilder.importCatalogItemsOperationSettings().build();
+    createCatalogItemSettings = settingsBuilder.createCatalogItemSettings().build();
+    getCatalogItemSettings = settingsBuilder.getCatalogItemSettings().build();
+    listCatalogItemsSettings = settingsBuilder.listCatalogItemsSettings().build();
+    updateCatalogItemSettings = settingsBuilder.updateCatalogItemSettings().build();
   }
 
   private static final PagedListDescriptor<
@@ -297,6 +297,13 @@ public ApiFuture getFuturePagedResponse(
   public static class Builder extends StubSettings.Builder {
     private final ImmutableList> unaryMethodSettingsBuilders;
 
+    private final UnaryCallSettings.Builder
+        deleteCatalogItemSettings;
+    private final UnaryCallSettings.Builder
+        importCatalogItemsSettings;
+    private final OperationCallSettings.Builder<
+            ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
+        importCatalogItemsOperationSettings;
     private final UnaryCallSettings.Builder
         createCatalogItemSettings;
     private final UnaryCallSettings.Builder
@@ -306,13 +313,6 @@ public static class Builder extends StubSettings.Builder
         updateCatalogItemSettings;
-    private final UnaryCallSettings.Builder
-        deleteCatalogItemSettings;
-    private final UnaryCallSettings.Builder
-        importCatalogItemsSettings;
-    private final OperationCallSettings.Builder<
-            ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
-        importCatalogItemsOperationSettings;
 
     private static final ImmutableMap>
         RETRYABLE_CODE_DEFINITIONS;
@@ -355,6 +355,12 @@ protected Builder() {
     protected Builder(ClientContext clientContext) {
       super(clientContext);
 
+      deleteCatalogItemSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
+
+      importCatalogItemsSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
+
+      importCatalogItemsOperationSettings = OperationCallSettings.newBuilder();
+
       createCatalogItemSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
 
       getCatalogItemSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
@@ -363,20 +369,14 @@ protected Builder(ClientContext clientContext) {
 
       updateCatalogItemSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
 
-      deleteCatalogItemSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
-
-      importCatalogItemsSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
-
-      importCatalogItemsOperationSettings = OperationCallSettings.newBuilder();
-
       unaryMethodSettingsBuilders =
           ImmutableList.>of(
+              deleteCatalogItemSettings,
+              importCatalogItemsSettings,
               createCatalogItemSettings,
               getCatalogItemSettings,
               listCatalogItemsSettings,
-              updateCatalogItemSettings,
-              deleteCatalogItemSettings,
-              importCatalogItemsSettings);
+              updateCatalogItemSettings);
 
       initDefaults(this);
     }
@@ -393,32 +393,32 @@ private static Builder createDefault() {
     private static Builder initDefaults(Builder builder) {
 
       builder
-          .createCatalogItemSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
+          .deleteCatalogItemSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .getCatalogItemSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
+          .importCatalogItemsSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .listCatalogItemsSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
+          .createCatalogItemSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .updateCatalogItemSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
+          .getCatalogItemSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .deleteCatalogItemSettings()
+          .listCatalogItemsSettings()
           .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .importCatalogItemsSettings()
+          .updateCatalogItemSettings()
           .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
       builder
@@ -452,23 +452,23 @@ private static Builder initDefaults(Builder builder) {
     protected Builder(CatalogServiceStubSettings settings) {
       super(settings);
 
-      createCatalogItemSettings = settings.createCatalogItemSettings.toBuilder();
-      getCatalogItemSettings = settings.getCatalogItemSettings.toBuilder();
-      listCatalogItemsSettings = settings.listCatalogItemsSettings.toBuilder();
-      updateCatalogItemSettings = settings.updateCatalogItemSettings.toBuilder();
       deleteCatalogItemSettings = settings.deleteCatalogItemSettings.toBuilder();
       importCatalogItemsSettings = settings.importCatalogItemsSettings.toBuilder();
       importCatalogItemsOperationSettings =
           settings.importCatalogItemsOperationSettings.toBuilder();
+      createCatalogItemSettings = settings.createCatalogItemSettings.toBuilder();
+      getCatalogItemSettings = settings.getCatalogItemSettings.toBuilder();
+      listCatalogItemsSettings = settings.listCatalogItemsSettings.toBuilder();
+      updateCatalogItemSettings = settings.updateCatalogItemSettings.toBuilder();
 
       unaryMethodSettingsBuilders =
           ImmutableList.>of(
+              deleteCatalogItemSettings,
+              importCatalogItemsSettings,
               createCatalogItemSettings,
               getCatalogItemSettings,
               listCatalogItemsSettings,
-              updateCatalogItemSettings,
-              deleteCatalogItemSettings,
-              importCatalogItemsSettings);
+              updateCatalogItemSettings);
     }
 
     // NEXT_MAJOR_VER: remove 'throws Exception'
@@ -487,6 +487,26 @@ public Builder applyToAllUnaryMethods(
       return unaryMethodSettingsBuilders;
     }
 
+    /** Returns the builder for the settings used for calls to deleteCatalogItem. */
+    public UnaryCallSettings.Builder deleteCatalogItemSettings() {
+      return deleteCatalogItemSettings;
+    }
+
+    /** Returns the builder for the settings used for calls to importCatalogItems. */
+    public UnaryCallSettings.Builder
+        importCatalogItemsSettings() {
+      return importCatalogItemsSettings;
+    }
+
+    /** Returns the builder for the settings used for calls to importCatalogItems. */
+    @BetaApi(
+        "The surface for use by generated code is not stable yet and may change in the future.")
+    public OperationCallSettings.Builder<
+            ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
+        importCatalogItemsOperationSettings() {
+      return importCatalogItemsOperationSettings;
+    }
+
     /** Returns the builder for the settings used for calls to createCatalogItem. */
     public UnaryCallSettings.Builder
         createCatalogItemSettings() {
@@ -511,26 +531,6 @@ public UnaryCallSettings.Builder getCatalogI
       return updateCatalogItemSettings;
     }
 
-    /** Returns the builder for the settings used for calls to deleteCatalogItem. */
-    public UnaryCallSettings.Builder deleteCatalogItemSettings() {
-      return deleteCatalogItemSettings;
-    }
-
-    /** Returns the builder for the settings used for calls to importCatalogItems. */
-    public UnaryCallSettings.Builder
-        importCatalogItemsSettings() {
-      return importCatalogItemsSettings;
-    }
-
-    /** Returns the builder for the settings used for calls to importCatalogItems. */
-    @BetaApi(
-        "The surface for use by generated code is not stable yet and may change in the future.")
-    public OperationCallSettings.Builder<
-            ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
-        importCatalogItemsOperationSettings() {
-      return importCatalogItemsOperationSettings;
-    }
-
     @Override
     public CatalogServiceStubSettings build() throws IOException {
       return new CatalogServiceStubSettings(this);
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcCatalogServiceStub.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcCatalogServiceStub.java
index 2902dd74..6e75f27d 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcCatalogServiceStub.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcCatalogServiceStub.java
@@ -57,6 +57,26 @@
 @BetaApi("A restructuring of stub classes is planned, so this may break in the future")
 public class GrpcCatalogServiceStub extends CatalogServiceStub {
 
+  private static final MethodDescriptor
+      deleteCatalogItemMethodDescriptor =
+          MethodDescriptor.newBuilder()
+              .setType(MethodDescriptor.MethodType.UNARY)
+              .setFullMethodName(
+                  "google.cloud.recommendationengine.v1beta1.CatalogService/DeleteCatalogItem")
+              .setRequestMarshaller(
+                  ProtoUtils.marshaller(DeleteCatalogItemRequest.getDefaultInstance()))
+              .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
+              .build();
+  private static final MethodDescriptor
+      importCatalogItemsMethodDescriptor =
+          MethodDescriptor.newBuilder()
+              .setType(MethodDescriptor.MethodType.UNARY)
+              .setFullMethodName(
+                  "google.cloud.recommendationengine.v1beta1.CatalogService/ImportCatalogItems")
+              .setRequestMarshaller(
+                  ProtoUtils.marshaller(ImportCatalogItemsRequest.getDefaultInstance()))
+              .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
+              .build();
   private static final MethodDescriptor
       createCatalogItemMethodDescriptor =
           MethodDescriptor.newBuilder()
@@ -98,30 +118,15 @@ public class GrpcCatalogServiceStub extends CatalogServiceStub {
                   ProtoUtils.marshaller(UpdateCatalogItemRequest.getDefaultInstance()))
               .setResponseMarshaller(ProtoUtils.marshaller(CatalogItem.getDefaultInstance()))
               .build();
-  private static final MethodDescriptor
-      deleteCatalogItemMethodDescriptor =
-          MethodDescriptor.newBuilder()
-              .setType(MethodDescriptor.MethodType.UNARY)
-              .setFullMethodName(
-                  "google.cloud.recommendationengine.v1beta1.CatalogService/DeleteCatalogItem")
-              .setRequestMarshaller(
-                  ProtoUtils.marshaller(DeleteCatalogItemRequest.getDefaultInstance()))
-              .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
-              .build();
-  private static final MethodDescriptor
-      importCatalogItemsMethodDescriptor =
-          MethodDescriptor.newBuilder()
-              .setType(MethodDescriptor.MethodType.UNARY)
-              .setFullMethodName(
-                  "google.cloud.recommendationengine.v1beta1.CatalogService/ImportCatalogItems")
-              .setRequestMarshaller(
-                  ProtoUtils.marshaller(ImportCatalogItemsRequest.getDefaultInstance()))
-              .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
-              .build();
 
   private final BackgroundResource backgroundResources;
   private final GrpcOperationsStub operationsStub;
 
+  private final UnaryCallable deleteCatalogItemCallable;
+  private final UnaryCallable importCatalogItemsCallable;
+  private final OperationCallable<
+          ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
+      importCatalogItemsOperationCallable;
   private final UnaryCallable createCatalogItemCallable;
   private final UnaryCallable getCatalogItemCallable;
   private final UnaryCallable
@@ -129,11 +134,6 @@ public class GrpcCatalogServiceStub extends CatalogServiceStub {
   private final UnaryCallable
       listCatalogItemsPagedCallable;
   private final UnaryCallable updateCatalogItemCallable;
-  private final UnaryCallable deleteCatalogItemCallable;
-  private final UnaryCallable importCatalogItemsCallable;
-  private final OperationCallable<
-          ImportCatalogItemsRequest, ImportCatalogItemsResponse, ImportMetadata>
-      importCatalogItemsOperationCallable;
 
   private final GrpcStubCallableFactory callableFactory;
 
@@ -177,6 +177,32 @@ protected GrpcCatalogServiceStub(
     this.callableFactory = callableFactory;
     this.operationsStub = GrpcOperationsStub.create(clientContext, callableFactory);
 
+    GrpcCallSettings deleteCatalogItemTransportSettings =
+        GrpcCallSettings.newBuilder()
+            .setMethodDescriptor(deleteCatalogItemMethodDescriptor)
+            .setParamsExtractor(
+                new RequestParamsExtractor() {
+                  @Override
+                  public Map extract(DeleteCatalogItemRequest request) {
+                    ImmutableMap.Builder params = ImmutableMap.builder();
+                    params.put("name", String.valueOf(request.getName()));
+                    return params.build();
+                  }
+                })
+            .build();
+    GrpcCallSettings importCatalogItemsTransportSettings =
+        GrpcCallSettings.newBuilder()
+            .setMethodDescriptor(importCatalogItemsMethodDescriptor)
+            .setParamsExtractor(
+                new RequestParamsExtractor() {
+                  @Override
+                  public Map extract(ImportCatalogItemsRequest request) {
+                    ImmutableMap.Builder params = ImmutableMap.builder();
+                    params.put("parent", String.valueOf(request.getParent()));
+                    return params.build();
+                  }
+                })
+            .build();
     GrpcCallSettings createCatalogItemTransportSettings =
         GrpcCallSettings.newBuilder()
             .setMethodDescriptor(createCatalogItemMethodDescriptor)
@@ -230,33 +256,23 @@ public Map extract(UpdateCatalogItemRequest request) {
                   }
                 })
             .build();
-    GrpcCallSettings deleteCatalogItemTransportSettings =
-        GrpcCallSettings.newBuilder()
-            .setMethodDescriptor(deleteCatalogItemMethodDescriptor)
-            .setParamsExtractor(
-                new RequestParamsExtractor() {
-                  @Override
-                  public Map extract(DeleteCatalogItemRequest request) {
-                    ImmutableMap.Builder params = ImmutableMap.builder();
-                    params.put("name", String.valueOf(request.getName()));
-                    return params.build();
-                  }
-                })
-            .build();
-    GrpcCallSettings importCatalogItemsTransportSettings =
-        GrpcCallSettings.newBuilder()
-            .setMethodDescriptor(importCatalogItemsMethodDescriptor)
-            .setParamsExtractor(
-                new RequestParamsExtractor() {
-                  @Override
-                  public Map extract(ImportCatalogItemsRequest request) {
-                    ImmutableMap.Builder params = ImmutableMap.builder();
-                    params.put("parent", String.valueOf(request.getParent()));
-                    return params.build();
-                  }
-                })
-            .build();
 
+    this.deleteCatalogItemCallable =
+        callableFactory.createUnaryCallable(
+            deleteCatalogItemTransportSettings,
+            settings.deleteCatalogItemSettings(),
+            clientContext);
+    this.importCatalogItemsCallable =
+        callableFactory.createUnaryCallable(
+            importCatalogItemsTransportSettings,
+            settings.importCatalogItemsSettings(),
+            clientContext);
+    this.importCatalogItemsOperationCallable =
+        callableFactory.createOperationCallable(
+            importCatalogItemsTransportSettings,
+            settings.importCatalogItemsOperationSettings(),
+            clientContext,
+            this.operationsStub);
     this.createCatalogItemCallable =
         callableFactory.createUnaryCallable(
             createCatalogItemTransportSettings,
@@ -276,22 +292,6 @@ public Map extract(ImportCatalogItemsRequest request) {
             updateCatalogItemTransportSettings,
             settings.updateCatalogItemSettings(),
             clientContext);
-    this.deleteCatalogItemCallable =
-        callableFactory.createUnaryCallable(
-            deleteCatalogItemTransportSettings,
-            settings.deleteCatalogItemSettings(),
-            clientContext);
-    this.importCatalogItemsCallable =
-        callableFactory.createUnaryCallable(
-            importCatalogItemsTransportSettings,
-            settings.importCatalogItemsSettings(),
-            clientContext);
-    this.importCatalogItemsOperationCallable =
-        callableFactory.createOperationCallable(
-            importCatalogItemsTransportSettings,
-            settings.importCatalogItemsOperationSettings(),
-            clientContext,
-            this.operationsStub);
 
     backgroundResources = new BackgroundResourceAggregation(clientContext.getBackgroundResources());
   }
@@ -301,6 +301,20 @@ public GrpcOperationsStub getOperationsStub() {
     return operationsStub;
   }
 
+  public UnaryCallable deleteCatalogItemCallable() {
+    return deleteCatalogItemCallable;
+  }
+
+  @BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
+  public OperationCallable
+      importCatalogItemsOperationCallable() {
+    return importCatalogItemsOperationCallable;
+  }
+
+  public UnaryCallable importCatalogItemsCallable() {
+    return importCatalogItemsCallable;
+  }
+
   public UnaryCallable createCatalogItemCallable() {
     return createCatalogItemCallable;
   }
@@ -323,20 +337,6 @@ public UnaryCallable updateCatalogItemCal
     return updateCatalogItemCallable;
   }
 
-  public UnaryCallable deleteCatalogItemCallable() {
-    return deleteCatalogItemCallable;
-  }
-
-  @BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
-  public OperationCallable
-      importCatalogItemsOperationCallable() {
-    return importCatalogItemsOperationCallable;
-  }
-
-  public UnaryCallable importCatalogItemsCallable() {
-    return importCatalogItemsCallable;
-  }
-
   @Override
   public final void close() {
     shutdown();
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcPredictionApiKeyRegistryStub.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcPredictionApiKeyRegistryStub.java
index fd549a8d..30805cd3 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcPredictionApiKeyRegistryStub.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcPredictionApiKeyRegistryStub.java
@@ -49,6 +49,17 @@
 @BetaApi("A restructuring of stub classes is planned, so this may break in the future")
 public class GrpcPredictionApiKeyRegistryStub extends PredictionApiKeyRegistryStub {
 
+  private static final MethodDescriptor
+      deletePredictionApiKeyRegistrationMethodDescriptor =
+          MethodDescriptor.newBuilder()
+              .setType(MethodDescriptor.MethodType.UNARY)
+              .setFullMethodName(
+                  "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry/DeletePredictionApiKeyRegistration")
+              .setRequestMarshaller(
+                  ProtoUtils.marshaller(
+                      DeletePredictionApiKeyRegistrationRequest.getDefaultInstance()))
+              .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
+              .build();
   private static final MethodDescriptor<
           CreatePredictionApiKeyRegistrationRequest, PredictionApiKeyRegistration>
       createPredictionApiKeyRegistrationMethodDescriptor =
@@ -79,20 +90,11 @@ public class GrpcPredictionApiKeyRegistryStub extends PredictionApiKeyRegistrySt
                   ProtoUtils.marshaller(
                       ListPredictionApiKeyRegistrationsResponse.getDefaultInstance()))
               .build();
-  private static final MethodDescriptor
-      deletePredictionApiKeyRegistrationMethodDescriptor =
-          MethodDescriptor.newBuilder()
-              .setType(MethodDescriptor.MethodType.UNARY)
-              .setFullMethodName(
-                  "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry/DeletePredictionApiKeyRegistration")
-              .setRequestMarshaller(
-                  ProtoUtils.marshaller(
-                      DeletePredictionApiKeyRegistrationRequest.getDefaultInstance()))
-              .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
-              .build();
 
   private final BackgroundResource backgroundResources;
 
+  private final UnaryCallable
+      deletePredictionApiKeyRegistrationCallable;
   private final UnaryCallable<
           CreatePredictionApiKeyRegistrationRequest, PredictionApiKeyRegistration>
       createPredictionApiKeyRegistrationCallable;
@@ -102,8 +104,6 @@ public class GrpcPredictionApiKeyRegistryStub extends PredictionApiKeyRegistrySt
   private final UnaryCallable<
           ListPredictionApiKeyRegistrationsRequest, ListPredictionApiKeyRegistrationsPagedResponse>
       listPredictionApiKeyRegistrationsPagedCallable;
-  private final UnaryCallable
-      deletePredictionApiKeyRegistrationCallable;
 
   private final GrpcStubCallableFactory callableFactory;
 
@@ -147,6 +147,21 @@ protected GrpcPredictionApiKeyRegistryStub(
       throws IOException {
     this.callableFactory = callableFactory;
 
+    GrpcCallSettings
+        deletePredictionApiKeyRegistrationTransportSettings =
+            GrpcCallSettings.newBuilder()
+                .setMethodDescriptor(deletePredictionApiKeyRegistrationMethodDescriptor)
+                .setParamsExtractor(
+                    new RequestParamsExtractor() {
+                      @Override
+                      public Map extract(
+                          DeletePredictionApiKeyRegistrationRequest request) {
+                        ImmutableMap.Builder params = ImmutableMap.builder();
+                        params.put("name", String.valueOf(request.getName()));
+                        return params.build();
+                      }
+                    })
+                .build();
     GrpcCallSettings
         createPredictionApiKeyRegistrationTransportSettings =
             GrpcCallSettings
@@ -183,22 +198,12 @@ public Map extract(
                       }
                     })
                 .build();
-    GrpcCallSettings
-        deletePredictionApiKeyRegistrationTransportSettings =
-            GrpcCallSettings.newBuilder()
-                .setMethodDescriptor(deletePredictionApiKeyRegistrationMethodDescriptor)
-                .setParamsExtractor(
-                    new RequestParamsExtractor() {
-                      @Override
-                      public Map extract(
-                          DeletePredictionApiKeyRegistrationRequest request) {
-                        ImmutableMap.Builder params = ImmutableMap.builder();
-                        params.put("name", String.valueOf(request.getName()));
-                        return params.build();
-                      }
-                    })
-                .build();
 
+    this.deletePredictionApiKeyRegistrationCallable =
+        callableFactory.createUnaryCallable(
+            deletePredictionApiKeyRegistrationTransportSettings,
+            settings.deletePredictionApiKeyRegistrationSettings(),
+            clientContext);
     this.createPredictionApiKeyRegistrationCallable =
         callableFactory.createUnaryCallable(
             createPredictionApiKeyRegistrationTransportSettings,
@@ -214,15 +219,15 @@ public Map extract(
             listPredictionApiKeyRegistrationsTransportSettings,
             settings.listPredictionApiKeyRegistrationsSettings(),
             clientContext);
-    this.deletePredictionApiKeyRegistrationCallable =
-        callableFactory.createUnaryCallable(
-            deletePredictionApiKeyRegistrationTransportSettings,
-            settings.deletePredictionApiKeyRegistrationSettings(),
-            clientContext);
 
     backgroundResources = new BackgroundResourceAggregation(clientContext.getBackgroundResources());
   }
 
+  public UnaryCallable
+      deletePredictionApiKeyRegistrationCallable() {
+    return deletePredictionApiKeyRegistrationCallable;
+  }
+
   public UnaryCallable
       createPredictionApiKeyRegistrationCallable() {
     return createPredictionApiKeyRegistrationCallable;
@@ -240,11 +245,6 @@ public Map extract(
     return listPredictionApiKeyRegistrationsCallable;
   }
 
-  public UnaryCallable
-      deletePredictionApiKeyRegistrationCallable() {
-    return deletePredictionApiKeyRegistrationCallable;
-  }
-
   @Override
   public final void close() {
     shutdown();
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcUserEventServiceStub.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcUserEventServiceStub.java
index 44e28ed0..079808e5 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcUserEventServiceStub.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/GrpcUserEventServiceStub.java
@@ -58,6 +58,26 @@
 @BetaApi("A restructuring of stub classes is planned, so this may break in the future")
 public class GrpcUserEventServiceStub extends UserEventServiceStub {
 
+  private static final MethodDescriptor
+      purgeUserEventsMethodDescriptor =
+          MethodDescriptor.newBuilder()
+              .setType(MethodDescriptor.MethodType.UNARY)
+              .setFullMethodName(
+                  "google.cloud.recommendationengine.v1beta1.UserEventService/PurgeUserEvents")
+              .setRequestMarshaller(
+                  ProtoUtils.marshaller(PurgeUserEventsRequest.getDefaultInstance()))
+              .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
+              .build();
+  private static final MethodDescriptor
+      importUserEventsMethodDescriptor =
+          MethodDescriptor.newBuilder()
+              .setType(MethodDescriptor.MethodType.UNARY)
+              .setFullMethodName(
+                  "google.cloud.recommendationengine.v1beta1.UserEventService/ImportUserEvents")
+              .setRequestMarshaller(
+                  ProtoUtils.marshaller(ImportUserEventsRequest.getDefaultInstance()))
+              .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
+              .build();
   private static final MethodDescriptor
       writeUserEventMethodDescriptor =
           MethodDescriptor.newBuilder()
@@ -89,35 +109,10 @@ public class GrpcUserEventServiceStub extends UserEventServiceStub {
               .setResponseMarshaller(
                   ProtoUtils.marshaller(ListUserEventsResponse.getDefaultInstance()))
               .build();
-  private static final MethodDescriptor
-      purgeUserEventsMethodDescriptor =
-          MethodDescriptor.newBuilder()
-              .setType(MethodDescriptor.MethodType.UNARY)
-              .setFullMethodName(
-                  "google.cloud.recommendationengine.v1beta1.UserEventService/PurgeUserEvents")
-              .setRequestMarshaller(
-                  ProtoUtils.marshaller(PurgeUserEventsRequest.getDefaultInstance()))
-              .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
-              .build();
-  private static final MethodDescriptor
-      importUserEventsMethodDescriptor =
-          MethodDescriptor.newBuilder()
-              .setType(MethodDescriptor.MethodType.UNARY)
-              .setFullMethodName(
-                  "google.cloud.recommendationengine.v1beta1.UserEventService/ImportUserEvents")
-              .setRequestMarshaller(
-                  ProtoUtils.marshaller(ImportUserEventsRequest.getDefaultInstance()))
-              .setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
-              .build();
 
   private final BackgroundResource backgroundResources;
   private final GrpcOperationsStub operationsStub;
 
-  private final UnaryCallable writeUserEventCallable;
-  private final UnaryCallable collectUserEventCallable;
-  private final UnaryCallable listUserEventsCallable;
-  private final UnaryCallable
-      listUserEventsPagedCallable;
   private final UnaryCallable purgeUserEventsCallable;
   private final OperationCallable<
           PurgeUserEventsRequest, PurgeUserEventsResponse, PurgeUserEventsMetadata>
@@ -125,6 +120,11 @@ public class GrpcUserEventServiceStub extends UserEventServiceStub {
   private final UnaryCallable importUserEventsCallable;
   private final OperationCallable
       importUserEventsOperationCallable;
+  private final UnaryCallable writeUserEventCallable;
+  private final UnaryCallable collectUserEventCallable;
+  private final UnaryCallable listUserEventsCallable;
+  private final UnaryCallable
+      listUserEventsPagedCallable;
 
   private final GrpcStubCallableFactory callableFactory;
 
@@ -168,6 +168,32 @@ protected GrpcUserEventServiceStub(
     this.callableFactory = callableFactory;
     this.operationsStub = GrpcOperationsStub.create(clientContext, callableFactory);
 
+    GrpcCallSettings purgeUserEventsTransportSettings =
+        GrpcCallSettings.newBuilder()
+            .setMethodDescriptor(purgeUserEventsMethodDescriptor)
+            .setParamsExtractor(
+                new RequestParamsExtractor() {
+                  @Override
+                  public Map extract(PurgeUserEventsRequest request) {
+                    ImmutableMap.Builder params = ImmutableMap.builder();
+                    params.put("parent", String.valueOf(request.getParent()));
+                    return params.build();
+                  }
+                })
+            .build();
+    GrpcCallSettings importUserEventsTransportSettings =
+        GrpcCallSettings.newBuilder()
+            .setMethodDescriptor(importUserEventsMethodDescriptor)
+            .setParamsExtractor(
+                new RequestParamsExtractor() {
+                  @Override
+                  public Map extract(ImportUserEventsRequest request) {
+                    ImmutableMap.Builder params = ImmutableMap.builder();
+                    params.put("parent", String.valueOf(request.getParent()));
+                    return params.build();
+                  }
+                })
+            .build();
     GrpcCallSettings writeUserEventTransportSettings =
         GrpcCallSettings.newBuilder()
             .setMethodDescriptor(writeUserEventMethodDescriptor)
@@ -208,45 +234,7 @@ public Map extract(ListUserEventsRequest request) {
                       }
                     })
                 .build();
-    GrpcCallSettings purgeUserEventsTransportSettings =
-        GrpcCallSettings.newBuilder()
-            .setMethodDescriptor(purgeUserEventsMethodDescriptor)
-            .setParamsExtractor(
-                new RequestParamsExtractor() {
-                  @Override
-                  public Map extract(PurgeUserEventsRequest request) {
-                    ImmutableMap.Builder params = ImmutableMap.builder();
-                    params.put("parent", String.valueOf(request.getParent()));
-                    return params.build();
-                  }
-                })
-            .build();
-    GrpcCallSettings importUserEventsTransportSettings =
-        GrpcCallSettings.newBuilder()
-            .setMethodDescriptor(importUserEventsMethodDescriptor)
-            .setParamsExtractor(
-                new RequestParamsExtractor() {
-                  @Override
-                  public Map extract(ImportUserEventsRequest request) {
-                    ImmutableMap.Builder params = ImmutableMap.builder();
-                    params.put("parent", String.valueOf(request.getParent()));
-                    return params.build();
-                  }
-                })
-            .build();
 
-    this.writeUserEventCallable =
-        callableFactory.createUnaryCallable(
-            writeUserEventTransportSettings, settings.writeUserEventSettings(), clientContext);
-    this.collectUserEventCallable =
-        callableFactory.createUnaryCallable(
-            collectUserEventTransportSettings, settings.collectUserEventSettings(), clientContext);
-    this.listUserEventsCallable =
-        callableFactory.createUnaryCallable(
-            listUserEventsTransportSettings, settings.listUserEventsSettings(), clientContext);
-    this.listUserEventsPagedCallable =
-        callableFactory.createPagedCallable(
-            listUserEventsTransportSettings, settings.listUserEventsSettings(), clientContext);
     this.purgeUserEventsCallable =
         callableFactory.createUnaryCallable(
             purgeUserEventsTransportSettings, settings.purgeUserEventsSettings(), clientContext);
@@ -265,6 +253,18 @@ public Map extract(ImportUserEventsRequest request) {
             settings.importUserEventsOperationSettings(),
             clientContext,
             this.operationsStub);
+    this.writeUserEventCallable =
+        callableFactory.createUnaryCallable(
+            writeUserEventTransportSettings, settings.writeUserEventSettings(), clientContext);
+    this.collectUserEventCallable =
+        callableFactory.createUnaryCallable(
+            collectUserEventTransportSettings, settings.collectUserEventSettings(), clientContext);
+    this.listUserEventsCallable =
+        callableFactory.createUnaryCallable(
+            listUserEventsTransportSettings, settings.listUserEventsSettings(), clientContext);
+    this.listUserEventsPagedCallable =
+        callableFactory.createPagedCallable(
+            listUserEventsTransportSettings, settings.listUserEventsSettings(), clientContext);
 
     backgroundResources = new BackgroundResourceAggregation(clientContext.getBackgroundResources());
   }
@@ -274,23 +274,6 @@ public GrpcOperationsStub getOperationsStub() {
     return operationsStub;
   }
 
-  public UnaryCallable writeUserEventCallable() {
-    return writeUserEventCallable;
-  }
-
-  public UnaryCallable collectUserEventCallable() {
-    return collectUserEventCallable;
-  }
-
-  public UnaryCallable
-      listUserEventsPagedCallable() {
-    return listUserEventsPagedCallable;
-  }
-
-  public UnaryCallable listUserEventsCallable() {
-    return listUserEventsCallable;
-  }
-
   @BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
   public OperationCallable
       purgeUserEventsOperationCallable() {
@@ -311,6 +294,23 @@ public UnaryCallable importUserEventsCallabl
     return importUserEventsCallable;
   }
 
+  public UnaryCallable writeUserEventCallable() {
+    return writeUserEventCallable;
+  }
+
+  public UnaryCallable collectUserEventCallable() {
+    return collectUserEventCallable;
+  }
+
+  public UnaryCallable
+      listUserEventsPagedCallable() {
+    return listUserEventsPagedCallable;
+  }
+
+  public UnaryCallable listUserEventsCallable() {
+    return listUserEventsCallable;
+  }
+
   @Override
   public final void close() {
     shutdown();
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionApiKeyRegistryStub.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionApiKeyRegistryStub.java
index 28c95631..32657ec4 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionApiKeyRegistryStub.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionApiKeyRegistryStub.java
@@ -38,6 +38,12 @@
 @BetaApi("A restructuring of stub classes is planned, so this may break in the future")
 public abstract class PredictionApiKeyRegistryStub implements BackgroundResource {
 
+  public UnaryCallable
+      deletePredictionApiKeyRegistrationCallable() {
+    throw new UnsupportedOperationException(
+        "Not implemented: deletePredictionApiKeyRegistrationCallable()");
+  }
+
   public UnaryCallable
       createPredictionApiKeyRegistrationCallable() {
     throw new UnsupportedOperationException(
@@ -58,12 +64,6 @@ public abstract class PredictionApiKeyRegistryStub implements BackgroundResource
         "Not implemented: listPredictionApiKeyRegistrationsCallable()");
   }
 
-  public UnaryCallable
-      deletePredictionApiKeyRegistrationCallable() {
-    throw new UnsupportedOperationException(
-        "Not implemented: deletePredictionApiKeyRegistrationCallable()");
-  }
-
   @Override
   public abstract void close();
 }
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionApiKeyRegistryStubSettings.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionApiKeyRegistryStubSettings.java
index a1c20808..fc709c29 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionApiKeyRegistryStubSettings.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionApiKeyRegistryStubSettings.java
@@ -70,16 +70,16 @@
  * 

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 total timeout of createPredictionApiKeyRegistration to 30 seconds: + *

For example, to set the total timeout of deletePredictionApiKeyRegistration to 30 seconds: * *

  * 
  * PredictionApiKeyRegistryStubSettings.Builder predictionApiKeyRegistrySettingsBuilder =
  *     PredictionApiKeyRegistryStubSettings.newBuilder();
  * predictionApiKeyRegistrySettingsBuilder
- *     .createPredictionApiKeyRegistrationSettings()
+ *     .deletePredictionApiKeyRegistrationSettings()
  *     .setRetrySettings(
- *         predictionApiKeyRegistrySettingsBuilder.createPredictionApiKeyRegistrationSettings().getRetrySettings().toBuilder()
+ *         predictionApiKeyRegistrySettingsBuilder.deletePredictionApiKeyRegistrationSettings().getRetrySettings().toBuilder()
  *             .setTotalTimeout(Duration.ofSeconds(30))
  *             .build());
  * PredictionApiKeyRegistryStubSettings predictionApiKeyRegistrySettings = predictionApiKeyRegistrySettingsBuilder.build();
@@ -94,6 +94,8 @@ public class PredictionApiKeyRegistryStubSettings
   private static final ImmutableList DEFAULT_SERVICE_SCOPES =
       ImmutableList.builder().add("https://www.googleapis.com/auth/cloud-platform").build();
 
+  private final UnaryCallSettings
+      deletePredictionApiKeyRegistrationSettings;
   private final UnaryCallSettings<
           CreatePredictionApiKeyRegistrationRequest, PredictionApiKeyRegistration>
       createPredictionApiKeyRegistrationSettings;
@@ -102,8 +104,12 @@ public class PredictionApiKeyRegistryStubSettings
           ListPredictionApiKeyRegistrationsResponse,
           ListPredictionApiKeyRegistrationsPagedResponse>
       listPredictionApiKeyRegistrationsSettings;
-  private final UnaryCallSettings
-      deletePredictionApiKeyRegistrationSettings;
+
+  /** Returns the object with the settings used for calls to deletePredictionApiKeyRegistration. */
+  public UnaryCallSettings
+      deletePredictionApiKeyRegistrationSettings() {
+    return deletePredictionApiKeyRegistrationSettings;
+  }
 
   /** Returns the object with the settings used for calls to createPredictionApiKeyRegistration. */
   public UnaryCallSettings
@@ -120,12 +126,6 @@ public class PredictionApiKeyRegistryStubSettings
     return listPredictionApiKeyRegistrationsSettings;
   }
 
-  /** Returns the object with the settings used for calls to deletePredictionApiKeyRegistration. */
-  public UnaryCallSettings
-      deletePredictionApiKeyRegistrationSettings() {
-    return deletePredictionApiKeyRegistrationSettings;
-  }
-
   @BetaApi("A restructuring of stub classes is planned, so this may break in the future")
   public PredictionApiKeyRegistryStub createStub() throws IOException {
     if (getTransportChannelProvider()
@@ -195,12 +195,12 @@ public Builder toBuilder() {
   protected PredictionApiKeyRegistryStubSettings(Builder settingsBuilder) throws IOException {
     super(settingsBuilder);
 
+    deletePredictionApiKeyRegistrationSettings =
+        settingsBuilder.deletePredictionApiKeyRegistrationSettings().build();
     createPredictionApiKeyRegistrationSettings =
         settingsBuilder.createPredictionApiKeyRegistrationSettings().build();
     listPredictionApiKeyRegistrationsSettings =
         settingsBuilder.listPredictionApiKeyRegistrationsSettings().build();
-    deletePredictionApiKeyRegistrationSettings =
-        settingsBuilder.deletePredictionApiKeyRegistrationSettings().build();
   }
 
   private static final PagedListDescriptor<
@@ -290,6 +290,8 @@ public static class Builder
       extends StubSettings.Builder {
     private final ImmutableList> unaryMethodSettingsBuilders;
 
+    private final UnaryCallSettings.Builder
+        deletePredictionApiKeyRegistrationSettings;
     private final UnaryCallSettings.Builder<
             CreatePredictionApiKeyRegistrationRequest, PredictionApiKeyRegistration>
         createPredictionApiKeyRegistrationSettings;
@@ -298,8 +300,6 @@ public static class Builder
             ListPredictionApiKeyRegistrationsResponse,
             ListPredictionApiKeyRegistrationsPagedResponse>
         listPredictionApiKeyRegistrationsSettings;
-    private final UnaryCallSettings.Builder
-        deletePredictionApiKeyRegistrationSettings;
 
     private static final ImmutableMap>
         RETRYABLE_CODE_DEFINITIONS;
@@ -342,18 +342,18 @@ protected Builder() {
     protected Builder(ClientContext clientContext) {
       super(clientContext);
 
+      deletePredictionApiKeyRegistrationSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
+
       createPredictionApiKeyRegistrationSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
 
       listPredictionApiKeyRegistrationsSettings =
           PagedCallSettings.newBuilder(LIST_PREDICTION_API_KEY_REGISTRATIONS_PAGE_STR_FACT);
 
-      deletePredictionApiKeyRegistrationSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
-
       unaryMethodSettingsBuilders =
           ImmutableList.>of(
+              deletePredictionApiKeyRegistrationSettings,
               createPredictionApiKeyRegistrationSettings,
-              listPredictionApiKeyRegistrationsSettings,
-              deletePredictionApiKeyRegistrationSettings);
+              listPredictionApiKeyRegistrationsSettings);
 
       initDefaults(this);
     }
@@ -370,17 +370,17 @@ private static Builder createDefault() {
     private static Builder initDefaults(Builder builder) {
 
       builder
-          .createPredictionApiKeyRegistrationSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
+          .deletePredictionApiKeyRegistrationSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .listPredictionApiKeyRegistrationsSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
+          .createPredictionApiKeyRegistrationSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .deletePredictionApiKeyRegistrationSettings()
+          .listPredictionApiKeyRegistrationsSettings()
           .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
@@ -390,18 +390,18 @@ private static Builder initDefaults(Builder builder) {
     protected Builder(PredictionApiKeyRegistryStubSettings settings) {
       super(settings);
 
+      deletePredictionApiKeyRegistrationSettings =
+          settings.deletePredictionApiKeyRegistrationSettings.toBuilder();
       createPredictionApiKeyRegistrationSettings =
           settings.createPredictionApiKeyRegistrationSettings.toBuilder();
       listPredictionApiKeyRegistrationsSettings =
           settings.listPredictionApiKeyRegistrationsSettings.toBuilder();
-      deletePredictionApiKeyRegistrationSettings =
-          settings.deletePredictionApiKeyRegistrationSettings.toBuilder();
 
       unaryMethodSettingsBuilders =
           ImmutableList.>of(
+              deletePredictionApiKeyRegistrationSettings,
               createPredictionApiKeyRegistrationSettings,
-              listPredictionApiKeyRegistrationsSettings,
-              deletePredictionApiKeyRegistrationSettings);
+              listPredictionApiKeyRegistrationsSettings);
     }
 
     // NEXT_MAJOR_VER: remove 'throws Exception'
@@ -420,6 +420,14 @@ public Builder applyToAllUnaryMethods(
       return unaryMethodSettingsBuilders;
     }
 
+    /**
+     * Returns the builder for the settings used for calls to deletePredictionApiKeyRegistration.
+     */
+    public UnaryCallSettings.Builder
+        deletePredictionApiKeyRegistrationSettings() {
+      return deletePredictionApiKeyRegistrationSettings;
+    }
+
     /**
      * Returns the builder for the settings used for calls to createPredictionApiKeyRegistration.
      */
@@ -438,14 +446,6 @@ public Builder applyToAllUnaryMethods(
       return listPredictionApiKeyRegistrationsSettings;
     }
 
-    /**
-     * Returns the builder for the settings used for calls to deletePredictionApiKeyRegistration.
-     */
-    public UnaryCallSettings.Builder
-        deletePredictionApiKeyRegistrationSettings() {
-      return deletePredictionApiKeyRegistrationSettings;
-    }
-
     @Override
     public PredictionApiKeyRegistryStubSettings build() throws IOException {
       return new PredictionApiKeyRegistryStubSettings(this);
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionServiceStubSettings.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionServiceStubSettings.java
index da4e3964..a87fde08 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionServiceStubSettings.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/PredictionServiceStubSettings.java
@@ -66,7 +66,7 @@
  * 

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 total timeout of predictPagedCallable to 30 seconds: + *

For example, to set the total timeout of predict to 30 seconds: * *

  * 
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/UserEventServiceStub.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/UserEventServiceStub.java
index 00256084..48b364b7 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/UserEventServiceStub.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/UserEventServiceStub.java
@@ -52,23 +52,6 @@ public OperationsStub getOperationsStub() {
     throw new UnsupportedOperationException("Not implemented: getOperationsStub()");
   }
 
-  public UnaryCallable writeUserEventCallable() {
-    throw new UnsupportedOperationException("Not implemented: writeUserEventCallable()");
-  }
-
-  public UnaryCallable collectUserEventCallable() {
-    throw new UnsupportedOperationException("Not implemented: collectUserEventCallable()");
-  }
-
-  public UnaryCallable
-      listUserEventsPagedCallable() {
-    throw new UnsupportedOperationException("Not implemented: listUserEventsPagedCallable()");
-  }
-
-  public UnaryCallable listUserEventsCallable() {
-    throw new UnsupportedOperationException("Not implemented: listUserEventsCallable()");
-  }
-
   @BetaApi("The surface for use by generated code is not stable yet and may change in the future.")
   public OperationCallable
       purgeUserEventsOperationCallable() {
@@ -89,6 +72,23 @@ public UnaryCallable importUserEventsCallabl
     throw new UnsupportedOperationException("Not implemented: importUserEventsCallable()");
   }
 
+  public UnaryCallable writeUserEventCallable() {
+    throw new UnsupportedOperationException("Not implemented: writeUserEventCallable()");
+  }
+
+  public UnaryCallable collectUserEventCallable() {
+    throw new UnsupportedOperationException("Not implemented: collectUserEventCallable()");
+  }
+
+  public UnaryCallable
+      listUserEventsPagedCallable() {
+    throw new UnsupportedOperationException("Not implemented: listUserEventsPagedCallable()");
+  }
+
+  public UnaryCallable listUserEventsCallable() {
+    throw new UnsupportedOperationException("Not implemented: listUserEventsCallable()");
+  }
+
   @Override
   public abstract void close();
 }
diff --git a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/UserEventServiceStubSettings.java b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/UserEventServiceStubSettings.java
index b89666ae..cd77efe4 100644
--- a/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/UserEventServiceStubSettings.java
+++ b/google-cloud-recommendations-ai/src/main/java/com/google/cloud/recommendationengine/v1beta1/stub/UserEventServiceStubSettings.java
@@ -104,11 +104,6 @@ public class UserEventServiceStubSettings extends StubSettings DEFAULT_SERVICE_SCOPES =
       ImmutableList.builder().add("https://www.googleapis.com/auth/cloud-platform").build();
 
-  private final UnaryCallSettings writeUserEventSettings;
-  private final UnaryCallSettings collectUserEventSettings;
-  private final PagedCallSettings<
-          ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse>
-      listUserEventsSettings;
   private final UnaryCallSettings purgeUserEventsSettings;
   private final OperationCallSettings<
           PurgeUserEventsRequest, PurgeUserEventsResponse, PurgeUserEventsMetadata>
@@ -117,23 +112,11 @@ public class UserEventServiceStubSettings extends StubSettings
       importUserEventsOperationSettings;
-
-  /** Returns the object with the settings used for calls to writeUserEvent. */
-  public UnaryCallSettings writeUserEventSettings() {
-    return writeUserEventSettings;
-  }
-
-  /** Returns the object with the settings used for calls to collectUserEvent. */
-  public UnaryCallSettings collectUserEventSettings() {
-    return collectUserEventSettings;
-  }
-
-  /** Returns the object with the settings used for calls to listUserEvents. */
-  public PagedCallSettings<
+  private final UnaryCallSettings writeUserEventSettings;
+  private final UnaryCallSettings collectUserEventSettings;
+  private final PagedCallSettings<
           ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse>
-      listUserEventsSettings() {
-    return listUserEventsSettings;
-  }
+      listUserEventsSettings;
 
   /** Returns the object with the settings used for calls to purgeUserEvents. */
   public UnaryCallSettings purgeUserEventsSettings() {
@@ -160,6 +143,23 @@ public UnaryCallSettings importUserEventsSet
     return importUserEventsOperationSettings;
   }
 
+  /** Returns the object with the settings used for calls to writeUserEvent. */
+  public UnaryCallSettings writeUserEventSettings() {
+    return writeUserEventSettings;
+  }
+
+  /** Returns the object with the settings used for calls to collectUserEvent. */
+  public UnaryCallSettings collectUserEventSettings() {
+    return collectUserEventSettings;
+  }
+
+  /** Returns the object with the settings used for calls to listUserEvents. */
+  public PagedCallSettings<
+          ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse>
+      listUserEventsSettings() {
+    return listUserEventsSettings;
+  }
+
   @BetaApi("A restructuring of stub classes is planned, so this may break in the future")
   public UserEventServiceStub createStub() throws IOException {
     if (getTransportChannelProvider()
@@ -229,13 +229,13 @@ public Builder toBuilder() {
   protected UserEventServiceStubSettings(Builder settingsBuilder) throws IOException {
     super(settingsBuilder);
 
-    writeUserEventSettings = settingsBuilder.writeUserEventSettings().build();
-    collectUserEventSettings = settingsBuilder.collectUserEventSettings().build();
-    listUserEventsSettings = settingsBuilder.listUserEventsSettings().build();
     purgeUserEventsSettings = settingsBuilder.purgeUserEventsSettings().build();
     purgeUserEventsOperationSettings = settingsBuilder.purgeUserEventsOperationSettings().build();
     importUserEventsSettings = settingsBuilder.importUserEventsSettings().build();
     importUserEventsOperationSettings = settingsBuilder.importUserEventsOperationSettings().build();
+    writeUserEventSettings = settingsBuilder.writeUserEventSettings().build();
+    collectUserEventSettings = settingsBuilder.collectUserEventSettings().build();
+    listUserEventsSettings = settingsBuilder.listUserEventsSettings().build();
   }
 
   private static final PagedListDescriptor
@@ -296,13 +296,6 @@ public ApiFuture getFuturePagedResponse(
   public static class Builder extends StubSettings.Builder {
     private final ImmutableList> unaryMethodSettingsBuilders;
 
-    private final UnaryCallSettings.Builder
-        writeUserEventSettings;
-    private final UnaryCallSettings.Builder
-        collectUserEventSettings;
-    private final PagedCallSettings.Builder<
-            ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse>
-        listUserEventsSettings;
     private final UnaryCallSettings.Builder
         purgeUserEventsSettings;
     private final OperationCallSettings.Builder<
@@ -313,6 +306,13 @@ public static class Builder extends StubSettings.Builder
         importUserEventsOperationSettings;
+    private final UnaryCallSettings.Builder
+        writeUserEventSettings;
+    private final UnaryCallSettings.Builder
+        collectUserEventSettings;
+    private final PagedCallSettings.Builder<
+            ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse>
+        listUserEventsSettings;
 
     private static final ImmutableMap>
         RETRYABLE_CODE_DEFINITIONS;
@@ -355,12 +355,6 @@ protected Builder() {
     protected Builder(ClientContext clientContext) {
       super(clientContext);
 
-      writeUserEventSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
-
-      collectUserEventSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
-
-      listUserEventsSettings = PagedCallSettings.newBuilder(LIST_USER_EVENTS_PAGE_STR_FACT);
-
       purgeUserEventsSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
 
       purgeUserEventsOperationSettings = OperationCallSettings.newBuilder();
@@ -369,13 +363,19 @@ protected Builder(ClientContext clientContext) {
 
       importUserEventsOperationSettings = OperationCallSettings.newBuilder();
 
+      writeUserEventSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
+
+      collectUserEventSettings = UnaryCallSettings.newUnaryCallSettingsBuilder();
+
+      listUserEventsSettings = PagedCallSettings.newBuilder(LIST_USER_EVENTS_PAGE_STR_FACT);
+
       unaryMethodSettingsBuilders =
           ImmutableList.>of(
+              purgeUserEventsSettings,
+              importUserEventsSettings,
               writeUserEventSettings,
               collectUserEventSettings,
-              listUserEventsSettings,
-              purgeUserEventsSettings,
-              importUserEventsSettings);
+              listUserEventsSettings);
 
       initDefaults(this);
     }
@@ -392,28 +392,28 @@ private static Builder createDefault() {
     private static Builder initDefaults(Builder builder) {
 
       builder
-          .writeUserEventSettings()
+          .purgeUserEventsSettings()
           .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .collectUserEventSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
+          .importUserEventsSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .listUserEventsSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
+          .writeUserEventSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .purgeUserEventsSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
+          .collectUserEventSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
 
       builder
-          .importUserEventsSettings()
-          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("non_idempotent"))
+          .listUserEventsSettings()
+          .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("idempotent"))
           .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("default"));
       builder
           .purgeUserEventsOperationSettings()
@@ -468,21 +468,21 @@ private static Builder initDefaults(Builder builder) {
     protected Builder(UserEventServiceStubSettings settings) {
       super(settings);
 
-      writeUserEventSettings = settings.writeUserEventSettings.toBuilder();
-      collectUserEventSettings = settings.collectUserEventSettings.toBuilder();
-      listUserEventsSettings = settings.listUserEventsSettings.toBuilder();
       purgeUserEventsSettings = settings.purgeUserEventsSettings.toBuilder();
       purgeUserEventsOperationSettings = settings.purgeUserEventsOperationSettings.toBuilder();
       importUserEventsSettings = settings.importUserEventsSettings.toBuilder();
       importUserEventsOperationSettings = settings.importUserEventsOperationSettings.toBuilder();
+      writeUserEventSettings = settings.writeUserEventSettings.toBuilder();
+      collectUserEventSettings = settings.collectUserEventSettings.toBuilder();
+      listUserEventsSettings = settings.listUserEventsSettings.toBuilder();
 
       unaryMethodSettingsBuilders =
           ImmutableList.>of(
+              purgeUserEventsSettings,
+              importUserEventsSettings,
               writeUserEventSettings,
               collectUserEventSettings,
-              listUserEventsSettings,
-              purgeUserEventsSettings,
-              importUserEventsSettings);
+              listUserEventsSettings);
     }
 
     // NEXT_MAJOR_VER: remove 'throws Exception'
@@ -501,23 +501,6 @@ public Builder applyToAllUnaryMethods(
       return unaryMethodSettingsBuilders;
     }
 
-    /** Returns the builder for the settings used for calls to writeUserEvent. */
-    public UnaryCallSettings.Builder writeUserEventSettings() {
-      return writeUserEventSettings;
-    }
-
-    /** Returns the builder for the settings used for calls to collectUserEvent. */
-    public UnaryCallSettings.Builder collectUserEventSettings() {
-      return collectUserEventSettings;
-    }
-
-    /** Returns the builder for the settings used for calls to listUserEvents. */
-    public PagedCallSettings.Builder<
-            ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse>
-        listUserEventsSettings() {
-      return listUserEventsSettings;
-    }
-
     /** Returns the builder for the settings used for calls to purgeUserEvents. */
     public UnaryCallSettings.Builder purgeUserEventsSettings() {
       return purgeUserEventsSettings;
@@ -547,6 +530,23 @@ public UnaryCallSettings.Builder purgeUserEve
       return importUserEventsOperationSettings;
     }
 
+    /** Returns the builder for the settings used for calls to writeUserEvent. */
+    public UnaryCallSettings.Builder writeUserEventSettings() {
+      return writeUserEventSettings;
+    }
+
+    /** Returns the builder for the settings used for calls to collectUserEvent. */
+    public UnaryCallSettings.Builder collectUserEventSettings() {
+      return collectUserEventSettings;
+    }
+
+    /** Returns the builder for the settings used for calls to listUserEvents. */
+    public PagedCallSettings.Builder<
+            ListUserEventsRequest, ListUserEventsResponse, ListUserEventsPagedResponse>
+        listUserEventsSettings() {
+      return listUserEventsSettings;
+    }
+
     @Override
     public UserEventServiceStubSettings build() throws IOException {
       return new UserEventServiceStubSettings(this);
diff --git a/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceClientTest.java b/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceClientTest.java
index 496cad7f..dfb5afe7 100644
--- a/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceClientTest.java
+++ b/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceClientTest.java
@@ -30,6 +30,7 @@
 import com.google.protobuf.AbstractMessage;
 import com.google.protobuf.Any;
 import com.google.protobuf.Empty;
+import com.google.protobuf.FieldMask;
 import io.grpc.Status;
 import io.grpc.StatusRuntimeException;
 import java.io.IOException;
@@ -93,6 +94,101 @@ public void tearDown() throws Exception {
     client.close();
   }
 
+  @Test
+  @SuppressWarnings("all")
+  public void deleteCatalogItemTest() {
+    Empty expectedResponse = Empty.newBuilder().build();
+    mockCatalogService.addResponse(expectedResponse);
+
+    CatalogItemPathName name =
+        CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+
+    client.deleteCatalogItem(name);
+
+    List actualRequests = mockCatalogService.getRequests();
+    Assert.assertEquals(1, actualRequests.size());
+    DeleteCatalogItemRequest actualRequest = (DeleteCatalogItemRequest) actualRequests.get(0);
+
+    Assert.assertEquals(name, CatalogItemPathName.parse(actualRequest.getName()));
+    Assert.assertTrue(
+        channelProvider.isHeaderSent(
+            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
+            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
+  }
+
+  @Test
+  @SuppressWarnings("all")
+  public void deleteCatalogItemExceptionTest() throws Exception {
+    StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
+    mockCatalogService.addException(exception);
+
+    try {
+      CatalogItemPathName name =
+          CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+
+      client.deleteCatalogItem(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception
+    }
+  }
+
+  @Test
+  @SuppressWarnings("all")
+  public void importCatalogItemsTest() throws Exception {
+    ImportCatalogItemsResponse expectedResponse = ImportCatalogItemsResponse.newBuilder().build();
+    Operation resultOperation =
+        Operation.newBuilder()
+            .setName("importCatalogItemsTest")
+            .setDone(true)
+            .setResponse(Any.pack(expectedResponse))
+            .build();
+    mockCatalogService.addResponse(resultOperation);
+
+    CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+    String requestId = "requestId37109963";
+    InputConfig inputConfig = InputConfig.newBuilder().build();
+    ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
+
+    ImportCatalogItemsResponse actualResponse =
+        client.importCatalogItemsAsync(parent, requestId, inputConfig, errorsConfig).get();
+    Assert.assertEquals(expectedResponse, actualResponse);
+
+    List actualRequests = mockCatalogService.getRequests();
+    Assert.assertEquals(1, actualRequests.size());
+    ImportCatalogItemsRequest actualRequest = (ImportCatalogItemsRequest) actualRequests.get(0);
+
+    Assert.assertEquals(parent, CatalogName.parse(actualRequest.getParent()));
+    Assert.assertEquals(requestId, actualRequest.getRequestId());
+    Assert.assertEquals(inputConfig, actualRequest.getInputConfig());
+    Assert.assertEquals(errorsConfig, actualRequest.getErrorsConfig());
+    Assert.assertTrue(
+        channelProvider.isHeaderSent(
+            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
+            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
+  }
+
+  @Test
+  @SuppressWarnings("all")
+  public void importCatalogItemsExceptionTest() throws Exception {
+    StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
+    mockCatalogService.addException(exception);
+
+    try {
+      CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
+      String requestId = "requestId37109963";
+      InputConfig inputConfig = InputConfig.newBuilder().build();
+      ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
+
+      client.importCatalogItemsAsync(parent, requestId, inputConfig, errorsConfig).get();
+      Assert.fail("No exception raised");
+    } catch (ExecutionException e) {
+      Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass());
+      InvalidArgumentException apiException = (InvalidArgumentException) e.getCause();
+      Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode());
+    }
+  }
+
   @Test
   @SuppressWarnings("all")
   public void createCatalogItemTest() {
@@ -111,18 +207,17 @@ public void createCatalogItemTest() {
             .build();
     mockCatalogService.addResponse(expectedResponse);
 
-    String formattedParent =
-        CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+    CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
     CatalogItem catalogItem = CatalogItem.newBuilder().build();
 
-    CatalogItem actualResponse = client.createCatalogItem(formattedParent, catalogItem);
+    CatalogItem actualResponse = client.createCatalogItem(parent, catalogItem);
     Assert.assertEquals(expectedResponse, actualResponse);
 
     List actualRequests = mockCatalogService.getRequests();
     Assert.assertEquals(1, actualRequests.size());
     CreateCatalogItemRequest actualRequest = (CreateCatalogItemRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
+    Assert.assertEquals(parent, CatalogName.parse(actualRequest.getParent()));
     Assert.assertEquals(catalogItem, actualRequest.getCatalogItem());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
@@ -137,11 +232,10 @@ public void createCatalogItemExceptionTest() throws Exception {
     mockCatalogService.addException(exception);
 
     try {
-      String formattedParent =
-          CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+      CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
       CatalogItem catalogItem = CatalogItem.newBuilder().build();
 
-      client.createCatalogItem(formattedParent, catalogItem);
+      client.createCatalogItem(parent, catalogItem);
       Assert.fail("No exception raised");
     } catch (InvalidArgumentException e) {
       // Expected exception
@@ -166,18 +260,17 @@ public void getCatalogItemTest() {
             .build();
     mockCatalogService.addResponse(expectedResponse);
 
-    String formattedName =
-        CatalogServiceClient.formatCatalogItemPathName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+    CatalogItemPathName name =
+        CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
 
-    CatalogItem actualResponse = client.getCatalogItem(formattedName);
+    CatalogItem actualResponse = client.getCatalogItem(name);
     Assert.assertEquals(expectedResponse, actualResponse);
 
     List actualRequests = mockCatalogService.getRequests();
     Assert.assertEquals(1, actualRequests.size());
     GetCatalogItemRequest actualRequest = (GetCatalogItemRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedName, actualRequest.getName());
+    Assert.assertEquals(name, CatalogItemPathName.parse(actualRequest.getName()));
     Assert.assertTrue(
         channelProvider.isHeaderSent(
             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -191,11 +284,10 @@ public void getCatalogItemExceptionTest() throws Exception {
     mockCatalogService.addException(exception);
 
     try {
-      String formattedName =
-          CatalogServiceClient.formatCatalogItemPathName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+      CatalogItemPathName name =
+          CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
 
-      client.getCatalogItem(formattedName);
+      client.getCatalogItem(name);
       Assert.fail("No exception raised");
     } catch (InvalidArgumentException e) {
       // Expected exception
@@ -215,12 +307,10 @@ public void listCatalogItemsTest() {
             .build();
     mockCatalogService.addResponse(expectedResponse);
 
-    String formattedParent =
-        CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+    CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
     String filter = "filter-1274492040";
 
-    ListCatalogItemsPagedResponse pagedListResponse =
-        client.listCatalogItems(formattedParent, filter);
+    ListCatalogItemsPagedResponse pagedListResponse = client.listCatalogItems(parent, filter);
 
     List resources = Lists.newArrayList(pagedListResponse.iterateAll());
     Assert.assertEquals(1, resources.size());
@@ -230,7 +320,7 @@ public void listCatalogItemsTest() {
     Assert.assertEquals(1, actualRequests.size());
     ListCatalogItemsRequest actualRequest = (ListCatalogItemsRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
+    Assert.assertEquals(parent, CatalogName.parse(actualRequest.getParent()));
     Assert.assertEquals(filter, actualRequest.getFilter());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
@@ -245,11 +335,10 @@ public void listCatalogItemsExceptionTest() throws Exception {
     mockCatalogService.addException(exception);
 
     try {
-      String formattedParent =
-          CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
+      CatalogName parent = CatalogName.of("[PROJECT]", "[LOCATION]", "[CATALOG]");
       String filter = "filter-1274492040";
 
-      client.listCatalogItems(formattedParent, filter);
+      client.listCatalogItems(parent, filter);
       Assert.fail("No exception raised");
     } catch (InvalidArgumentException e) {
       // Expected exception
@@ -274,20 +363,21 @@ public void updateCatalogItemTest() {
             .build();
     mockCatalogService.addResponse(expectedResponse);
 
-    String formattedName =
-        CatalogServiceClient.formatCatalogItemPathName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+    CatalogItemPathName name =
+        CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
     CatalogItem catalogItem = CatalogItem.newBuilder().build();
+    FieldMask updateMask = FieldMask.newBuilder().build();
 
-    CatalogItem actualResponse = client.updateCatalogItem(formattedName, catalogItem);
+    CatalogItem actualResponse = client.updateCatalogItem(name, catalogItem, updateMask);
     Assert.assertEquals(expectedResponse, actualResponse);
 
     List actualRequests = mockCatalogService.getRequests();
     Assert.assertEquals(1, actualRequests.size());
     UpdateCatalogItemRequest actualRequest = (UpdateCatalogItemRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedName, actualRequest.getName());
+    Assert.assertEquals(name, CatalogItemPathName.parse(actualRequest.getName()));
     Assert.assertEquals(catalogItem, actualRequest.getCatalogItem());
+    Assert.assertEquals(updateMask, actualRequest.getUpdateMask());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -301,114 +391,15 @@ public void updateCatalogItemExceptionTest() throws Exception {
     mockCatalogService.addException(exception);
 
     try {
-      String formattedName =
-          CatalogServiceClient.formatCatalogItemPathName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
+      CatalogItemPathName name =
+          CatalogItemPathName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
       CatalogItem catalogItem = CatalogItem.newBuilder().build();
+      FieldMask updateMask = FieldMask.newBuilder().build();
 
-      client.updateCatalogItem(formattedName, catalogItem);
+      client.updateCatalogItem(name, catalogItem, updateMask);
       Assert.fail("No exception raised");
     } catch (InvalidArgumentException e) {
       // Expected exception
     }
   }
-
-  @Test
-  @SuppressWarnings("all")
-  public void deleteCatalogItemTest() {
-    Empty expectedResponse = Empty.newBuilder().build();
-    mockCatalogService.addResponse(expectedResponse);
-
-    String formattedName =
-        CatalogServiceClient.formatCatalogItemPathName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
-
-    client.deleteCatalogItem(formattedName);
-
-    List actualRequests = mockCatalogService.getRequests();
-    Assert.assertEquals(1, actualRequests.size());
-    DeleteCatalogItemRequest actualRequest = (DeleteCatalogItemRequest) actualRequests.get(0);
-
-    Assert.assertEquals(formattedName, actualRequest.getName());
-    Assert.assertTrue(
-        channelProvider.isHeaderSent(
-            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
-            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
-  }
-
-  @Test
-  @SuppressWarnings("all")
-  public void deleteCatalogItemExceptionTest() throws Exception {
-    StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
-    mockCatalogService.addException(exception);
-
-    try {
-      String formattedName =
-          CatalogServiceClient.formatCatalogItemPathName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[CATALOG_ITEM_PATH]");
-
-      client.deleteCatalogItem(formattedName);
-      Assert.fail("No exception raised");
-    } catch (InvalidArgumentException e) {
-      // Expected exception
-    }
-  }
-
-  @Test
-  @SuppressWarnings("all")
-  public void importCatalogItemsTest() throws Exception {
-    ImportCatalogItemsResponse expectedResponse = ImportCatalogItemsResponse.newBuilder().build();
-    Operation resultOperation =
-        Operation.newBuilder()
-            .setName("importCatalogItemsTest")
-            .setDone(true)
-            .setResponse(Any.pack(expectedResponse))
-            .build();
-    mockCatalogService.addResponse(resultOperation);
-
-    String formattedParent =
-        CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
-    String requestId = "requestId37109963";
-    InputConfig inputConfig = InputConfig.newBuilder().build();
-    ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
-
-    ImportCatalogItemsResponse actualResponse =
-        client.importCatalogItemsAsync(formattedParent, requestId, inputConfig, errorsConfig).get();
-    Assert.assertEquals(expectedResponse, actualResponse);
-
-    List actualRequests = mockCatalogService.getRequests();
-    Assert.assertEquals(1, actualRequests.size());
-    ImportCatalogItemsRequest actualRequest = (ImportCatalogItemsRequest) actualRequests.get(0);
-
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
-    Assert.assertEquals(requestId, actualRequest.getRequestId());
-    Assert.assertEquals(inputConfig, actualRequest.getInputConfig());
-    Assert.assertEquals(errorsConfig, actualRequest.getErrorsConfig());
-    Assert.assertTrue(
-        channelProvider.isHeaderSent(
-            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
-            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
-  }
-
-  @Test
-  @SuppressWarnings("all")
-  public void importCatalogItemsExceptionTest() throws Exception {
-    StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
-    mockCatalogService.addException(exception);
-
-    try {
-      String formattedParent =
-          CatalogServiceClient.formatCatalogName("[PROJECT]", "[LOCATION]", "[CATALOG]");
-      String requestId = "requestId37109963";
-      InputConfig inputConfig = InputConfig.newBuilder().build();
-      ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
-
-      client.importCatalogItemsAsync(formattedParent, requestId, inputConfig, errorsConfig).get();
-      Assert.fail("No exception raised");
-    } catch (ExecutionException e) {
-      Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass());
-      InvalidArgumentException apiException = (InvalidArgumentException) e.getCause();
-      Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode());
-    }
-  }
 }
diff --git a/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClientTest.java b/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClientTest.java
index 1869b5b1..e5f3117a 100644
--- a/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClientTest.java
+++ b/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/PredictionApiKeyRegistryClientTest.java
@@ -89,6 +89,56 @@ public void tearDown() throws Exception {
     client.close();
   }
 
+  @Test
+  @SuppressWarnings("all")
+  public void deletePredictionApiKeyRegistrationTest() {
+    Empty expectedResponse = Empty.newBuilder().build();
+    mockPredictionApiKeyRegistry.addResponse(expectedResponse);
+
+    PredictionApiKeyRegistrationName name =
+        PredictionApiKeyRegistrationName.of(
+            "[PROJECT]",
+            "[LOCATION]",
+            "[CATALOG]",
+            "[EVENT_STORE]",
+            "[PREDICTION_API_KEY_REGISTRATION]");
+
+    client.deletePredictionApiKeyRegistration(name);
+
+    List actualRequests = mockPredictionApiKeyRegistry.getRequests();
+    Assert.assertEquals(1, actualRequests.size());
+    DeletePredictionApiKeyRegistrationRequest actualRequest =
+        (DeletePredictionApiKeyRegistrationRequest) actualRequests.get(0);
+
+    Assert.assertEquals(name, PredictionApiKeyRegistrationName.parse(actualRequest.getName()));
+    Assert.assertTrue(
+        channelProvider.isHeaderSent(
+            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
+            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
+  }
+
+  @Test
+  @SuppressWarnings("all")
+  public void deletePredictionApiKeyRegistrationExceptionTest() throws Exception {
+    StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
+    mockPredictionApiKeyRegistry.addException(exception);
+
+    try {
+      PredictionApiKeyRegistrationName name =
+          PredictionApiKeyRegistrationName.of(
+              "[PROJECT]",
+              "[LOCATION]",
+              "[CATALOG]",
+              "[EVENT_STORE]",
+              "[PREDICTION_API_KEY_REGISTRATION]");
+
+      client.deletePredictionApiKeyRegistration(name);
+      Assert.fail("No exception raised");
+    } catch (InvalidArgumentException e) {
+      // Expected exception
+    }
+  }
+
   @Test
   @SuppressWarnings("all")
   public void createPredictionApiKeyRegistrationTest() {
@@ -97,14 +147,13 @@ public void createPredictionApiKeyRegistrationTest() {
         PredictionApiKeyRegistration.newBuilder().setApiKey(apiKey).build();
     mockPredictionApiKeyRegistry.addResponse(expectedResponse);
 
-    String formattedParent =
-        PredictionApiKeyRegistryClient.formatEventStoreName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+    EventStoreName parent =
+        EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
     PredictionApiKeyRegistration predictionApiKeyRegistration =
         PredictionApiKeyRegistration.newBuilder().build();
 
     PredictionApiKeyRegistration actualResponse =
-        client.createPredictionApiKeyRegistration(formattedParent, predictionApiKeyRegistration);
+        client.createPredictionApiKeyRegistration(parent, predictionApiKeyRegistration);
     Assert.assertEquals(expectedResponse, actualResponse);
 
     List actualRequests = mockPredictionApiKeyRegistry.getRequests();
@@ -112,7 +161,7 @@ public void createPredictionApiKeyRegistrationTest() {
     CreatePredictionApiKeyRegistrationRequest actualRequest =
         (CreatePredictionApiKeyRegistrationRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
+    Assert.assertEquals(parent, EventStoreName.parse(actualRequest.getParent()));
     Assert.assertEquals(
         predictionApiKeyRegistration, actualRequest.getPredictionApiKeyRegistration());
     Assert.assertTrue(
@@ -128,13 +177,12 @@ public void createPredictionApiKeyRegistrationExceptionTest() throws Exception {
     mockPredictionApiKeyRegistry.addException(exception);
 
     try {
-      String formattedParent =
-          PredictionApiKeyRegistryClient.formatEventStoreName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+      EventStoreName parent =
+          EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
       PredictionApiKeyRegistration predictionApiKeyRegistration =
           PredictionApiKeyRegistration.newBuilder().build();
 
-      client.createPredictionApiKeyRegistration(formattedParent, predictionApiKeyRegistration);
+      client.createPredictionApiKeyRegistration(parent, predictionApiKeyRegistration);
       Assert.fail("No exception raised");
     } catch (InvalidArgumentException e) {
       // Expected exception
@@ -156,12 +204,11 @@ public void listPredictionApiKeyRegistrationsTest() {
             .build();
     mockPredictionApiKeyRegistry.addResponse(expectedResponse);
 
-    String formattedParent =
-        PredictionApiKeyRegistryClient.formatEventStoreName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+    EventStoreName parent =
+        EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
 
     ListPredictionApiKeyRegistrationsPagedResponse pagedListResponse =
-        client.listPredictionApiKeyRegistrations(formattedParent);
+        client.listPredictionApiKeyRegistrations(parent);
 
     List resources =
         Lists.newArrayList(pagedListResponse.iterateAll());
@@ -174,7 +221,7 @@ public void listPredictionApiKeyRegistrationsTest() {
     ListPredictionApiKeyRegistrationsRequest actualRequest =
         (ListPredictionApiKeyRegistrationsRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
+    Assert.assertEquals(parent, EventStoreName.parse(actualRequest.getParent()));
     Assert.assertTrue(
         channelProvider.isHeaderSent(
             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -188,61 +235,10 @@ public void listPredictionApiKeyRegistrationsExceptionTest() throws Exception {
     mockPredictionApiKeyRegistry.addException(exception);
 
     try {
-      String formattedParent =
-          PredictionApiKeyRegistryClient.formatEventStoreName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-
-      client.listPredictionApiKeyRegistrations(formattedParent);
-      Assert.fail("No exception raised");
-    } catch (InvalidArgumentException e) {
-      // Expected exception
-    }
-  }
-
-  @Test
-  @SuppressWarnings("all")
-  public void deletePredictionApiKeyRegistrationTest() {
-    Empty expectedResponse = Empty.newBuilder().build();
-    mockPredictionApiKeyRegistry.addResponse(expectedResponse);
-
-    String formattedName =
-        PredictionApiKeyRegistryClient.formatPredictionApiKeyRegistrationName(
-            "[PROJECT]",
-            "[LOCATION]",
-            "[CATALOG]",
-            "[EVENT_STORE]",
-            "[PREDICTION_API_KEY_REGISTRATION]");
-
-    client.deletePredictionApiKeyRegistration(formattedName);
-
-    List actualRequests = mockPredictionApiKeyRegistry.getRequests();
-    Assert.assertEquals(1, actualRequests.size());
-    DeletePredictionApiKeyRegistrationRequest actualRequest =
-        (DeletePredictionApiKeyRegistrationRequest) actualRequests.get(0);
-
-    Assert.assertEquals(formattedName, actualRequest.getName());
-    Assert.assertTrue(
-        channelProvider.isHeaderSent(
-            ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
-            GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
-  }
-
-  @Test
-  @SuppressWarnings("all")
-  public void deletePredictionApiKeyRegistrationExceptionTest() throws Exception {
-    StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
-    mockPredictionApiKeyRegistry.addException(exception);
-
-    try {
-      String formattedName =
-          PredictionApiKeyRegistryClient.formatPredictionApiKeyRegistrationName(
-              "[PROJECT]",
-              "[LOCATION]",
-              "[CATALOG]",
-              "[EVENT_STORE]",
-              "[PREDICTION_API_KEY_REGISTRATION]");
+      EventStoreName parent =
+          EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
 
-      client.deletePredictionApiKeyRegistration(formattedName);
+      client.listPredictionApiKeyRegistrations(parent);
       Assert.fail("No exception raised");
     } catch (InvalidArgumentException e) {
       // Expected exception
diff --git a/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceClientTest.java b/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceClientTest.java
index a75fe5cf..3bcb7dfa 100644
--- a/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceClientTest.java
+++ b/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceClientTest.java
@@ -106,14 +106,11 @@ public void predictTest() {
             .build();
     mockPredictionService.addResponse(expectedResponse);
 
-    String formattedName =
-        PredictionServiceClient.formatPlacementName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+    PlacementName name =
+        PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
     UserEvent userEvent = UserEvent.newBuilder().build();
-    PredictRequest request =
-        PredictRequest.newBuilder().setName(formattedName).setUserEvent(userEvent).build();
 
-    PredictPagedResponse pagedListResponse = client.predict(request);
+    PredictPagedResponse pagedListResponse = client.predict(name, userEvent);
 
     List resources =
         Lists.newArrayList(pagedListResponse.iterateAll());
@@ -124,7 +121,7 @@ public void predictTest() {
     Assert.assertEquals(1, actualRequests.size());
     PredictRequest actualRequest = (PredictRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedName, actualRequest.getName());
+    Assert.assertEquals(name, PlacementName.parse(actualRequest.getName()));
     Assert.assertEquals(userEvent, actualRequest.getUserEvent());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
@@ -139,14 +136,11 @@ public void predictExceptionTest() throws Exception {
     mockPredictionService.addException(exception);
 
     try {
-      String formattedName =
-          PredictionServiceClient.formatPlacementName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
+      PlacementName name =
+          PlacementName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]", "[PLACEMENT]");
       UserEvent userEvent = UserEvent.newBuilder().build();
-      PredictRequest request =
-          PredictRequest.newBuilder().setName(formattedName).setUserEvent(userEvent).build();
 
-      client.predict(request);
+      client.predict(name, userEvent);
       Assert.fail("No exception raised");
     } catch (InvalidArgumentException e) {
       // Expected exception
diff --git a/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceClientTest.java b/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceClientTest.java
index 187f993c..0005cfeb 100644
--- a/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceClientTest.java
+++ b/google-cloud-recommendations-ai/src/test/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceClientTest.java
@@ -96,25 +96,34 @@ public void tearDown() throws Exception {
 
   @Test
   @SuppressWarnings("all")
-  public void writeUserEventTest() {
-    String eventType = "eventType984376767";
-    UserEvent expectedResponse = UserEvent.newBuilder().setEventType(eventType).build();
-    mockUserEventService.addResponse(expectedResponse);
+  public void purgeUserEventsTest() throws Exception {
+    long purgedEventsCount = 310774833L;
+    PurgeUserEventsResponse expectedResponse =
+        PurgeUserEventsResponse.newBuilder().setPurgedEventsCount(purgedEventsCount).build();
+    Operation resultOperation =
+        Operation.newBuilder()
+            .setName("purgeUserEventsTest")
+            .setDone(true)
+            .setResponse(Any.pack(expectedResponse))
+            .build();
+    mockUserEventService.addResponse(resultOperation);
 
-    String formattedParent =
-        UserEventServiceClient.formatEventStoreName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-    UserEvent userEvent = UserEvent.newBuilder().build();
+    EventStoreName parent =
+        EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+    String filter = "filter-1274492040";
+    boolean force = false;
 
-    UserEvent actualResponse = client.writeUserEvent(formattedParent, userEvent);
+    PurgeUserEventsResponse actualResponse =
+        client.purgeUserEventsAsync(parent, filter, force).get();
     Assert.assertEquals(expectedResponse, actualResponse);
 
     List actualRequests = mockUserEventService.getRequests();
     Assert.assertEquals(1, actualRequests.size());
-    WriteUserEventRequest actualRequest = (WriteUserEventRequest) actualRequests.get(0);
+    PurgeUserEventsRequest actualRequest = (PurgeUserEventsRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
-    Assert.assertEquals(userEvent, actualRequest.getUserEvent());
+    Assert.assertEquals(parent, EventStoreName.parse(actualRequest.getParent()));
+    Assert.assertEquals(filter, actualRequest.getFilter());
+    Assert.assertEquals(force, actualRequest.getForce());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -123,50 +132,55 @@ public void writeUserEventTest() {
 
   @Test
   @SuppressWarnings("all")
-  public void writeUserEventExceptionTest() throws Exception {
+  public void purgeUserEventsExceptionTest() throws Exception {
     StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
     mockUserEventService.addException(exception);
 
     try {
-      String formattedParent =
-          UserEventServiceClient.formatEventStoreName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-      UserEvent userEvent = UserEvent.newBuilder().build();
+      EventStoreName parent =
+          EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+      String filter = "filter-1274492040";
+      boolean force = false;
 
-      client.writeUserEvent(formattedParent, userEvent);
+      client.purgeUserEventsAsync(parent, filter, force).get();
       Assert.fail("No exception raised");
-    } catch (InvalidArgumentException e) {
-      // Expected exception
+    } catch (ExecutionException e) {
+      Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass());
+      InvalidArgumentException apiException = (InvalidArgumentException) e.getCause();
+      Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode());
     }
   }
 
   @Test
   @SuppressWarnings("all")
-  public void collectUserEventTest() {
-    String contentType = "contentType831846208";
-    ByteString data = ByteString.copyFromUtf8("-86");
-    HttpBody expectedResponse =
-        HttpBody.newBuilder().setContentType(contentType).setData(data).build();
-    mockUserEventService.addResponse(expectedResponse);
+  public void importUserEventsTest() throws Exception {
+    ImportUserEventsResponse expectedResponse = ImportUserEventsResponse.newBuilder().build();
+    Operation resultOperation =
+        Operation.newBuilder()
+            .setName("importUserEventsTest")
+            .setDone(true)
+            .setResponse(Any.pack(expectedResponse))
+            .build();
+    mockUserEventService.addResponse(resultOperation);
 
-    String formattedParent =
-        UserEventServiceClient.formatEventStoreName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-    String userEvent = "userEvent1921940774";
-    String uri = "uri116076";
-    long ets = 100772L;
+    EventStoreName parent =
+        EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+    String requestId = "requestId37109963";
+    InputConfig inputConfig = InputConfig.newBuilder().build();
+    ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
 
-    HttpBody actualResponse = client.collectUserEvent(formattedParent, userEvent, uri, ets);
+    ImportUserEventsResponse actualResponse =
+        client.importUserEventsAsync(parent, requestId, inputConfig, errorsConfig).get();
     Assert.assertEquals(expectedResponse, actualResponse);
 
     List actualRequests = mockUserEventService.getRequests();
     Assert.assertEquals(1, actualRequests.size());
-    CollectUserEventRequest actualRequest = (CollectUserEventRequest) actualRequests.get(0);
+    ImportUserEventsRequest actualRequest = (ImportUserEventsRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
-    Assert.assertEquals(userEvent, actualRequest.getUserEvent());
-    Assert.assertEquals(uri, actualRequest.getUri());
-    Assert.assertEquals(ets, actualRequest.getEts());
+    Assert.assertEquals(parent, EventStoreName.parse(actualRequest.getParent()));
+    Assert.assertEquals(requestId, actualRequest.getRequestId());
+    Assert.assertEquals(inputConfig, actualRequest.getInputConfig());
+    Assert.assertEquals(errorsConfig, actualRequest.getErrorsConfig());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -175,55 +189,46 @@ public void collectUserEventTest() {
 
   @Test
   @SuppressWarnings("all")
-  public void collectUserEventExceptionTest() throws Exception {
+  public void importUserEventsExceptionTest() throws Exception {
     StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
     mockUserEventService.addException(exception);
 
     try {
-      String formattedParent =
-          UserEventServiceClient.formatEventStoreName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-      String userEvent = "userEvent1921940774";
-      String uri = "uri116076";
-      long ets = 100772L;
+      EventStoreName parent =
+          EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+      String requestId = "requestId37109963";
+      InputConfig inputConfig = InputConfig.newBuilder().build();
+      ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
 
-      client.collectUserEvent(formattedParent, userEvent, uri, ets);
+      client.importUserEventsAsync(parent, requestId, inputConfig, errorsConfig).get();
       Assert.fail("No exception raised");
-    } catch (InvalidArgumentException e) {
-      // Expected exception
+    } catch (ExecutionException e) {
+      Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass());
+      InvalidArgumentException apiException = (InvalidArgumentException) e.getCause();
+      Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode());
     }
   }
 
   @Test
   @SuppressWarnings("all")
-  public void listUserEventsTest() {
-    String nextPageToken = "";
-    UserEvent userEventsElement = UserEvent.newBuilder().build();
-    List userEvents = Arrays.asList(userEventsElement);
-    ListUserEventsResponse expectedResponse =
-        ListUserEventsResponse.newBuilder()
-            .setNextPageToken(nextPageToken)
-            .addAllUserEvents(userEvents)
-            .build();
+  public void writeUserEventTest() {
+    String eventType = "eventType984376767";
+    UserEvent expectedResponse = UserEvent.newBuilder().setEventType(eventType).build();
     mockUserEventService.addResponse(expectedResponse);
 
-    String formattedParent =
-        UserEventServiceClient.formatEventStoreName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-    String filter = "filter-1274492040";
-
-    ListUserEventsPagedResponse pagedListResponse = client.listUserEvents(formattedParent, filter);
+    EventStoreName parent =
+        EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+    UserEvent userEvent = UserEvent.newBuilder().build();
 
-    List resources = Lists.newArrayList(pagedListResponse.iterateAll());
-    Assert.assertEquals(1, resources.size());
-    Assert.assertEquals(expectedResponse.getUserEventsList().get(0), resources.get(0));
+    UserEvent actualResponse = client.writeUserEvent(parent, userEvent);
+    Assert.assertEquals(expectedResponse, actualResponse);
 
     List actualRequests = mockUserEventService.getRequests();
     Assert.assertEquals(1, actualRequests.size());
-    ListUserEventsRequest actualRequest = (ListUserEventsRequest) actualRequests.get(0);
+    WriteUserEventRequest actualRequest = (WriteUserEventRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
-    Assert.assertEquals(filter, actualRequest.getFilter());
+    Assert.assertEquals(parent, EventStoreName.parse(actualRequest.getParent()));
+    Assert.assertEquals(userEvent, actualRequest.getUserEvent());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -232,17 +237,16 @@ public void listUserEventsTest() {
 
   @Test
   @SuppressWarnings("all")
-  public void listUserEventsExceptionTest() throws Exception {
+  public void writeUserEventExceptionTest() throws Exception {
     StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
     mockUserEventService.addException(exception);
 
     try {
-      String formattedParent =
-          UserEventServiceClient.formatEventStoreName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-      String filter = "filter-1274492040";
+      EventStoreName parent =
+          EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+      UserEvent userEvent = UserEvent.newBuilder().build();
 
-      client.listUserEvents(formattedParent, filter);
+      client.writeUserEvent(parent, userEvent);
       Assert.fail("No exception raised");
     } catch (InvalidArgumentException e) {
       // Expected exception
@@ -251,35 +255,30 @@ public void listUserEventsExceptionTest() throws Exception {
 
   @Test
   @SuppressWarnings("all")
-  public void purgeUserEventsTest() throws Exception {
-    long purgedEventsCount = 310774833L;
-    PurgeUserEventsResponse expectedResponse =
-        PurgeUserEventsResponse.newBuilder().setPurgedEventsCount(purgedEventsCount).build();
-    Operation resultOperation =
-        Operation.newBuilder()
-            .setName("purgeUserEventsTest")
-            .setDone(true)
-            .setResponse(Any.pack(expectedResponse))
-            .build();
-    mockUserEventService.addResponse(resultOperation);
+  public void collectUserEventTest() {
+    String contentType = "contentType831846208";
+    ByteString data = ByteString.copyFromUtf8("-86");
+    HttpBody expectedResponse =
+        HttpBody.newBuilder().setContentType(contentType).setData(data).build();
+    mockUserEventService.addResponse(expectedResponse);
 
-    String formattedParent =
-        UserEventServiceClient.formatEventStoreName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-    String filter = "filter-1274492040";
-    boolean force = false;
+    EventStoreName parent =
+        EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+    String userEvent = "userEvent1921940774";
+    String uri = "uri116076";
+    long ets = 100772L;
 
-    PurgeUserEventsResponse actualResponse =
-        client.purgeUserEventsAsync(formattedParent, filter, force).get();
+    HttpBody actualResponse = client.collectUserEvent(parent, userEvent, uri, ets);
     Assert.assertEquals(expectedResponse, actualResponse);
 
     List actualRequests = mockUserEventService.getRequests();
     Assert.assertEquals(1, actualRequests.size());
-    PurgeUserEventsRequest actualRequest = (PurgeUserEventsRequest) actualRequests.get(0);
+    CollectUserEventRequest actualRequest = (CollectUserEventRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
-    Assert.assertEquals(filter, actualRequest.getFilter());
-    Assert.assertEquals(force, actualRequest.getForce());
+    Assert.assertEquals(parent, EventStoreName.parse(actualRequest.getParent()));
+    Assert.assertEquals(userEvent, actualRequest.getUserEvent());
+    Assert.assertEquals(uri, actualRequest.getUri());
+    Assert.assertEquals(ets, actualRequest.getEts());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -288,57 +287,53 @@ public void purgeUserEventsTest() throws Exception {
 
   @Test
   @SuppressWarnings("all")
-  public void purgeUserEventsExceptionTest() throws Exception {
+  public void collectUserEventExceptionTest() throws Exception {
     StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
     mockUserEventService.addException(exception);
 
     try {
-      String formattedParent =
-          UserEventServiceClient.formatEventStoreName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-      String filter = "filter-1274492040";
-      boolean force = false;
+      EventStoreName parent =
+          EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+      String userEvent = "userEvent1921940774";
+      String uri = "uri116076";
+      long ets = 100772L;
 
-      client.purgeUserEventsAsync(formattedParent, filter, force).get();
+      client.collectUserEvent(parent, userEvent, uri, ets);
       Assert.fail("No exception raised");
-    } catch (ExecutionException e) {
-      Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass());
-      InvalidArgumentException apiException = (InvalidArgumentException) e.getCause();
-      Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode());
+    } catch (InvalidArgumentException e) {
+      // Expected exception
     }
   }
 
   @Test
   @SuppressWarnings("all")
-  public void importUserEventsTest() throws Exception {
-    ImportUserEventsResponse expectedResponse = ImportUserEventsResponse.newBuilder().build();
-    Operation resultOperation =
-        Operation.newBuilder()
-            .setName("importUserEventsTest")
-            .setDone(true)
-            .setResponse(Any.pack(expectedResponse))
+  public void listUserEventsTest() {
+    String nextPageToken = "";
+    UserEvent userEventsElement = UserEvent.newBuilder().build();
+    List userEvents = Arrays.asList(userEventsElement);
+    ListUserEventsResponse expectedResponse =
+        ListUserEventsResponse.newBuilder()
+            .setNextPageToken(nextPageToken)
+            .addAllUserEvents(userEvents)
             .build();
-    mockUserEventService.addResponse(resultOperation);
+    mockUserEventService.addResponse(expectedResponse);
 
-    String formattedParent =
-        UserEventServiceClient.formatEventStoreName(
-            "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-    String requestId = "requestId37109963";
-    InputConfig inputConfig = InputConfig.newBuilder().build();
-    ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
+    EventStoreName parent =
+        EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+    String filter = "filter-1274492040";
 
-    ImportUserEventsResponse actualResponse =
-        client.importUserEventsAsync(formattedParent, requestId, inputConfig, errorsConfig).get();
-    Assert.assertEquals(expectedResponse, actualResponse);
+    ListUserEventsPagedResponse pagedListResponse = client.listUserEvents(parent, filter);
+
+    List resources = Lists.newArrayList(pagedListResponse.iterateAll());
+    Assert.assertEquals(1, resources.size());
+    Assert.assertEquals(expectedResponse.getUserEventsList().get(0), resources.get(0));
 
     List actualRequests = mockUserEventService.getRequests();
     Assert.assertEquals(1, actualRequests.size());
-    ImportUserEventsRequest actualRequest = (ImportUserEventsRequest) actualRequests.get(0);
+    ListUserEventsRequest actualRequest = (ListUserEventsRequest) actualRequests.get(0);
 
-    Assert.assertEquals(formattedParent, actualRequest.getParent());
-    Assert.assertEquals(requestId, actualRequest.getRequestId());
-    Assert.assertEquals(inputConfig, actualRequest.getInputConfig());
-    Assert.assertEquals(errorsConfig, actualRequest.getErrorsConfig());
+    Assert.assertEquals(parent, EventStoreName.parse(actualRequest.getParent()));
+    Assert.assertEquals(filter, actualRequest.getFilter());
     Assert.assertTrue(
         channelProvider.isHeaderSent(
             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -347,24 +342,19 @@ public void importUserEventsTest() throws Exception {
 
   @Test
   @SuppressWarnings("all")
-  public void importUserEventsExceptionTest() throws Exception {
+  public void listUserEventsExceptionTest() throws Exception {
     StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
     mockUserEventService.addException(exception);
 
     try {
-      String formattedParent =
-          UserEventServiceClient.formatEventStoreName(
-              "[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
-      String requestId = "requestId37109963";
-      InputConfig inputConfig = InputConfig.newBuilder().build();
-      ImportErrorsConfig errorsConfig = ImportErrorsConfig.newBuilder().build();
+      EventStoreName parent =
+          EventStoreName.of("[PROJECT]", "[LOCATION]", "[CATALOG]", "[EVENT_STORE]");
+      String filter = "filter-1274492040";
 
-      client.importUserEventsAsync(formattedParent, requestId, inputConfig, errorsConfig).get();
+      client.listUserEvents(parent, filter);
       Assert.fail("No exception raised");
-    } catch (ExecutionException e) {
-      Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass());
-      InvalidArgumentException apiException = (InvalidArgumentException) e.getCause();
-      Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode());
+    } catch (InvalidArgumentException e) {
+      // Expected exception
     }
   }
 }
diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceOuterClass.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceOuterClass.java
index fde24a03..dde9869a 100644
--- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceOuterClass.java
+++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CatalogServiceOuterClass.java
@@ -64,77 +64,88 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
           + "ta1/catalog_service.proto\022)google.cloud."
           + "recommendationengine.v1beta1\032\034google/api"
           + "/annotations.proto\032\027google/api/client.pr"
-          + "oto\032\037google/api/field_behavior.proto\0327go"
-          + "ogle/cloud/recommendationengine/v1beta1/"
-          + "catalog.proto\0326google/cloud/recommendati"
-          + "onengine/v1beta1/import.proto\032#google/lo"
-          + "ngrunning/operations.proto\032\033google/proto"
-          + "buf/empty.proto\032 google/protobuf/field_m"
-          + "ask.proto\"\202\001\n\030CreateCatalogItemRequest\022\023"
-          + "\n\006parent\030\001 \001(\tB\003\340A\002\022Q\n\014catalog_item\030\002 \001("
-          + "\01326.google.cloud.recommendationengine.v1"
-          + "beta1.CatalogItemB\003\340A\002\"*\n\025GetCatalogItem"
-          + "Request\022\021\n\004name\030\001 \001(\tB\003\340A\002\"t\n\027ListCatalo"
-          + "gItemsRequest\022\023\n\006parent\030\001 \001(\tB\003\340A\002\022\026\n\tpa"
-          + "ge_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB\003"
-          + "\340A\001\022\023\n\006filter\030\004 \001(\tB\003\340A\001\"\202\001\n\030ListCatalog"
-          + "ItemsResponse\022M\n\rcatalog_items\030\001 \003(\01326.g"
+          + "oto\032\037google/api/field_behavior.proto\032\031go"
+          + "ogle/api/resource.proto\0327google/cloud/re"
+          + "commendationengine/v1beta1/catalog.proto"
+          + "\0326google/cloud/recommendationengine/v1be"
+          + "ta1/import.proto\032Ngoogle/cloud/recommend"
+          + "ationengine/v1beta1/recommendationengine"
+          + "_resources.proto\032#google/longrunning/ope"
+          + "rations.proto\032\033google/protobuf/empty.pro"
+          + "to\032 google/protobuf/field_mask.proto\"\262\001\n"
+          + "\030CreateCatalogItemRequest\022C\n\006parent\030\001 \001("
+          + "\tB3\340A\002\372A-\n+recommendationengine.googleap"
+          + "is.com/Catalog\022Q\n\014catalog_item\030\002 \001(\01326.g"
           + "oogle.cloud.recommendationengine.v1beta1"
-          + ".CatalogItem\022\027\n\017next_page_token\030\002 \001(\t\"\266\001"
-          + "\n\030UpdateCatalogItemRequest\022\021\n\004name\030\001 \001(\t"
-          + "B\003\340A\002\022Q\n\014catalog_item\030\002 \001(\01326.google.clo"
-          + "ud.recommendationengine.v1beta1.CatalogI"
-          + "temB\003\340A\002\0224\n\013update_mask\030\003 \001(\0132\032.google.p"
-          + "rotobuf.FieldMaskB\003\340A\001\"-\n\030DeleteCatalogI"
-          + "temRequest\022\021\n\004name\030\001 \001(\tB\003\340A\0022\274\014\n\016Catalo"
-          + "gService\022\350\001\n\021CreateCatalogItem\022C.google."
-          + "cloud.recommendationengine.v1beta1.Creat"
-          + "eCatalogItemRequest\0326.google.cloud.recom"
-          + "mendationengine.v1beta1.CatalogItem\"V\202\323\344"
-          + "\223\002P\"@/v1beta1/{parent=projects/*/locatio"
-          + "ns/*/catalogs/*}/catalogItems:\014catalog_i"
-          + "tem\022\334\001\n\016GetCatalogItem\022@.google.cloud.re"
-          + "commendationengine.v1beta1.GetCatalogIte"
-          + "mRequest\0326.google.cloud.recommendationen"
-          + "gine.v1beta1.CatalogItem\"P\202\323\344\223\002C\022A/v1bet"
-          + "a1/{name=projects/*/locations/*/catalogs"
-          + "/*/catalogItems/**}\332A\004name\022\345\001\n\020ListCatal"
-          + "ogItems\022B.google.cloud.recommendationeng"
-          + "ine.v1beta1.ListCatalogItemsRequest\032C.go"
-          + "ogle.cloud.recommendationengine.v1beta1."
-          + "ListCatalogItemsResponse\"H\202\323\344\223\002B\022@/v1bet"
-          + "a1/{parent=projects/*/locations/*/catalo"
-          + "gs/*}/catalogItems\022\204\002\n\021UpdateCatalogItem"
-          + "\022C.google.cloud.recommendationengine.v1b"
-          + "eta1.UpdateCatalogItemRequest\0326.google.c"
-          + "loud.recommendationengine.v1beta1.Catalo"
-          + "gItem\"r\202\323\344\223\002Q2A/v1beta1/{name=projects/*"
-          + "/locations/*/catalogs/*/catalogItems/**}"
-          + ":\014catalog_item\332A\030catalog_item,update_mas"
-          + "k\022\302\001\n\021DeleteCatalogItem\022C.google.cloud.r"
-          + "ecommendationengine.v1beta1.DeleteCatalo"
-          + "gItemRequest\032\026.google.protobuf.Empty\"P\202\323"
-          + "\344\223\002C*A/v1beta1/{name=projects/*/location"
-          + "s/*/catalogs/*/catalogItems/**}\332A\004name\022\322"
-          + "\002\n\022ImportCatalogItems\022D.google.cloud.rec"
-          + "ommendationengine.v1beta1.ImportCatalogI"
-          + "temsRequest\032\035.google.longrunning.Operati"
-          + "on\"\326\001\202\323\344\223\002L\"G/v1beta1/{parent=projects/*"
-          + "/locations/*/catalogs/*}/catalogItems:im"
-          + "port:\001*\312A\200\001\nDgoogle.cloud.recommendation"
-          + "engine.v1beta1.ImportCatalogItemsRespons"
-          + "e\0228google.cloud.recommendationengine.v1b"
-          + "eta1.ImportMetadata\032W\312A#recommendationen"
-          + "gine.googleapis.com\322A.https://www.google"
-          + "apis.com/auth/cloud-platformB\237\002\n-com.goo"
-          + "gle.cloud.recommendationengine.v1beta1P\001"
-          + "Z]google.golang.org/genproto/googleapis/"
-          + "cloud/recommendationengine/v1beta1;recom"
-          + "mendationengine\242\002\005RECAI\252\002)Google.Cloud.R"
-          + "ecommendationEngine.V1Beta1\312\002)Google\\Clo"
-          + "ud\\RecommendationEngine\\V1beta1\352\002,Google"
-          + "::Cloud::RecommendationEngine::V1beta1b\006"
-          + "proto3"
+          + ".CatalogItemB\003\340A\002\"b\n\025GetCatalogItemReque"
+          + "st\022I\n\004name\030\001 \001(\tB;\340A\002\372A5\n3recommendation"
+          + "engine.googleapis.com/CatalogItemPath\"\244\001"
+          + "\n\027ListCatalogItemsRequest\022C\n\006parent\030\001 \001("
+          + "\tB3\340A\002\372A-\n+recommendationengine.googleap"
+          + "is.com/Catalog\022\026\n\tpage_size\030\002 \001(\005B\003\340A\001\022\027"
+          + "\n\npage_token\030\003 \001(\tB\003\340A\001\022\023\n\006filter\030\004 \001(\tB"
+          + "\003\340A\001\"\202\001\n\030ListCatalogItemsResponse\022M\n\rcat"
+          + "alog_items\030\001 \003(\01326.google.cloud.recommen"
+          + "dationengine.v1beta1.CatalogItem\022\027\n\017next"
+          + "_page_token\030\002 \001(\t\"\351\001\n\030UpdateCatalogItemR"
+          + "equest\022I\n\004name\030\001 \001(\tB;\340A\002\372A5\n3recommenda"
+          + "tionengine.googleapis.com/CatalogItemPat"
+          + "h\022Q\n\014catalog_item\030\002 \001(\01326.google.cloud.r"
+          + "ecommendationengine.v1beta1.CatalogItemB"
+          + "\003\340A\002\022/\n\013update_mask\030\003 \001(\0132\032.google.proto"
+          + "buf.FieldMask\"e\n\030DeleteCatalogItemReques"
+          + "t\022I\n\004name\030\001 \001(\tB;\340A\002\372A5\n3recommendatione"
+          + "ngine.googleapis.com/CatalogItemPath2\226\r\n"
+          + "\016CatalogService\022\376\001\n\021CreateCatalogItem\022C."
+          + "google.cloud.recommendationengine.v1beta"
+          + "1.CreateCatalogItemRequest\0326.google.clou"
+          + "d.recommendationengine.v1beta1.CatalogIt"
+          + "em\"l\202\323\344\223\002P\"@/v1beta1/{parent=projects/*/"
+          + "locations/*/catalogs/*}/catalogItems:\014ca"
+          + "talog_item\332A\023parent,catalog_item\022\334\001\n\016Get"
+          + "CatalogItem\022@.google.cloud.recommendatio"
+          + "nengine.v1beta1.GetCatalogItemRequest\0326."
+          + "google.cloud.recommendationengine.v1beta"
+          + "1.CatalogItem\"P\202\323\344\223\002C\022A/v1beta1/{name=pr"
+          + "ojects/*/locations/*/catalogs/*/catalogI"
+          + "tems/**}\332A\004name\022\365\001\n\020ListCatalogItems\022B.g"
+          + "oogle.cloud.recommendationengine.v1beta1"
+          + ".ListCatalogItemsRequest\032C.google.cloud."
+          + "recommendationengine.v1beta1.ListCatalog"
+          + "ItemsResponse\"X\202\323\344\223\002B\022@/v1beta1/{parent="
+          + "projects/*/locations/*/catalogs/*}/catal"
+          + "ogItems\332A\rparent,filter\022\211\002\n\021UpdateCatalo"
+          + "gItem\022C.google.cloud.recommendationengin"
+          + "e.v1beta1.UpdateCatalogItemRequest\0326.goo"
+          + "gle.cloud.recommendationengine.v1beta1.C"
+          + "atalogItem\"w\202\323\344\223\002Q2A/v1beta1/{name=proje"
+          + "cts/*/locations/*/catalogs/*/catalogItem"
+          + "s/**}:\014catalog_item\332A\035name,catalog_item,"
+          + "update_mask\022\302\001\n\021DeleteCatalogItem\022C.goog"
+          + "le.cloud.recommendationengine.v1beta1.De"
+          + "leteCatalogItemRequest\032\026.google.protobuf"
+          + ".Empty\"P\202\323\344\223\002C*A/v1beta1/{name=projects/"
+          + "*/locations/*/catalogs/*/catalogItems/**"
+          + "}\332A\004name\022\201\003\n\022ImportCatalogItems\022D.google"
+          + ".cloud.recommendationengine.v1beta1.Impo"
+          + "rtCatalogItemsRequest\032\035.google.longrunni"
+          + "ng.Operation\"\205\002\202\323\344\223\002L\"G/v1beta1/{parent="
+          + "projects/*/locations/*/catalogs/*}/catal"
+          + "ogItems:import:\001*\312A\200\001\nDgoogle.cloud.reco"
+          + "mmendationengine.v1beta1.ImportCatalogIt"
+          + "emsResponse\0228google.cloud.recommendation"
+          + "engine.v1beta1.ImportMetadata\332A,parent,r"
+          + "equest_id,input_config,errors_config\032W\312A"
+          + "#recommendationengine.googleapis.com\322A.h"
+          + "ttps://www.googleapis.com/auth/cloud-pla"
+          + "tformB\237\002\n-com.google.cloud.recommendatio"
+          + "nengine.v1beta1P\001Z]google.golang.org/gen"
+          + "proto/googleapis/cloud/recommendationeng"
+          + "ine/v1beta1;recommendationengine\242\002\005RECAI"
+          + "\252\002)Google.Cloud.RecommendationEngine.V1B"
+          + "eta1\312\002)Google\\Cloud\\RecommendationEngine"
+          + "\\V1beta1\352\002,Google::Cloud::Recommendation"
+          + "Engine::V1beta1b\006proto3"
     };
     descriptor =
         com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
@@ -143,8 +154,11 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
               com.google.api.AnnotationsProto.getDescriptor(),
               com.google.api.ClientProto.getDescriptor(),
               com.google.api.FieldBehaviorProto.getDescriptor(),
+              com.google.api.ResourceProto.getDescriptor(),
               com.google.cloud.recommendationengine.v1beta1.Catalog.getDescriptor(),
               com.google.cloud.recommendationengine.v1beta1.Import.getDescriptor(),
+              google.cloud.recommendationengine.v1beta1.RecommendationengineResources
+                  .getDescriptor(),
               com.google.longrunning.OperationsProto.getDescriptor(),
               com.google.protobuf.EmptyProto.getDescriptor(),
               com.google.protobuf.FieldMaskProto.getDescriptor(),
@@ -204,14 +218,17 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
     registry.add(com.google.api.AnnotationsProto.http);
     registry.add(com.google.api.ClientProto.methodSignature);
     registry.add(com.google.api.ClientProto.oauthScopes);
+    registry.add(com.google.api.ResourceProto.resourceReference);
     registry.add(com.google.longrunning.OperationsProto.operationInfo);
     com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor(
         descriptor, registry);
     com.google.api.AnnotationsProto.getDescriptor();
     com.google.api.ClientProto.getDescriptor();
     com.google.api.FieldBehaviorProto.getDescriptor();
+    com.google.api.ResourceProto.getDescriptor();
     com.google.cloud.recommendationengine.v1beta1.Catalog.getDescriptor();
     com.google.cloud.recommendationengine.v1beta1.Import.getDescriptor();
+    google.cloud.recommendationengine.v1beta1.RecommendationengineResources.getDescriptor();
     com.google.longrunning.OperationsProto.getDescriptor();
     com.google.protobuf.EmptyProto.getDescriptor();
     com.google.protobuf.FieldMaskProto.getDescriptor();
diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CollectUserEventRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CollectUserEventRequest.java
index 4dad1cc9..4909af3a 100644
--- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CollectUserEventRequest.java
+++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CollectUserEventRequest.java
@@ -142,7 +142,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
    * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store".
    * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -165,7 +167,9 @@ public java.lang.String getParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -234,10 +238,10 @@ public com.google.protobuf.ByteString getUserEventBytes() { * * *
-   * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-   * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-   * This is often more useful than the referer url, because many browsers only
-   * send the domain for 3rd party requests.
+   * Optional. The url including cgi-parameters but excluding the hash fragment.
+   * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+   * bytes. This is often more useful than the referer url, because many
+   * browsers only send the domain for 3rd party requests.
    * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -259,10 +263,10 @@ public java.lang.String getUri() { * * *
-   * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-   * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-   * This is often more useful than the referer url, because many browsers only
-   * send the domain for 3rd party requests.
+   * Optional. The url including cgi-parameters but excluding the hash fragment.
+   * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+   * bytes. This is often more useful than the referer url, because many
+   * browsers only send the domain for 3rd party requests.
    * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -287,9 +291,9 @@ public com.google.protobuf.ByteString getUriBytes() { * * *
-   * Optional. The event timestamp in milliseconds. This prevents browser caching of
-   * otherwise identical get requests. The name is abbreviated to reduce the
-   * payload bytes.
+   * Optional. The event timestamp in milliseconds. This prevents browser
+   * caching of otherwise identical get requests. The name is abbreviated to
+   * reduce the payload bytes.
    * 
* * int64 ets = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -683,7 +687,9 @@ public Builder mergeFrom( * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -706,7 +712,9 @@ public java.lang.String getParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -729,7 +737,9 @@ public com.google.protobuf.ByteString getParentBytes() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -751,7 +761,9 @@ public Builder setParent(java.lang.String value) { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -769,7 +781,9 @@ public Builder clearParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. @@ -896,10 +910,10 @@ public Builder setUserEventBytes(com.google.protobuf.ByteString value) { * * *
-     * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-     * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-     * This is often more useful than the referer url, because many browsers only
-     * send the domain for 3rd party requests.
+     * Optional. The url including cgi-parameters but excluding the hash fragment.
+     * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+     * bytes. This is often more useful than the referer url, because many
+     * browsers only send the domain for 3rd party requests.
      * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -921,10 +935,10 @@ public java.lang.String getUri() { * * *
-     * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-     * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-     * This is often more useful than the referer url, because many browsers only
-     * send the domain for 3rd party requests.
+     * Optional. The url including cgi-parameters but excluding the hash fragment.
+     * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+     * bytes. This is often more useful than the referer url, because many
+     * browsers only send the domain for 3rd party requests.
      * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -946,10 +960,10 @@ public com.google.protobuf.ByteString getUriBytes() { * * *
-     * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-     * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-     * This is often more useful than the referer url, because many browsers only
-     * send the domain for 3rd party requests.
+     * Optional. The url including cgi-parameters but excluding the hash fragment.
+     * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+     * bytes. This is often more useful than the referer url, because many
+     * browsers only send the domain for 3rd party requests.
      * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -970,10 +984,10 @@ public Builder setUri(java.lang.String value) { * * *
-     * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-     * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-     * This is often more useful than the referer url, because many browsers only
-     * send the domain for 3rd party requests.
+     * Optional. The url including cgi-parameters but excluding the hash fragment.
+     * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+     * bytes. This is often more useful than the referer url, because many
+     * browsers only send the domain for 3rd party requests.
      * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -990,10 +1004,10 @@ public Builder clearUri() { * * *
-     * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-     * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-     * This is often more useful than the referer url, because many browsers only
-     * send the domain for 3rd party requests.
+     * Optional. The url including cgi-parameters but excluding the hash fragment.
+     * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+     * bytes. This is often more useful than the referer url, because many
+     * browsers only send the domain for 3rd party requests.
      * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -1017,9 +1031,9 @@ public Builder setUriBytes(com.google.protobuf.ByteString value) { * * *
-     * Optional. The event timestamp in milliseconds. This prevents browser caching of
-     * otherwise identical get requests. The name is abbreviated to reduce the
-     * payload bytes.
+     * Optional. The event timestamp in milliseconds. This prevents browser
+     * caching of otherwise identical get requests. The name is abbreviated to
+     * reduce the payload bytes.
      * 
* * int64 ets = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -1033,9 +1047,9 @@ public long getEts() { * * *
-     * Optional. The event timestamp in milliseconds. This prevents browser caching of
-     * otherwise identical get requests. The name is abbreviated to reduce the
-     * payload bytes.
+     * Optional. The event timestamp in milliseconds. This prevents browser
+     * caching of otherwise identical get requests. The name is abbreviated to
+     * reduce the payload bytes.
      * 
* * int64 ets = 4 [(.google.api.field_behavior) = OPTIONAL]; @@ -1053,9 +1067,9 @@ public Builder setEts(long value) { * * *
-     * Optional. The event timestamp in milliseconds. This prevents browser caching of
-     * otherwise identical get requests. The name is abbreviated to reduce the
-     * payload bytes.
+     * Optional. The event timestamp in milliseconds. This prevents browser
+     * caching of otherwise identical get requests. The name is abbreviated to
+     * reduce the payload bytes.
      * 
* * int64 ets = 4 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CollectUserEventRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CollectUserEventRequestOrBuilder.java index 59cb9e0c..517ee20f 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CollectUserEventRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CollectUserEventRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface CollectUserEventRequestOrBuilder * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -44,7 +46,9 @@ public interface CollectUserEventRequestOrBuilder * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -79,10 +83,10 @@ public interface CollectUserEventRequestOrBuilder * * *
-   * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-   * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-   * This is often more useful than the referer url, because many browsers only
-   * send the domain for 3rd party requests.
+   * Optional. The url including cgi-parameters but excluding the hash fragment.
+   * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+   * bytes. This is often more useful than the referer url, because many
+   * browsers only send the domain for 3rd party requests.
    * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -94,10 +98,10 @@ public interface CollectUserEventRequestOrBuilder * * *
-   * Optional. The url including cgi-parameters but excluding the hash fragment. The URL
-   * must be truncated to 1.5K bytes to conservatively be under the 2K bytes.
-   * This is often more useful than the referer url, because many browsers only
-   * send the domain for 3rd party requests.
+   * Optional. The url including cgi-parameters but excluding the hash fragment.
+   * The URL must be truncated to 1.5K bytes to conservatively be under the 2K
+   * bytes. This is often more useful than the referer url, because many
+   * browsers only send the domain for 3rd party requests.
    * 
* * string uri = 3 [(.google.api.field_behavior) = OPTIONAL]; @@ -110,9 +114,9 @@ public interface CollectUserEventRequestOrBuilder * * *
-   * Optional. The event timestamp in milliseconds. This prevents browser caching of
-   * otherwise identical get requests. The name is abbreviated to reduce the
-   * payload bytes.
+   * Optional. The event timestamp in milliseconds. This prevents browser
+   * caching of otherwise identical get requests. The name is abbreviated to
+   * reduce the payload bytes.
    * 
* * int64 ets = 4 [(.google.api.field_behavior) = OPTIONAL]; diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreateCatalogItemRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreateCatalogItemRequest.java index c3f89260..3cc7199e 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreateCatalogItemRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreateCatalogItemRequest.java @@ -138,7 +138,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -161,7 +163,9 @@ public java.lang.String getParent() { * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -594,7 +598,9 @@ public Builder mergeFrom( * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -617,7 +623,9 @@ public java.lang.String getParent() { * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -640,7 +648,9 @@ public com.google.protobuf.ByteString getParentBytes() { * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -662,7 +672,9 @@ public Builder setParent(java.lang.String value) { * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -680,7 +692,9 @@ public Builder clearParent() { * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreateCatalogItemRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreateCatalogItemRequestOrBuilder.java index 04d5489d..c5e921ed 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreateCatalogItemRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreateCatalogItemRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface CreateCatalogItemRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -44,7 +46,9 @@ public interface CreateCatalogItemRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreatePredictionApiKeyRegistrationRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreatePredictionApiKeyRegistrationRequest.java index a5ff2c9f..fbce100d 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreatePredictionApiKeyRegistrationRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreatePredictionApiKeyRegistrationRequest.java @@ -145,7 +145,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -168,7 +170,9 @@ public java.lang.String getParent() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -195,7 +199,7 @@ public com.google.protobuf.ByteString getParentBytes() { *
* * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * * * @return Whether the predictionApiKeyRegistration field is set. @@ -211,7 +215,7 @@ public boolean hasPredictionApiKeyRegistration() { *
* * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * * * @return The predictionApiKeyRegistration. @@ -231,7 +235,7 @@ public boolean hasPredictionApiKeyRegistration() { *
* * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ public com.google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistrationOrBuilder @@ -643,7 +647,9 @@ public Builder mergeFrom( * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". *
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -666,7 +672,9 @@ public java.lang.String getParent() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -689,7 +697,9 @@ public com.google.protobuf.ByteString getParentBytes() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -711,7 +721,9 @@ public Builder setParent(java.lang.String value) { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -729,7 +741,9 @@ public Builder clearParent() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. @@ -760,7 +774,7 @@ public Builder setParentBytes(com.google.protobuf.ByteString value) { * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * * * @return Whether the predictionApiKeyRegistration field is set. @@ -776,7 +790,7 @@ public boolean hasPredictionApiKeyRegistration() { * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * * * @return The predictionApiKeyRegistration. @@ -800,7 +814,7 @@ public boolean hasPredictionApiKeyRegistration() { * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ public Builder setPredictionApiKeyRegistration( @@ -825,7 +839,7 @@ public Builder setPredictionApiKeyRegistration( * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ public Builder setPredictionApiKeyRegistration( @@ -848,7 +862,7 @@ public Builder setPredictionApiKeyRegistration( * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ public Builder mergePredictionApiKeyRegistration( @@ -878,7 +892,7 @@ public Builder mergePredictionApiKeyRegistration( * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ public Builder clearPredictionApiKeyRegistration() { @@ -900,7 +914,7 @@ public Builder clearPredictionApiKeyRegistration() { * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ public com.google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration.Builder @@ -917,7 +931,7 @@ public Builder clearPredictionApiKeyRegistration() { * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ public com.google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistrationOrBuilder @@ -939,7 +953,7 @@ public Builder clearPredictionApiKeyRegistration() { * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ private com.google.protobuf.SingleFieldBuilderV3< diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreatePredictionApiKeyRegistrationRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreatePredictionApiKeyRegistrationRequestOrBuilder.java index 2651ea4e..51dff722 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreatePredictionApiKeyRegistrationRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/CreatePredictionApiKeyRegistrationRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface CreatePredictionApiKeyRegistrationRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -44,7 +46,9 @@ public interface CreatePredictionApiKeyRegistrationRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -58,7 +62,7 @@ public interface CreatePredictionApiKeyRegistrationRequestOrBuilder * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * * * @return Whether the predictionApiKeyRegistration field is set. @@ -72,7 +76,7 @@ public interface CreatePredictionApiKeyRegistrationRequestOrBuilder * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * * * @return The predictionApiKeyRegistration. @@ -87,7 +91,7 @@ public interface CreatePredictionApiKeyRegistrationRequestOrBuilder * * * - * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2; + * .google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistration prediction_api_key_registration = 2 [(.google.api.field_behavior) = REQUIRED]; * */ com.google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistrationOrBuilder diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeleteCatalogItemRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeleteCatalogItemRequest.java index 293365b2..7e92f39a 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeleteCatalogItemRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeleteCatalogItemRequest.java @@ -121,7 +121,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -144,7 +146,9 @@ public java.lang.String getName() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -497,7 +501,9 @@ public Builder mergeFrom( * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -520,7 +526,9 @@ public java.lang.String getName() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -543,7 +551,9 @@ public com.google.protobuf.ByteString getNameBytes() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The name to set. * @return This builder for chaining. @@ -565,7 +575,9 @@ public Builder setName(java.lang.String value) { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -583,7 +595,9 @@ public Builder clearName() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for name to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeleteCatalogItemRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeleteCatalogItemRequestOrBuilder.java index 78204923..de3e7e3e 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeleteCatalogItemRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeleteCatalogItemRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface DeleteCatalogItemRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -44,7 +46,9 @@ public interface DeleteCatalogItemRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeletePredictionApiKeyRegistrationRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeletePredictionApiKeyRegistrationRequest.java index d5947946..f35cfad6 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeletePredictionApiKeyRegistrationRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeletePredictionApiKeyRegistrationRequest.java @@ -126,7 +126,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -149,7 +151,9 @@ public java.lang.String getName() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -538,7 +542,9 @@ public Builder mergeFrom( * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -561,7 +567,9 @@ public java.lang.String getName() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -584,7 +592,9 @@ public com.google.protobuf.ByteString getNameBytes() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The name to set. * @return This builder for chaining. @@ -606,7 +616,9 @@ public Builder setName(java.lang.String value) { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -624,7 +636,9 @@ public Builder clearName() { * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for name to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeletePredictionApiKeyRegistrationRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeletePredictionApiKeyRegistrationRequestOrBuilder.java index f2c850b8..cfd8f21f 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeletePredictionApiKeyRegistrationRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/DeletePredictionApiKeyRegistrationRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface DeletePredictionApiKeyRegistrationRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -44,7 +46,9 @@ public interface DeletePredictionApiKeyRegistrationRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/<YOUR_API_KEY>" * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/GetCatalogItemRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/GetCatalogItemRequest.java index ae90fcb8..544ef9cf 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/GetCatalogItemRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/GetCatalogItemRequest.java @@ -121,7 +121,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -144,7 +146,9 @@ public java.lang.String getName() { * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -496,7 +500,9 @@ public Builder mergeFrom( * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -519,7 +525,9 @@ public java.lang.String getName() { * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -542,7 +550,9 @@ public com.google.protobuf.ByteString getNameBytes() { * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The name to set. * @return This builder for chaining. @@ -564,7 +574,9 @@ public Builder setName(java.lang.String value) { * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -582,7 +594,9 @@ public Builder clearName() { * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for name to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/GetCatalogItemRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/GetCatalogItemRequestOrBuilder.java index f7fc3e20..807ad82c 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/GetCatalogItemRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/GetCatalogItemRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface GetCatalogItemRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -44,7 +46,9 @@ public interface GetCatalogItemRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/Import.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/Import.java index bea82033..29c23e26 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/Import.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/Import.java @@ -83,73 +83,81 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "\n6google/cloud/recommendationengine/v1be" + "ta1/import.proto\022)google.cloud.recommend" + "ationengine.v1beta1\032\037google/api/field_be" - + "havior.proto\0327google/cloud/recommendatio" - + "nengine/v1beta1/catalog.proto\032:google/cl" - + "oud/recommendationengine/v1beta1/user_ev" - + "ent.proto\032\037google/protobuf/timestamp.pro" - + "to\032\027google/rpc/status.proto\032\034google/api/" - + "annotations.proto\"$\n\tGcsSource\022\027\n\ninput_" - + "uris\030\001 \003(\tB\003\340A\002\"i\n\023CatalogInlineSource\022R" - + "\n\rcatalog_items\030\001 \003(\01326.google.cloud.rec" - + "ommendationengine.v1beta1.CatalogItemB\003\340" - + "A\001\"g\n\025UserEventInlineSource\022N\n\013user_even" - + "ts\030\001 \003(\01324.google.cloud.recommendationen" - + "gine.v1beta1.UserEventB\003\340A\001\"9\n\022ImportErr" - + "orsConfig\022\024\n\ngcs_prefix\030\001 \001(\tH\000B\r\n\013desti" - + "nation\"\367\001\n\031ImportCatalogItemsRequest\022\023\n\006" - + "parent\030\001 \001(\tB\003\340A\002\022\027\n\nrequest_id\030\002 \001(\tB\003\340" - + "A\001\022Q\n\014input_config\030\003 \001(\01326.google.cloud." - + "recommendationengine.v1beta1.InputConfig" - + "B\003\340A\002\022Y\n\rerrors_config\030\004 \001(\0132=.google.cl" - + "oud.recommendationengine.v1beta1.ImportE" - + "rrorsConfigB\003\340A\001\"\365\001\n\027ImportUserEventsReq" - + "uest\022\023\n\006parent\030\001 \001(\tB\003\340A\002\022\027\n\nrequest_id\030" - + "\002 \001(\tB\003\340A\001\022Q\n\014input_config\030\003 \001(\01326.googl" - + "e.cloud.recommendationengine.v1beta1.Inp" - + "utConfigB\003\340A\002\022Y\n\rerrors_config\030\004 \001(\0132=.g" - + "oogle.cloud.recommendationengine.v1beta1" - + ".ImportErrorsConfigB\003\340A\001\"\252\002\n\013InputConfig" - + "\022_\n\025catalog_inline_source\030\001 \001(\0132>.google" - + ".cloud.recommendationengine.v1beta1.Cata" - + "logInlineSourceH\000\022J\n\ngcs_source\030\002 \001(\01324." + + "havior.proto\032\031google/api/resource.proto\032" + + "7google/cloud/recommendationengine/v1bet" + + "a1/catalog.proto\032:google/cloud/recommend" + + "ationengine/v1beta1/user_event.proto\032Ngo" + + "ogle/cloud/recommendationengine/v1beta1/" + + "recommendationengine_resources.proto\032\037go" + + "ogle/protobuf/timestamp.proto\032\027google/rp" + + "c/status.proto\032\034google/api/annotations.p" + + "roto\"$\n\tGcsSource\022\027\n\ninput_uris\030\001 \003(\tB\003\340" + + "A\002\"i\n\023CatalogInlineSource\022R\n\rcatalog_ite" + + "ms\030\001 \003(\01326.google.cloud.recommendationen" + + "gine.v1beta1.CatalogItemB\003\340A\001\"g\n\025UserEve" + + "ntInlineSource\022N\n\013user_events\030\001 \003(\01324.go" + + "ogle.cloud.recommendationengine.v1beta1." + + "UserEventB\003\340A\001\"9\n\022ImportErrorsConfig\022\024\n\n" + + "gcs_prefix\030\001 \001(\tH\000B\r\n\013destination\"\247\002\n\031Im" + + "portCatalogItemsRequest\022C\n\006parent\030\001 \001(\tB" + + "3\340A\002\372A-\n+recommendationengine.googleapis" + + ".com/Catalog\022\027\n\nrequest_id\030\002 \001(\tB\003\340A\001\022Q\n" + + "\014input_config\030\003 \001(\01326.google.cloud.recom" + + "mendationengine.v1beta1.InputConfigB\003\340A\002" + + "\022Y\n\rerrors_config\030\004 \001(\0132=.google.cloud.r" + + "ecommendationengine.v1beta1.ImportErrors" + + "ConfigB\003\340A\001\"\250\002\n\027ImportUserEventsRequest\022" + + "F\n\006parent\030\001 \001(\tB6\340A\002\372A0\n.recommendatione" + + "ngine.googleapis.com/EventStore\022\027\n\nreque" + + "st_id\030\002 \001(\tB\003\340A\001\022Q\n\014input_config\030\003 \001(\01326" + + ".google.cloud.recommendationengine.v1bet" + + "a1.InputConfigB\003\340A\002\022Y\n\rerrors_config\030\004 \001" + + "(\0132=.google.cloud.recommendationengine.v" + + "1beta1.ImportErrorsConfigB\003\340A\001\"\252\002\n\013Input" + + "Config\022_\n\025catalog_inline_source\030\001 \001(\0132>." + "google.cloud.recommendationengine.v1beta" - + "1.GcsSourceH\000\022d\n\030user_event_inline_sourc" - + "e\030\003 \001(\0132@.google.cloud.recommendationeng" - + "ine.v1beta1.UserEventInlineSourceH\000B\010\n\006s" - + "ource\"\314\001\n\016ImportMetadata\022\026\n\016operation_na" - + "me\030\005 \001(\t\022\022\n\nrequest_id\030\003 \001(\t\022/\n\013create_t" - + "ime\030\004 \001(\0132\032.google.protobuf.Timestamp\022\025\n" - + "\rsuccess_count\030\001 \001(\003\022\025\n\rfailure_count\030\002 " - + "\001(\003\022/\n\013update_time\030\006 \001(\0132\032.google.protob" - + "uf.Timestamp\"\235\001\n\032ImportCatalogItemsRespo" - + "nse\022)\n\rerror_samples\030\001 \003(\0132\022.google.rpc." - + "Status\022T\n\rerrors_config\030\002 \001(\0132=.google.c" - + "loud.recommendationengine.v1beta1.Import" - + "ErrorsConfig\"\366\001\n\030ImportUserEventsRespons" - + "e\022)\n\rerror_samples\030\001 \003(\0132\022.google.rpc.St" - + "atus\022T\n\rerrors_config\030\002 \001(\0132=.google.clo" - + "ud.recommendationengine.v1beta1.ImportEr" - + "rorsConfig\022Y\n\016import_summary\030\003 \001(\0132A.goo" - + "gle.cloud.recommendationengine.v1beta1.U" - + "serEventImportSummary\"T\n\026UserEventImport" - + "Summary\022\033\n\023joined_events_count\030\001 \001(\003\022\035\n\025" - + "unjoined_events_count\030\002 \001(\003B\237\002\n-com.goog" - + "le.cloud.recommendationengine.v1beta1P\001Z" - + "]google.golang.org/genproto/googleapis/c" - + "loud/recommendationengine/v1beta1;recomm" - + "endationengine\242\002\005RECAI\252\002)Google.Cloud.Re" - + "commendationEngine.V1Beta1\312\002)Google\\Clou" - + "d\\RecommendationEngine\\V1beta1\352\002,Google:" - + ":Cloud::RecommendationEngine::V1beta1b\006p" - + "roto3" + + "1.CatalogInlineSourceH\000\022J\n\ngcs_source\030\002 " + + "\001(\01324.google.cloud.recommendationengine." + + "v1beta1.GcsSourceH\000\022d\n\030user_event_inline" + + "_source\030\003 \001(\0132@.google.cloud.recommendat" + + "ionengine.v1beta1.UserEventInlineSourceH" + + "\000B\010\n\006source\"\314\001\n\016ImportMetadata\022\026\n\016operat" + + "ion_name\030\005 \001(\t\022\022\n\nrequest_id\030\003 \001(\t\022/\n\013cr" + + "eate_time\030\004 \001(\0132\032.google.protobuf.Timest" + + "amp\022\025\n\rsuccess_count\030\001 \001(\003\022\025\n\rfailure_co" + + "unt\030\002 \001(\003\022/\n\013update_time\030\006 \001(\0132\032.google." + + "protobuf.Timestamp\"\235\001\n\032ImportCatalogItem" + + "sResponse\022)\n\rerror_samples\030\001 \003(\0132\022.googl" + + "e.rpc.Status\022T\n\rerrors_config\030\002 \001(\0132=.go" + + "ogle.cloud.recommendationengine.v1beta1." + + "ImportErrorsConfig\"\366\001\n\030ImportUserEventsR" + + "esponse\022)\n\rerror_samples\030\001 \003(\0132\022.google." + + "rpc.Status\022T\n\rerrors_config\030\002 \001(\0132=.goog" + + "le.cloud.recommendationengine.v1beta1.Im" + + "portErrorsConfig\022Y\n\016import_summary\030\003 \001(\013" + + "2A.google.cloud.recommendationengine.v1b" + + "eta1.UserEventImportSummary\"T\n\026UserEvent" + + "ImportSummary\022\033\n\023joined_events_count\030\001 \001" + + "(\003\022\035\n\025unjoined_events_count\030\002 \001(\003B\237\002\n-co" + + "m.google.cloud.recommendationengine.v1be" + + "ta1P\001Z]google.golang.org/genproto/google" + + "apis/cloud/recommendationengine/v1beta1;" + + "recommendationengine\242\002\005RECAI\252\002)Google.Cl" + + "oud.RecommendationEngine.V1Beta1\312\002)Googl" + + "e\\Cloud\\RecommendationEngine\\V1beta1\352\002,G" + + "oogle::Cloud::RecommendationEngine::V1be" + + "ta1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { com.google.api.FieldBehaviorProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), com.google.cloud.recommendationengine.v1beta1.Catalog.getDescriptor(), com.google.cloud.recommendationengine.v1beta1.UserEventOuterClass.getDescriptor(), + google.cloud.recommendationengine.v1beta1.RecommendationengineResources + .getDescriptor(), com.google.protobuf.TimestampProto.getDescriptor(), com.google.rpc.StatusProto.getDescriptor(), com.google.api.AnnotationsProto.getDescriptor(), @@ -250,11 +258,14 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.protobuf.ExtensionRegistry registry = com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); + registry.add(com.google.api.ResourceProto.resourceReference); com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.cloud.recommendationengine.v1beta1.Catalog.getDescriptor(); com.google.cloud.recommendationengine.v1beta1.UserEventOuterClass.getDescriptor(); + google.cloud.recommendationengine.v1beta1.RecommendationengineResources.getDescriptor(); com.google.protobuf.TimestampProto.getDescriptor(); com.google.rpc.StatusProto.getDescriptor(); com.google.api.AnnotationsProto.getDescriptor(); diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportCatalogItemsRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportCatalogItemsRequest.java index 79533863..7aa5218d 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportCatalogItemsRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportCatalogItemsRequest.java @@ -163,7 +163,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -185,7 +187,9 @@ public java.lang.String getParent() { * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -768,7 +772,9 @@ public Builder mergeFrom( * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -790,7 +796,9 @@ public java.lang.String getParent() { * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -812,7 +820,9 @@ public com.google.protobuf.ByteString getParentBytes() { * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -833,7 +843,9 @@ public Builder setParent(java.lang.String value) { * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -850,7 +862,9 @@ public Builder clearParent() { * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportCatalogItemsRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportCatalogItemsRequestOrBuilder.java index 643b93ec..100f745f 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportCatalogItemsRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportCatalogItemsRequestOrBuilder.java @@ -30,7 +30,9 @@ public interface ImportCatalogItemsRequestOrBuilder * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -42,7 +44,9 @@ public interface ImportCatalogItemsRequestOrBuilder * Required. "projects/1234/locations/global/catalogs/default_catalog" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportUserEventsRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportUserEventsRequest.java index 968cf5f7..337f9d15 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportUserEventsRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportUserEventsRequest.java @@ -160,10 +160,13 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-   * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+   * Required.
+   * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
    * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -182,10 +185,13 @@ public java.lang.String getParent() { * * *
-   * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+   * Required.
+   * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
    * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -766,10 +772,13 @@ public Builder mergeFrom( * * *
-     * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+     * Required.
+     * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
      * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -788,10 +797,13 @@ public java.lang.String getParent() { * * *
-     * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+     * Required.
+     * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
      * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -810,10 +822,13 @@ public com.google.protobuf.ByteString getParentBytes() { * * *
-     * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+     * Required.
+     * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
      * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -831,10 +846,13 @@ public Builder setParent(java.lang.String value) { * * *
-     * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+     * Required.
+     * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
      * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -848,10 +866,13 @@ public Builder clearParent() { * * *
-     * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+     * Required.
+     * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
      * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportUserEventsRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportUserEventsRequestOrBuilder.java index e0c8386b..b27746ff 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportUserEventsRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ImportUserEventsRequestOrBuilder.java @@ -27,10 +27,13 @@ public interface ImportUserEventsRequestOrBuilder * * *
-   * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+   * Required.
+   * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
    * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -39,10 +42,13 @@ public interface ImportUserEventsRequestOrBuilder * * *
-   * Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
+   * Required.
+   * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store"
    * 
* - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListCatalogItemsRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListCatalogItemsRequest.java index abd2bad5..93eed1b7 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListCatalogItemsRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListCatalogItemsRequest.java @@ -142,7 +142,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -165,7 +167,9 @@ public java.lang.String getParent() { * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -676,7 +680,9 @@ public Builder mergeFrom( * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -699,7 +705,9 @@ public java.lang.String getParent() { * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -722,7 +730,9 @@ public com.google.protobuf.ByteString getParentBytes() { * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -744,7 +754,9 @@ public Builder setParent(java.lang.String value) { * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -762,7 +774,9 @@ public Builder clearParent() { * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListCatalogItemsRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListCatalogItemsRequestOrBuilder.java index c33eac5a..1cdea692 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListCatalogItemsRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListCatalogItemsRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface ListCatalogItemsRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -44,7 +46,9 @@ public interface ListCatalogItemsRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListPredictionApiKeyRegistrationsRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListPredictionApiKeyRegistrationsRequest.java index 0dce32bd..ccedda6b 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListPredictionApiKeyRegistrationsRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListPredictionApiKeyRegistrationsRequest.java @@ -139,7 +139,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -162,7 +164,9 @@ public java.lang.String getParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -645,7 +649,9 @@ public Builder mergeFrom( * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -668,7 +674,9 @@ public java.lang.String getParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -691,7 +699,9 @@ public com.google.protobuf.ByteString getParentBytes() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -713,7 +723,9 @@ public Builder setParent(java.lang.String value) { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -731,7 +743,9 @@ public Builder clearParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListPredictionApiKeyRegistrationsRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListPredictionApiKeyRegistrationsRequestOrBuilder.java index c9b9f014..90d3dd79 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListPredictionApiKeyRegistrationsRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListPredictionApiKeyRegistrationsRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface ListPredictionApiKeyRegistrationsRequestOrBuilder * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -44,7 +46,9 @@ public interface ListPredictionApiKeyRegistrationsRequestOrBuilder * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListUserEventsRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListUserEventsRequest.java index 660dc1f6..c6f848a2 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListUserEventsRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListUserEventsRequest.java @@ -142,7 +142,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -165,7 +167,9 @@ public java.lang.String getParent() { * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -726,7 +730,9 @@ public Builder mergeFrom( * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -749,7 +755,9 @@ public java.lang.String getParent() { * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -772,7 +780,9 @@ public com.google.protobuf.ByteString getParentBytes() { * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -794,7 +804,9 @@ public Builder setParent(java.lang.String value) { * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -812,7 +824,9 @@ public Builder clearParent() { * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListUserEventsRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListUserEventsRequestOrBuilder.java index 8e87bd4e..35ec1d28 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListUserEventsRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/ListUserEventsRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface ListUserEventsRequestOrBuilder * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -44,7 +46,9 @@ public interface ListUserEventsRequestOrBuilder * "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictRequest.java index 5ce7911d..83fb27c3 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictRequest.java @@ -225,7 +225,9 @@ protected com.google.protobuf.MapField internalGetMapField(int number) { * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -269,7 +271,9 @@ public java.lang.String getName() { * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -1276,7 +1280,9 @@ public Builder mergeFrom( * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -1320,7 +1326,9 @@ public java.lang.String getName() { * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -1364,7 +1372,9 @@ public com.google.protobuf.ByteString getNameBytes() { * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The name to set. * @return This builder for chaining. @@ -1407,7 +1417,9 @@ public Builder setName(java.lang.String value) { * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -1446,7 +1458,9 @@ public Builder clearName() { * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for name to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictRequestOrBuilder.java index 9312c6f3..5708d41e 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictRequestOrBuilder.java @@ -52,7 +52,9 @@ public interface PredictRequestOrBuilder * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -86,7 +88,9 @@ public interface PredictRequestOrBuilder * https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApikeyRegistryService.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApikeyRegistryService.java index 1968833f..362df0a3 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApikeyRegistryService.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionApikeyRegistryService.java @@ -60,56 +60,64 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "ta1/prediction_apikey_registry_service.p" + "roto\022)google.cloud.recommendationengine." + "v1beta1\032\034google/api/annotations.proto\032\037g" - + "oogle/api/field_behavior.proto\032\033google/p" - + "rotobuf/empty.proto\032\027google/api/client.p" - + "roto\"/\n\034PredictionApiKeyRegistration\022\017\n\007" - + "api_key\030\001 \001(\t\"\262\001\n)CreatePredictionApiKey" - + "RegistrationRequest\022\023\n\006parent\030\001 \001(\tB\003\340A\002" - + "\022p\n\037prediction_api_key_registration\030\002 \001(" - + "\0132G.google.cloud.recommendationengine.v1" - + "beta1.PredictionApiKeyRegistration\"p\n(Li" - + "stPredictionApiKeyRegistrationsRequest\022\023" - + "\n\006parent\030\001 \001(\tB\003\340A\002\022\026\n\tpage_size\030\002 \001(\005B\003" - + "\340A\001\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\"\267\001\n)ListPre" - + "dictionApiKeyRegistrationsResponse\022q\n pr" - + "ediction_api_key_registrations\030\001 \003(\0132G.g" - + "oogle.cloud.recommendationengine.v1beta1" - + ".PredictionApiKeyRegistration\022\027\n\017next_pa" - + "ge_token\030\002 \001(\t\">\n)DeletePredictionApiKey" - + "RegistrationRequest\022\021\n\004name\030\001 \001(\tB\003\340A\0022\335" - + "\007\n\030PredictionApiKeyRegistry\022\257\002\n\"CreatePr" - + "edictionApiKeyRegistration\022T.google.clou" - + "d.recommendationengine.v1beta1.CreatePre" - + "dictionApiKeyRegistrationRequest\032G.googl" - + "e.cloud.recommendationengine.v1beta1.Pre" - + "dictionApiKeyRegistration\"j\202\323\344\223\002d\"_/v1be" - + "ta1/{parent=projects/*/locations/*/catal" - + "ogs/*/eventStores/*}/predictionApiKeyReg" - + "istrations:\001*\022\267\002\n!ListPredictionApiKeyRe" - + "gistrations\022S.google.cloud.recommendatio" - + "nengine.v1beta1.ListPredictionApiKeyRegi" - + "strationsRequest\032T.google.cloud.recommen" - + "dationengine.v1beta1.ListPredictionApiKe" - + "yRegistrationsResponse\"g\202\323\344\223\002a\022_/v1beta1" - + "/{parent=projects/*/locations/*/catalogs" - + "/*/eventStores/*}/predictionApiKeyRegist" - + "rations\022\373\001\n\"DeletePredictionApiKeyRegist" - + "ration\022T.google.cloud.recommendationengi" - + "ne.v1beta1.DeletePredictionApiKeyRegistr" - + "ationRequest\032\026.google.protobuf.Empty\"g\202\323" - + "\344\223\002a*_/v1beta1/{name=projects/*/location" - + "s/*/catalogs/*/eventStores/*/predictionA" - + "piKeyRegistrations/*}\032W\312A#recommendation" - + "engine.googleapis.com\322A.https://www.goog" - + "leapis.com/auth/cloud-platformB\237\002\n-com.g" - + "oogle.cloud.recommendationengine.v1beta1" - + "P\001Z]google.golang.org/genproto/googleapi" - + "s/cloud/recommendationengine/v1beta1;rec" - + "ommendationengine\242\002\005RECAI\252\002)Google.Cloud" - + ".RecommendationEngine.V1Beta1\312\002)Google\\C" - + "loud\\RecommendationEngine\\V1beta1\352\002,Goog" - + "le::Cloud::RecommendationEngine::V1beta1" - + "b\006proto3" + + "oogle/api/field_behavior.proto\032\031google/a" + + "pi/resource.proto\032\033google/protobuf/empty" + + ".proto\032\027google/api/client.proto\032Ngoogle/" + + "cloud/recommendationengine/v1beta1/recom" + + "mendationengine_resources.proto\"/\n\034Predi" + + "ctionApiKeyRegistration\022\017\n\007api_key\030\001 \001(\t" + + "\"\352\001\n)CreatePredictionApiKeyRegistrationR" + + "equest\022F\n\006parent\030\001 \001(\tB6\340A\002\372A0\n.recommen" + + "dationengine.googleapis.com/EventStore\022u" + + "\n\037prediction_api_key_registration\030\002 \001(\0132" + + "G.google.cloud.recommendationengine.v1be" + + "ta1.PredictionApiKeyRegistrationB\003\340A\002\"\243\001" + + "\n(ListPredictionApiKeyRegistrationsReque" + + "st\022F\n\006parent\030\001 \001(\tB6\340A\002\372A0\n.recommendati" + + "onengine.googleapis.com/EventStore\022\026\n\tpa" + + "ge_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB\003" + + "\340A\001\"\267\001\n)ListPredictionApiKeyRegistration" + + "sResponse\022q\n prediction_api_key_registra" + + "tions\030\001 \003(\0132G.google.cloud.recommendatio" + + "nengine.v1beta1.PredictionApiKeyRegistra" + + "tion\022\027\n\017next_page_token\030\002 \001(\t\"\203\001\n)Delete" + + "PredictionApiKeyRegistrationRequest\022V\n\004n" + + "ame\030\001 \001(\tBH\340A\002\372AB\n@recommendationengine." + + "googleapis.com/PredictionApiKeyRegistrat" + + "ion2\227\010\n\030PredictionApiKeyRegistry\022\331\002\n\"Cre" + + "atePredictionApiKeyRegistration\022T.google" + + ".cloud.recommendationengine.v1beta1.Crea" + + "tePredictionApiKeyRegistrationRequest\032G." + + "google.cloud.recommendationengine.v1beta" + + "1.PredictionApiKeyRegistration\"\223\001\202\323\344\223\002d\"" + + "_/v1beta1/{parent=projects/*/locations/*" + + "/catalogs/*/eventStores/*}/predictionApi" + + "KeyRegistrations:\001*\332A&parent,prediction_" + + "api_key_registration\022\300\002\n!ListPredictionA" + + "piKeyRegistrations\022S.google.cloud.recomm" + + "endationengine.v1beta1.ListPredictionApi" + + "KeyRegistrationsRequest\032T.google.cloud.r" + + "ecommendationengine.v1beta1.ListPredicti" + + "onApiKeyRegistrationsResponse\"p\202\323\344\223\002a\022_/" + + "v1beta1/{parent=projects/*/locations/*/c" + + "atalogs/*/eventStores/*}/predictionApiKe" + + "yRegistrations\332A\006parent\022\202\002\n\"DeletePredic" + + "tionApiKeyRegistration\022T.google.cloud.re" + + "commendationengine.v1beta1.DeletePredict" + + "ionApiKeyRegistrationRequest\032\026.google.pr" + + "otobuf.Empty\"n\202\323\344\223\002a*_/v1beta1/{name=pro" + + "jects/*/locations/*/catalogs/*/eventStor" + + "es/*/predictionApiKeyRegistrations/*}\332A\004" + + "name\032W\312A#recommendationengine.googleapis" + + ".com\322A.https://www.googleapis.com/auth/c" + + "loud-platformB\237\002\n-com.google.cloud.recom" + + "mendationengine.v1beta1P\001Z]google.golang" + + ".org/genproto/googleapis/cloud/recommend" + + "ationengine/v1beta1;recommendationengine" + + "\242\002\005RECAI\252\002)Google.Cloud.RecommendationEn" + + "gine.V1Beta1\312\002)Google\\Cloud\\Recommendati" + + "onEngine\\V1beta1\352\002,Google::Cloud::Recomm" + + "endationEngine::V1beta1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -117,8 +125,11 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.Descriptors.FileDescriptor[] { com.google.api.AnnotationsProto.getDescriptor(), com.google.api.FieldBehaviorProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), com.google.protobuf.EmptyProto.getDescriptor(), com.google.api.ClientProto.getDescriptor(), + google.cloud.recommendationengine.v1beta1.RecommendationengineResources + .getDescriptor(), }); internal_static_google_cloud_recommendationengine_v1beta1_PredictionApiKeyRegistration_descriptor = getDescriptor().getMessageTypes().get(0); @@ -165,13 +176,17 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { registry.add(com.google.api.ClientProto.defaultHost); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); registry.add(com.google.api.AnnotationsProto.http); + registry.add(com.google.api.ClientProto.methodSignature); registry.add(com.google.api.ClientProto.oauthScopes); + registry.add(com.google.api.ResourceProto.resourceReference); com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); com.google.api.AnnotationsProto.getDescriptor(); com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.protobuf.EmptyProto.getDescriptor(); com.google.api.ClientProto.getDescriptor(); + google.cloud.recommendationengine.v1beta1.RecommendationengineResources.getDescriptor(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceOuterClass.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceOuterClass.java index 11036b46..2f9874fd 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceOuterClass.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PredictionServiceOuterClass.java @@ -68,54 +68,56 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "ta1/prediction_service.proto\022)google.clo" + "ud.recommendationengine.v1beta1\032\034google/" + "api/annotations.proto\032\037google/api/field_" - + "behavior.proto\032:google/cloud/recommendat" - + "ionengine/v1beta1/user_event.proto\032\034goog" - + "le/protobuf/struct.proto\032\027google/api/cli" - + "ent.proto\"\374\003\n\016PredictRequest\022\021\n\004name\030\001 \001" - + "(\tB\003\340A\002\022M\n\nuser_event\030\002 \001(\01324.google.clo" - + "ud.recommendationengine.v1beta1.UserEven" - + "tB\003\340A\002\022\026\n\tpage_size\030\007 \001(\005B\003\340A\001\022\027\n\npage_t" - + "oken\030\010 \001(\tB\003\340A\001\022\023\n\006filter\030\003 \001(\tB\003\340A\001\022\024\n\007" - + "dry_run\030\004 \001(\010B\003\340A\001\022Z\n\006params\030\006 \003(\0132E.goo" + + "behavior.proto\032\031google/api/resource.prot" + + "o\032:google/cloud/recommendationengine/v1b" + + "eta1/user_event.proto\032\034google/protobuf/s" + + "truct.proto\032\027google/api/client.proto\"\256\004\n" + + "\016PredictRequest\022C\n\004name\030\001 \001(\tB5\340A\002\372A/\n-r" + + "ecommendationengine.googleapis.com/Place" + + "ment\022M\n\nuser_event\030\002 \001(\01324.google.cloud." + + "recommendationengine.v1beta1.UserEventB\003" + + "\340A\002\022\026\n\tpage_size\030\007 \001(\005B\003\340A\001\022\027\n\npage_toke" + + "n\030\010 \001(\tB\003\340A\001\022\023\n\006filter\030\003 \001(\tB\003\340A\001\022\024\n\007dry" + + "_run\030\004 \001(\010B\003\340A\001\022Z\n\006params\030\006 \003(\0132E.google" + + ".cloud.recommendationengine.v1beta1.Pred" + + "ictRequest.ParamsEntryB\003\340A\001\022Z\n\006labels\030\t " + + "\003(\0132E.google.cloud.recommendationengine." + + "v1beta1.PredictRequest.LabelsEntryB\003\340A\001\032" + + "E\n\013ParamsEntry\022\013\n\003key\030\001 \001(\t\022%\n\005value\030\002 \001" + + "(\0132\026.google.protobuf.Value:\0028\001\032-\n\013Labels" + + "Entry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\342\004" + + "\n\017PredictResponse\022\\\n\007results\030\001 \003(\0132K.goo" + "gle.cloud.recommendationengine.v1beta1.P" - + "redictRequest.ParamsEntryB\003\340A\001\022Z\n\006labels" - + "\030\t \003(\0132E.google.cloud.recommendationengi" - + "ne.v1beta1.PredictRequest.LabelsEntryB\003\340" - + "A\001\032E\n\013ParamsEntry\022\013\n\003key\030\001 \001(\t\022%\n\005value\030" - + "\002 \001(\0132\026.google.protobuf.Value:\0028\001\032-\n\013Lab" - + "elsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001" - + "\"\342\004\n\017PredictResponse\022\\\n\007results\030\001 \003(\0132K." - + "google.cloud.recommendationengine.v1beta" - + "1.PredictResponse.PredictionResult\022\034\n\024re" - + "commendation_token\030\002 \001(\t\022 \n\030items_missin" - + "g_in_catalog\030\003 \003(\t\022\017\n\007dry_run\030\004 \001(\010\022Z\n\010m" - + "etadata\030\005 \003(\0132H.google.cloud.recommendat" - + "ionengine.v1beta1.PredictResponse.Metada" - + "taEntry\022\027\n\017next_page_token\030\006 \001(\t\032\341\001\n\020Pre" - + "dictionResult\022\n\n\002id\030\001 \001(\t\022t\n\ritem_metada" - + "ta\030\002 \003(\0132].google.cloud.recommendationen" - + "gine.v1beta1.PredictResponse.PredictionR" - + "esult.ItemMetadataEntry\032K\n\021ItemMetadataE" - + "ntry\022\013\n\003key\030\001 \001(\t\022%\n\005value\030\002 \001(\0132\026.googl" - + "e.protobuf.Value:\0028\001\032G\n\rMetadataEntry\022\013\n" - + "\003key\030\001 \001(\t\022%\n\005value\030\002 \001(\0132\026.google.proto" - + "buf.Value:\0028\0012\320\002\n\021PredictionService\022\341\001\n\007" - + "Predict\0229.google.cloud.recommendationeng" - + "ine.v1beta1.PredictRequest\032:.google.clou" - + "d.recommendationengine.v1beta1.PredictRe" - + "sponse\"_\202\323\344\223\002Y\"T/v1beta1/{name=projects/" - + "*/locations/*/catalogs/*/eventStores/*/p" - + "lacements/*}:predict:\001*\032W\312A#recommendati" - + "onengine.googleapis.com\322A.https://www.go" - + "ogleapis.com/auth/cloud-platformB\237\002\n-com" - + ".google.cloud.recommendationengine.v1bet" - + "a1P\001Z]google.golang.org/genproto/googlea" - + "pis/cloud/recommendationengine/v1beta1;r" - + "ecommendationengine\242\002\005RECAI\252\002)Google.Clo" - + "ud.RecommendationEngine.V1Beta1\312\002)Google" - + "\\Cloud\\RecommendationEngine\\V1beta1\352\002,Go" - + "ogle::Cloud::RecommendationEngine::V1bet" - + "a1b\006proto3" + + "redictResponse.PredictionResult\022\034\n\024recom" + + "mendation_token\030\002 \001(\t\022 \n\030items_missing_i" + + "n_catalog\030\003 \003(\t\022\017\n\007dry_run\030\004 \001(\010\022Z\n\010meta" + + "data\030\005 \003(\0132H.google.cloud.recommendation" + + "engine.v1beta1.PredictResponse.MetadataE" + + "ntry\022\027\n\017next_page_token\030\006 \001(\t\032\341\001\n\020Predic" + + "tionResult\022\n\n\002id\030\001 \001(\t\022t\n\ritem_metadata\030" + + "\002 \003(\0132].google.cloud.recommendationengin" + + "e.v1beta1.PredictResponse.PredictionResu" + + "lt.ItemMetadataEntry\032K\n\021ItemMetadataEntr" + + "y\022\013\n\003key\030\001 \001(\t\022%\n\005value\030\002 \001(\0132\026.google.p" + + "rotobuf.Value:\0028\001\032G\n\rMetadataEntry\022\013\n\003ke" + + "y\030\001 \001(\t\022%\n\005value\030\002 \001(\0132\026.google.protobuf" + + ".Value:\0028\0012\342\002\n\021PredictionService\022\363\001\n\007Pre" + + "dict\0229.google.cloud.recommendationengine" + + ".v1beta1.PredictRequest\032:.google.cloud.r" + + "ecommendationengine.v1beta1.PredictRespo" + + "nse\"q\202\323\344\223\002Y\"T/v1beta1/{name=projects/*/l" + + "ocations/*/catalogs/*/eventStores/*/plac" + + "ements/*}:predict:\001*\332A\017name,user_event\032W" + + "\312A#recommendationengine.googleapis.com\322A" + + ".https://www.googleapis.com/auth/cloud-p" + + "latformB\237\002\n-com.google.cloud.recommendat" + + "ionengine.v1beta1P\001Z]google.golang.org/g" + + "enproto/googleapis/cloud/recommendatione" + + "ngine/v1beta1;recommendationengine\242\002\005REC" + + "AI\252\002)Google.Cloud.RecommendationEngine.V" + + "1Beta1\312\002)Google\\Cloud\\RecommendationEngi" + + "ne\\V1beta1\352\002,Google::Cloud::Recommendati" + + "onEngine::V1beta1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -123,6 +125,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.Descriptors.FileDescriptor[] { com.google.api.AnnotationsProto.getDescriptor(), com.google.api.FieldBehaviorProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), com.google.cloud.recommendationengine.v1beta1.UserEventOuterClass.getDescriptor(), com.google.protobuf.StructProto.getDescriptor(), com.google.api.ClientProto.getDescriptor(), @@ -203,11 +206,14 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { registry.add(com.google.api.ClientProto.defaultHost); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); registry.add(com.google.api.AnnotationsProto.http); + registry.add(com.google.api.ClientProto.methodSignature); registry.add(com.google.api.ClientProto.oauthScopes); + registry.add(com.google.api.ResourceProto.resourceReference); com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); com.google.api.AnnotationsProto.getDescriptor(); com.google.api.FieldBehaviorProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.cloud.recommendationengine.v1beta1.UserEventOuterClass.getDescriptor(); com.google.protobuf.StructProto.getDescriptor(); com.google.api.ClientProto.getDescriptor(); diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PurgeUserEventsRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PurgeUserEventsRequest.java index 77a4d3c2..f50e193f 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PurgeUserEventsRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PurgeUserEventsRequest.java @@ -135,7 +135,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -159,7 +161,9 @@ public java.lang.String getParent() { * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -643,7 +647,9 @@ public Builder mergeFrom( * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -667,7 +673,9 @@ public java.lang.String getParent() { * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -691,7 +699,9 @@ public com.google.protobuf.ByteString getParentBytes() { * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -714,7 +724,9 @@ public Builder setParent(java.lang.String value) { * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -733,7 +745,9 @@ public Builder clearParent() { * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PurgeUserEventsRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PurgeUserEventsRequestOrBuilder.java index 3bae543f..a4a46872 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PurgeUserEventsRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/PurgeUserEventsRequestOrBuilder.java @@ -32,7 +32,9 @@ public interface PurgeUserEventsRequestOrBuilder * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -46,7 +48,9 @@ public interface PurgeUserEventsRequestOrBuilder * "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UpdateCatalogItemRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UpdateCatalogItemRequest.java index a24b1773..b93a9bae 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UpdateCatalogItemRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UpdateCatalogItemRequest.java @@ -153,7 +153,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -176,7 +178,9 @@ public java.lang.String getName() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -257,8 +261,7 @@ public com.google.cloud.recommendationengine.v1beta1.CatalogItem getCatalogItem( * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; * * @return Whether the updateMask field is set. */ @@ -273,8 +276,7 @@ public boolean hasUpdateMask() { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; * * @return The updateMask. */ @@ -289,8 +291,7 @@ public com.google.protobuf.FieldMask getUpdateMask() { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { return getUpdateMask(); @@ -689,7 +690,9 @@ public Builder mergeFrom( * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -712,7 +715,9 @@ public java.lang.String getName() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -735,7 +740,9 @@ public com.google.protobuf.ByteString getNameBytes() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The name to set. * @return This builder for chaining. @@ -757,7 +764,9 @@ public Builder setName(java.lang.String value) { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -775,7 +784,9 @@ public Builder clearName() { * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for name to set. * @return This builder for chaining. @@ -1021,8 +1032,7 @@ public Builder clearCatalogItem() { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; * * @return Whether the updateMask field is set. */ @@ -1037,8 +1047,7 @@ public boolean hasUpdateMask() { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; * * @return The updateMask. */ @@ -1059,8 +1068,7 @@ public com.google.protobuf.FieldMask getUpdateMask() { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ public Builder setUpdateMask(com.google.protobuf.FieldMask value) { if (updateMaskBuilder_ == null) { @@ -1083,8 +1091,7 @@ public Builder setUpdateMask(com.google.protobuf.FieldMask value) { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ public Builder setUpdateMask(com.google.protobuf.FieldMask.Builder builderForValue) { if (updateMaskBuilder_ == null) { @@ -1104,8 +1111,7 @@ public Builder setUpdateMask(com.google.protobuf.FieldMask.Builder builderForVal * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ public Builder mergeUpdateMask(com.google.protobuf.FieldMask value) { if (updateMaskBuilder_ == null) { @@ -1130,8 +1136,7 @@ public Builder mergeUpdateMask(com.google.protobuf.FieldMask value) { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ public Builder clearUpdateMask() { if (updateMaskBuilder_ == null) { @@ -1152,8 +1157,7 @@ public Builder clearUpdateMask() { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ public com.google.protobuf.FieldMask.Builder getUpdateMaskBuilder() { @@ -1168,8 +1172,7 @@ public com.google.protobuf.FieldMask.Builder getUpdateMaskBuilder() { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { if (updateMaskBuilder_ != null) { @@ -1188,8 +1191,7 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.FieldMask, diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UpdateCatalogItemRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UpdateCatalogItemRequestOrBuilder.java index b05c8975..27d0534f 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UpdateCatalogItemRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UpdateCatalogItemRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface UpdateCatalogItemRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The name. */ @@ -44,7 +46,9 @@ public interface UpdateCatalogItemRequestOrBuilder * "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". * * - * string name = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for name. */ @@ -102,8 +106,7 @@ public interface UpdateCatalogItemRequestOrBuilder * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; * * @return Whether the updateMask field is set. */ @@ -116,8 +119,7 @@ public interface UpdateCatalogItemRequestOrBuilder * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; * * @return The updateMask. */ @@ -130,8 +132,7 @@ public interface UpdateCatalogItemRequestOrBuilder * set, will by default update all fields. * * - * .google.protobuf.FieldMask update_mask = 3 [(.google.api.field_behavior) = OPTIONAL]; - * + * .google.protobuf.FieldMask update_mask = 3; */ com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder(); } diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceOuterClass.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceOuterClass.java index 452699e5..0240228f 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceOuterClass.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/UserEventServiceOuterClass.java @@ -69,77 +69,86 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "ud.recommendationengine.v1beta1\032\034google/" + "api/annotations.proto\032\037google/api/field_" + "behavior.proto\032\031google/api/httpbody.prot" - + "o\0326google/cloud/recommendationengine/v1b" - + "eta1/import.proto\032:google/cloud/recommen" - + "dationengine/v1beta1/user_event.proto\032#g" - + "oogle/longrunning/operations.proto\032\037goog" - + "le/protobuf/timestamp.proto\032\026google/type" - + "/date.proto\032\027google/api/client.proto\"V\n\026" - + "PurgeUserEventsRequest\022\023\n\006parent\030\001 \001(\tB\003" - + "\340A\002\022\023\n\006filter\030\002 \001(\tB\003\340A\002\022\022\n\005force\030\003 \001(\010B" - + "\003\340A\001\"b\n\027PurgeUserEventsMetadata\022\026\n\016opera" - + "tion_name\030\001 \001(\t\022/\n\013create_time\030\002 \001(\0132\032.g" - + "oogle.protobuf.Timestamp\"\210\001\n\027PurgeUserEv" - + "entsResponse\022\033\n\023purged_events_count\030\001 \001(" - + "\003\022P\n\022user_events_sample\030\002 \003(\01324.google.c" - + "loud.recommendationengine.v1beta1.UserEv" - + "ent\"{\n\025WriteUserEventRequest\022\023\n\006parent\030\001" - + " \001(\tB\003\340A\002\022M\n\nuser_event\030\002 \001(\01324.google.c" - + "loud.recommendationengine.v1beta1.UserEv" - + "entB\003\340A\002\"k\n\027CollectUserEventRequest\022\023\n\006p" - + "arent\030\001 \001(\tB\003\340A\002\022\027\n\nuser_event\030\002 \001(\tB\003\340A" - + "\002\022\020\n\003uri\030\003 \001(\tB\003\340A\001\022\020\n\003ets\030\004 \001(\003B\003\340A\001\"r\n" - + "\025ListUserEventsRequest\022\023\n\006parent\030\001 \001(\tB\003" - + "\340A\002\022\026\n\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_toke" - + "n\030\003 \001(\tB\003\340A\001\022\023\n\006filter\030\004 \001(\tB\003\340A\001\"|\n\026Lis" - + "tUserEventsResponse\022I\n\013user_events\030\001 \003(\013" + + "o\032\031google/api/resource.proto\0326google/clo" + + "ud/recommendationengine/v1beta1/import.p" + + "roto\032:google/cloud/recommendationengine/" + + "v1beta1/user_event.proto\032#google/longrun" + + "ning/operations.proto\032\037google/protobuf/t" + + "imestamp.proto\032\026google/type/date.proto\032\027" + + "google/api/client.proto\"\211\001\n\026PurgeUserEve" + + "ntsRequest\022F\n\006parent\030\001 \001(\tB6\340A\002\372A0\n.reco" + + "mmendationengine.googleapis.com/EventSto" + + "re\022\023\n\006filter\030\002 \001(\tB\003\340A\002\022\022\n\005force\030\003 \001(\010B\003" + + "\340A\001\"b\n\027PurgeUserEventsMetadata\022\026\n\016operat" + + "ion_name\030\001 \001(\t\022/\n\013create_time\030\002 \001(\0132\032.go" + + "ogle.protobuf.Timestamp\"\210\001\n\027PurgeUserEve" + + "ntsResponse\022\033\n\023purged_events_count\030\001 \001(\003" + + "\022P\n\022user_events_sample\030\002 \003(\01324.google.cl" + + "oud.recommendationengine.v1beta1.UserEve" + + "nt\"\256\001\n\025WriteUserEventRequest\022F\n\006parent\030\001" + + " \001(\tB6\340A\002\372A0\n.recommendationengine.googl" + + "eapis.com/EventStore\022M\n\nuser_event\030\002 \001(\013" + "24.google.cloud.recommendationengine.v1b" - + "eta1.UserEvent\022\027\n\017next_page_token\030\002 \001(\t2" - + "\323\013\n\020UserEventService\022\360\001\n\016WriteUserEvent\022" - + "@.google.cloud.recommendationengine.v1be" - + "ta1.WriteUserEventRequest\0324.google.cloud" - + ".recommendationengine.v1beta1.UserEvent\"" - + "f\202\323\344\223\002`\"R/v1beta1/{parent=projects/*/loc" - + "ations/*/catalogs/*/eventStores/*}/userE" - + "vents:write:\nuser_event\022\312\001\n\020CollectUserE" - + "vent\022B.google.cloud.recommendationengine" - + ".v1beta1.CollectUserEventRequest\032\024.googl" - + "e.api.HttpBody\"\\\202\323\344\223\002V\022T/v1beta1/{parent" - + "=projects/*/locations/*/catalogs/*/event" - + "Stores/*}/userEvents:collect\022\353\001\n\016ListUse" - + "rEvents\022@.google.cloud.recommendationeng" - + "ine.v1beta1.ListUserEventsRequest\032A.goog" - + "le.cloud.recommendationengine.v1beta1.Li" - + "stUserEventsResponse\"T\202\323\344\223\002N\022L/v1beta1/{" + + "eta1.UserEventB\003\340A\002\"\236\001\n\027CollectUserEvent" + + "Request\022F\n\006parent\030\001 \001(\tB6\340A\002\372A0\n.recomme" + + "ndationengine.googleapis.com/EventStore\022" + + "\027\n\nuser_event\030\002 \001(\tB\003\340A\002\022\020\n\003uri\030\003 \001(\tB\003\340" + + "A\001\022\020\n\003ets\030\004 \001(\003B\003\340A\001\"\245\001\n\025ListUserEventsR" + + "equest\022F\n\006parent\030\001 \001(\tB6\340A\002\372A0\n.recommen" + + "dationengine.googleapis.com/EventStore\022\026" + + "\n\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001" + + "(\tB\003\340A\001\022\023\n\006filter\030\004 \001(\tB\003\340A\001\"|\n\026ListUser" + + "EventsResponse\022I\n\013user_events\030\001 \003(\01324.go" + + "ogle.cloud.recommendationengine.v1beta1." + + "UserEvent\022\027\n\017next_page_token\030\002 \001(\t2\330\014\n\020U" + + "serEventService\022\204\002\n\016WriteUserEvent\022@.goo" + + "gle.cloud.recommendationengine.v1beta1.W" + + "riteUserEventRequest\0324.google.cloud.reco" + + "mmendationengine.v1beta1.UserEvent\"z\202\323\344\223" + + "\002`\"R/v1beta1/{parent=projects/*/location" + + "s/*/catalogs/*/eventStores/*}/userEvents" + + ":write:\nuser_event\332A\021parent,user_event\022\346" + + "\001\n\020CollectUserEvent\022B.google.cloud.recom" + + "mendationengine.v1beta1.CollectUserEvent" + + "Request\032\024.google.api.HttpBody\"x\202\323\344\223\002V\022T/" + + "v1beta1/{parent=projects/*/locations/*/c" + + "atalogs/*/eventStores/*}/userEvents:coll" + + "ect\332A\031parent,user_event,uri,ets\022\373\001\n\016List" + + "UserEvents\022@.google.cloud.recommendation" + + "engine.v1beta1.ListUserEventsRequest\032A.g" + + "oogle.cloud.recommendationengine.v1beta1" + + ".ListUserEventsResponse\"d\202\323\344\223\002N\022L/v1beta" + + "1/{parent=projects/*/locations/*/catalog" + + "s/*/eventStores/*}/userEvents\332A\rparent,f" + + "ilter\022\363\002\n\017PurgeUserEvents\022A.google.cloud" + + ".recommendationengine.v1beta1.PurgeUserE" + + "ventsRequest\032\035.google.longrunning.Operat" + + "ion\"\375\001\202\323\344\223\002W\"R/v1beta1/{parent=projects/" + + "*/locations/*/catalogs/*/eventStores/*}/" + + "userEvents:purge:\001*\312A\206\001\nAgoogle.cloud.re" + + "commendationengine.v1beta1.PurgeUserEven" + + "tsResponse\022Agoogle.cloud.recommendatione" + + "ngine.v1beta1.PurgeUserEventsMetadata\332A\023" + + "parent,filter,force\022\206\003\n\020ImportUserEvents" + + "\022B.google.cloud.recommendationengine.v1b" + + "eta1.ImportUserEventsRequest\032\035.google.lo" + + "ngrunning.Operation\"\216\002\202\323\344\223\002X\"S/v1beta1/{" + "parent=projects/*/locations/*/catalogs/*" - + "/eventStores/*}/userEvents\022\335\002\n\017PurgeUser" - + "Events\022A.google.cloud.recommendationengi" - + "ne.v1beta1.PurgeUserEventsRequest\032\035.goog" - + "le.longrunning.Operation\"\347\001\202\323\344\223\002W\"R/v1be" - + "ta1/{parent=projects/*/locations/*/catal" - + "ogs/*/eventStores/*}/userEvents:purge:\001*" - + "\312A\206\001\nAgoogle.cloud.recommendationengine." - + "v1beta1.PurgeUserEventsResponse\022Agoogle." - + "cloud.recommendationengine.v1beta1.Purge" - + "UserEventsMetadata\022\327\002\n\020ImportUserEvents\022" - + "B.google.cloud.recommendationengine.v1be" - + "ta1.ImportUserEventsRequest\032\035.google.lon" - + "grunning.Operation\"\337\001\202\323\344\223\002X\"S/v1beta1/{p" - + "arent=projects/*/locations/*/catalogs/*/" - + "eventStores/*}/userEvents:import:\001*\312A~\nB" - + "google.cloud.recommendationengine.v1beta" - + "1.ImportUserEventsResponse\0228google.cloud" - + ".recommendationengine.v1beta1.ImportMeta" - + "data\032W\312A#recommendationengine.googleapis" - + ".com\322A.https://www.googleapis.com/auth/c" - + "loud-platformB\237\002\n-com.google.cloud.recom" - + "mendationengine.v1beta1P\001Z]google.golang" - + ".org/genproto/googleapis/cloud/recommend" - + "ationengine/v1beta1;recommendationengine" - + "\242\002\005RECAI\252\002)Google.Cloud.RecommendationEn" - + "gine.V1Beta1\312\002)Google\\Cloud\\Recommendati" - + "onEngine\\V1beta1\352\002,Google::Cloud::Recomm" - + "endationEngine::V1beta1b\006proto3" + + "/eventStores/*}/userEvents:import:\001*\312A~\n" + + "Bgoogle.cloud.recommendationengine.v1bet" + + "a1.ImportUserEventsResponse\0228google.clou" + + "d.recommendationengine.v1beta1.ImportMet" + + "adata\332A,parent,request_id,input_config,e" + + "rrors_config\032W\312A#recommendationengine.go" + + "ogleapis.com\322A.https://www.googleapis.co" + + "m/auth/cloud-platformB\237\002\n-com.google.clo" + + "ud.recommendationengine.v1beta1P\001Z]googl" + + "e.golang.org/genproto/googleapis/cloud/r" + + "ecommendationengine/v1beta1;recommendati" + + "onengine\242\002\005RECAI\252\002)Google.Cloud.Recommen" + + "dationEngine.V1Beta1\312\002)Google\\Cloud\\Reco" + + "mmendationEngine\\V1beta1\352\002,Google::Cloud" + + "::RecommendationEngine::V1beta1b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -148,6 +157,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.api.AnnotationsProto.getDescriptor(), com.google.api.FieldBehaviorProto.getDescriptor(), com.google.api.HttpBodyProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), com.google.cloud.recommendationengine.v1beta1.Import.getDescriptor(), com.google.cloud.recommendationengine.v1beta1.UserEventOuterClass.getDescriptor(), com.google.longrunning.OperationsProto.getDescriptor(), @@ -216,13 +226,16 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { registry.add(com.google.api.ClientProto.defaultHost); registry.add(com.google.api.FieldBehaviorProto.fieldBehavior); registry.add(com.google.api.AnnotationsProto.http); + registry.add(com.google.api.ClientProto.methodSignature); registry.add(com.google.api.ClientProto.oauthScopes); + registry.add(com.google.api.ResourceProto.resourceReference); registry.add(com.google.longrunning.OperationsProto.operationInfo); com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); com.google.api.AnnotationsProto.getDescriptor(); com.google.api.FieldBehaviorProto.getDescriptor(); com.google.api.HttpBodyProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.cloud.recommendationengine.v1beta1.Import.getDescriptor(); com.google.cloud.recommendationengine.v1beta1.UserEventOuterClass.getDescriptor(); com.google.longrunning.OperationsProto.getDescriptor(); diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/WriteUserEventRequest.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/WriteUserEventRequest.java index 7f73443f..57301118 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/WriteUserEventRequest.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/WriteUserEventRequest.java @@ -138,7 +138,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -161,7 +163,9 @@ public java.lang.String getParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -592,7 +596,9 @@ public Builder mergeFrom( * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -615,7 +621,9 @@ public java.lang.String getParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ @@ -638,7 +646,9 @@ public com.google.protobuf.ByteString getParentBytes() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The parent to set. * @return This builder for chaining. @@ -660,7 +670,9 @@ public Builder setParent(java.lang.String value) { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -678,7 +690,9 @@ public Builder clearParent() { * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for parent to set. * @return This builder for chaining. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/WriteUserEventRequestOrBuilder.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/WriteUserEventRequestOrBuilder.java index a7167220..f9ec3ebb 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/WriteUserEventRequestOrBuilder.java +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/com/google/cloud/recommendationengine/v1beta1/WriteUserEventRequestOrBuilder.java @@ -31,7 +31,9 @@ public interface WriteUserEventRequestOrBuilder * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The parent. */ @@ -44,7 +46,9 @@ public interface WriteUserEventRequestOrBuilder * "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". * * - * string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... } + * * * @return The bytes for parent. */ diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/google/cloud/recommendationengine/v1beta1/RecommendationengineResources.java b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/google/cloud/recommendationengine/v1beta1/RecommendationengineResources.java new file mode 100644 index 00000000..602f78a2 --- /dev/null +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/java/google/cloud/recommendationengine/v1beta1/RecommendationengineResources.java @@ -0,0 +1,78 @@ +/* + * Copyright 2020 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. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto + +package google.cloud.recommendationengine.v1beta1; + +public final class RecommendationengineResources { + private RecommendationengineResources() {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {} + + public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry); + } + + public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + return descriptor; + } + + private static com.google.protobuf.Descriptors.FileDescriptor descriptor; + + static { + java.lang.String[] descriptorData = { + "\nNgoogle/cloud/recommendationengine/v1be" + + "ta1/recommendationengine_resources.proto" + + "\022)google.cloud.recommendationengine.v1be" + + "ta1\032\031google/api/resource.protoB\214\006\352Ai\n+re" + + "commendationengine.googleapis.com/Catalo" + + "g\022:projects/{project}/locations/{locatio" + + "n}/catalogs/{catalog}\352A\225\001\n3recommendatio" + + "nengine.googleapis.com/CatalogItemPath\022^" + + "projects/{project}/locations/{location}/" + + "catalogs/{catalog}/catalogItems/{catalog" + + "_item_path=**}\352A\206\001\n.recommendationengine" + + ".googleapis.com/EventStore\022Tprojects/{pr" + + "oject}/locations/{location}/catalogs/{ca" + + "talog}/eventStores/{event_store}\352A\331\001\n@re" + + "commendationengine.googleapis.com/Predic" + + "tionApiKeyRegistration\022\224\001projects/{proje" + + "ct}/locations/{location}/catalogs/{catal" + + "og}/eventStores/{event_store}/prediction" + + "ApiKeyRegistrations/{prediction_api_key_" + + "registration}\352A\234\001\n-recommendationengine." + + "googleapis.com/Placement\022kprojects/{proj" + + "ect}/locations/{location}/catalogs/{cata" + + "log}/eventStores/{event_store}/placement" + + "s/{placement}b\006proto3" + }; + descriptor = + com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( + descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + com.google.api.ResourceProto.getDescriptor(), + }); + com.google.protobuf.ExtensionRegistry registry = + com.google.protobuf.ExtensionRegistry.newInstance(); + registry.add(com.google.api.ResourceProto.resourceDefinition); + com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( + descriptor, registry); + com.google.api.ResourceProto.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/catalog_service.proto b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/catalog_service.proto index c9a404d2..5d38d0c8 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/catalog_service.proto +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/catalog_service.proto @@ -19,8 +19,10 @@ package google.cloud.recommendationengine.v1beta1; import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; import "google/cloud/recommendationengine/v1beta1/catalog.proto"; import "google/cloud/recommendationengine/v1beta1/import.proto"; +import "google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; @@ -36,7 +38,8 @@ option ruby_package = "Google::Cloud::RecommendationEngine::V1beta1"; // Service for ingesting catalog information of the customer's website. service CatalogService { option (google.api.default_host) = "recommendationengine.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; // Creates a catalog item. rpc CreateCatalogItem(CreateCatalogItemRequest) returns (CatalogItem) { @@ -44,6 +47,7 @@ service CatalogService { post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems" body: "catalog_item" }; + option (google.api.method_signature) = "parent,catalog_item"; } // Gets a specific catalog item. @@ -55,10 +59,12 @@ service CatalogService { } // Gets a list of catalog items. - rpc ListCatalogItems(ListCatalogItemsRequest) returns (ListCatalogItemsResponse) { + rpc ListCatalogItems(ListCatalogItemsRequest) + returns (ListCatalogItemsResponse) { option (google.api.http) = { get: "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems" }; + option (google.api.method_signature) = "parent,filter"; } // Updates a catalog item. Partial updating is supported. Non-existing @@ -68,11 +74,12 @@ service CatalogService { patch: "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}" body: "catalog_item" }; - option (google.api.method_signature) = "catalog_item,update_mask"; + option (google.api.method_signature) = "name,catalog_item,update_mask"; } // Deletes a catalog item. - rpc DeleteCatalogItem(DeleteCatalogItemRequest) returns (google.protobuf.Empty) { + rpc DeleteCatalogItem(DeleteCatalogItemRequest) + returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}" }; @@ -85,7 +92,8 @@ service CatalogService { // // Operation.response is of type ImportResponse. Note that it is // possible for a subset of the items to be successfully updated. - rpc ImportCatalogItems(ImportCatalogItemsRequest) returns (google.longrunning.Operation) { + rpc ImportCatalogItems(ImportCatalogItemsRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems:import" body: "*" @@ -94,6 +102,8 @@ service CatalogService { response_type: "google.cloud.recommendationengine.v1beta1.ImportCatalogItemsResponse" metadata_type: "google.cloud.recommendationengine.v1beta1.ImportMetadata" }; + option (google.api.method_signature) = + "parent,request_id,input_config,errors_config"; } } @@ -101,7 +111,12 @@ service CatalogService { message CreateCatalogItemRequest { // Required. The parent catalog resource name, such as // "projects/*/locations/global/catalogs/default_catalog". - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/Catalog" + } + ]; // Required. The catalog item to create. CatalogItem catalog_item = 2 [(google.api.field_behavior) = REQUIRED]; @@ -111,14 +126,24 @@ message CreateCatalogItemRequest { message GetCatalogItemRequest { // Required. Full resource name of catalog item, such as // "projects/*/locations/global/catalogs/default_catalog/catalogitems/some_catalog_item_id". - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/CatalogItemPath" + } + ]; } // Request message for ListCatalogItems method. message ListCatalogItemsRequest { // Required. The parent catalog resource name, such as // "projects/*/locations/global/catalogs/default_catalog". - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/Catalog" + } + ]; // Optional. Maximum number of results to return per page. If zero, the // service will choose a reasonable default. @@ -145,7 +170,12 @@ message ListCatalogItemsResponse { message UpdateCatalogItemRequest { // Required. Full resource name of catalog item, such as // "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/CatalogItemPath" + } + ]; // Required. The catalog item to update/create. The 'catalog_item_id' field // has to match that in the 'name'. @@ -153,12 +183,17 @@ message UpdateCatalogItemRequest { // Optional. Indicates which fields in the provided 'item' to update. If not // set, will by default update all fields. - google.protobuf.FieldMask update_mask = 3 [(google.api.field_behavior) = OPTIONAL]; + google.protobuf.FieldMask update_mask = 3; } // Request message for DeleteCatalogItem method. message DeleteCatalogItemRequest { // Required. Full resource name of catalog item, such as // "projects/*/locations/global/catalogs/default_catalog/catalogItems/some_catalog_item_id". - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/CatalogItemPath" + } + ]; } diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/import.proto b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/import.proto index 0df51cf7..fc288c36 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/import.proto +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/import.proto @@ -17,8 +17,10 @@ syntax = "proto3"; package google.cloud.recommendationengine.v1beta1; import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; import "google/cloud/recommendationengine/v1beta1/catalog.proto"; import "google/cloud/recommendationengine/v1beta1/user_event.proto"; +import "google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto"; import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; @@ -48,7 +50,8 @@ message GcsSource { message CatalogInlineSource { // Optional. A list of catalog items to update/create. Recommended max of 10k // items. - repeated CatalogItem catalog_items = 1 [(google.api.field_behavior) = OPTIONAL]; + repeated CatalogItem catalog_items = 1 + [(google.api.field_behavior) = OPTIONAL]; } // The inline source for the input config for ImportUserEvents method. @@ -72,7 +75,12 @@ message ImportErrorsConfig { // Request message for Import methods. message ImportCatalogItemsRequest { // Required. "projects/1234/locations/global/catalogs/default_catalog" - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/Catalog" + } + ]; // Optional. Unique identifier provided by client, within the ancestor // dataset scope. Ensures idempotency and used for request deduplication. @@ -89,8 +97,14 @@ message ImportCatalogItemsRequest { // Request message for the ImportUserEvents request. message ImportUserEventsRequest { - // Required. "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + // Required. + // "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/EventStore" + } + ]; // Optional. Unique identifier provided by client, within the ancestor // dataset scope. Ensures idempotency for expensive long running operations. diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/prediction_apikey_registry_service.proto b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/prediction_apikey_registry_service.proto index 35f0aca9..2dbc98e6 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/prediction_apikey_registry_service.proto +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/prediction_apikey_registry_service.proto @@ -18,8 +18,10 @@ package google.cloud.recommendationengine.v1beta1; import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; import "google/protobuf/empty.proto"; import "google/api/client.proto"; +import "google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto"; option csharp_namespace = "Google.Cloud.RecommendationEngine.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/recommendationengine/v1beta1;recommendationengine"; @@ -36,28 +38,39 @@ option ruby_package = "Google::Cloud::RecommendationEngine::V1beta1"; // key. You can register up to 20 API keys per project. service PredictionApiKeyRegistry { option (google.api.default_host) = "recommendationengine.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; // Register an API key for use with predict method. - rpc CreatePredictionApiKeyRegistration(CreatePredictionApiKeyRegistrationRequest) returns (PredictionApiKeyRegistration) { + rpc CreatePredictionApiKeyRegistration( + CreatePredictionApiKeyRegistrationRequest) + returns (PredictionApiKeyRegistration) { option (google.api.http) = { post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/predictionApiKeyRegistrations" body: "*" }; + option (google.api.method_signature) = + "parent,prediction_api_key_registration"; } // List the registered apiKeys for use with predict method. - rpc ListPredictionApiKeyRegistrations(ListPredictionApiKeyRegistrationsRequest) returns (ListPredictionApiKeyRegistrationsResponse) { + rpc ListPredictionApiKeyRegistrations( + ListPredictionApiKeyRegistrationsRequest) + returns (ListPredictionApiKeyRegistrationsResponse) { option (google.api.http) = { get: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/predictionApiKeyRegistrations" }; + option (google.api.method_signature) = "parent"; } // Unregister an apiKey from using for predict method. - rpc DeletePredictionApiKeyRegistration(DeletePredictionApiKeyRegistrationRequest) returns (google.protobuf.Empty) { + rpc DeletePredictionApiKeyRegistration( + DeletePredictionApiKeyRegistrationRequest) + returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/locations/*/catalogs/*/eventStores/*/predictionApiKeyRegistrations/*}" }; + option (google.api.method_signature) = "name"; } } @@ -71,17 +84,28 @@ message PredictionApiKeyRegistration { message CreatePredictionApiKeyRegistrationRequest { // Required. The parent resource path. // "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store". - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/EventStore" + } + ]; // Required. The prediction API key registration. - PredictionApiKeyRegistration prediction_api_key_registration = 2; + PredictionApiKeyRegistration prediction_api_key_registration = 2 + [(google.api.field_behavior) = REQUIRED]; } // Request message for the `ListPredictionApiKeyRegistrations`. message ListPredictionApiKeyRegistrationsRequest { // Required. The parent placement resource name such as // "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store" - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/EventStore" + } + ]; // Optional. Maximum number of results to return per page. If unset, the // service will choose a reasonable default. @@ -105,5 +129,10 @@ message ListPredictionApiKeyRegistrationsResponse { message DeletePredictionApiKeyRegistrationRequest { // Required. The API key to unregister including full resource path. // "projects/*/locations/global/catalogs/default_catalog/eventStores/default_event_store/predictionApiKeyRegistrations/" - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/PredictionApiKeyRegistration" + } + ]; } diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/prediction_service.proto b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/prediction_service.proto index e76ba778..1f5e77f4 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/prediction_service.proto +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/prediction_service.proto @@ -18,6 +18,7 @@ package google.cloud.recommendationengine.v1beta1; import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; import "google/cloud/recommendationengine/v1beta1/user_event.proto"; import "google/protobuf/struct.proto"; import "google/api/client.proto"; @@ -33,7 +34,8 @@ option ruby_package = "Google::Cloud::RecommendationEngine::V1beta1"; // Service for making recommendation prediction. service PredictionService { option (google.api.default_host) = "recommendationengine.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; // Makes a recommendation prediction. If using API Key based authentication, // the API Key must be registered using the @@ -44,6 +46,7 @@ service PredictionService { post: "/v1beta1/{name=projects/*/locations/*/catalogs/*/eventStores/*/placements/*}:predict" body: "*" }; + option (google.api.method_signature) = "name,user_event"; } } @@ -78,7 +81,12 @@ message PredictRequest { // // The full list of available placements can be seen at // https://console.cloud.google.com/recommendation/datafeeds/default_catalog/dashboard - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/Placement" + } + ]; // Required. Context about the user, what they are looking at and what action // they took to trigger the predict request. Note that this user event detail @@ -133,7 +141,8 @@ message PredictRequest { // field in the prediction response. The given 'score' indicates the // probability of an item being clicked/purchased given the user's context // and history. - map params = 6 [(google.api.field_behavior) = OPTIONAL]; + map params = 6 + [(google.api.field_behavior) = OPTIONAL]; // Optional. The labels for the predict request. // diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto new file mode 100644 index 00000000..dce1e2fa --- /dev/null +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/recommendationengine_resources.proto @@ -0,0 +1,46 @@ +// Copyright 2020 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 +// +// http://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. +// +// Contains common resources for recommendationengine/v1beta1. + +syntax = "proto3"; + +package google.cloud.recommendationengine.v1beta1; + +import "google/api/resource.proto"; + +option (google.api.resource_definition) = { + type: "recommendationengine.googleapis.com/Catalog" + pattern: "projects/{project}/locations/{location}/catalogs/{catalog}" +}; + +option (google.api.resource_definition) = { + type: "recommendationengine.googleapis.com/CatalogItemPath" + pattern: "projects/{project}/locations/{location}/catalogs/{catalog}/catalogItems/{catalog_item_path=**}" +}; + +option (google.api.resource_definition) = { + type: "recommendationengine.googleapis.com/EventStore" + pattern: "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}" +}; + +option (google.api.resource_definition) = { + type: "recommendationengine.googleapis.com/PredictionApiKeyRegistration" + pattern: "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/predictionApiKeyRegistrations/{prediction_api_key_registration}" +}; + +option (google.api.resource_definition) = { + type: "recommendationengine.googleapis.com/Placement" + pattern: "projects/{project}/locations/{location}/catalogs/{catalog}/eventStores/{event_store}/placements/{placement}" +}; diff --git a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/user_event_service.proto b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/user_event_service.proto index e2d38653..8ea6f551 100644 --- a/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/user_event_service.proto +++ b/proto-google-cloud-recommendations-ai-v1beta1/src/main/proto/google/cloud/recommendationengine/v1beta1/user_event_service.proto @@ -19,6 +19,7 @@ package google.cloud.recommendationengine.v1beta1; import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/api/httpbody.proto"; +import "google/api/resource.proto"; import "google/cloud/recommendationengine/v1beta1/import.proto"; import "google/cloud/recommendationengine/v1beta1/user_event.proto"; import "google/longrunning/operations.proto"; @@ -37,7 +38,8 @@ option ruby_package = "Google::Cloud::RecommendationEngine::V1beta1"; // Service for ingesting end user actions on the customer website. service UserEventService { option (google.api.default_host) = "recommendationengine.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; // Writes a single user event. rpc WriteUserEvent(WriteUserEventRequest) returns (UserEvent) { @@ -45,6 +47,7 @@ service UserEventService { post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:write" body: "user_event" }; + option (google.api.method_signature) = "parent,user_event"; } // Writes a single user event from the browser. This uses a GET request to @@ -56,6 +59,7 @@ service UserEventService { option (google.api.http) = { get: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:collect" }; + option (google.api.method_signature) = "parent,user_event,uri,ets"; } // Gets a list of user events within a time range, with potential filtering. @@ -63,13 +67,15 @@ service UserEventService { option (google.api.http) = { get: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents" }; + option (google.api.method_signature) = "parent,filter"; } // Deletes permanently all user events specified by the filter provided. // Depending on the number of events specified by the filter, this operation // could take hours or days to complete. To test a filter, use the list // command first. - rpc PurgeUserEvents(PurgeUserEventsRequest) returns (google.longrunning.Operation) { + rpc PurgeUserEvents(PurgeUserEventsRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:purge" body: "*" @@ -78,6 +84,7 @@ service UserEventService { response_type: "google.cloud.recommendationengine.v1beta1.PurgeUserEventsResponse" metadata_type: "google.cloud.recommendationengine.v1beta1.PurgeUserEventsMetadata" }; + option (google.api.method_signature) = "parent,filter,force"; } // Bulk import of User events. Request processing might be @@ -87,7 +94,8 @@ service UserEventService { // Operation.response is of type ImportResponse. Note that it is // possible for a subset of the items to be successfully inserted. // Operation.metadata is of type ImportMetadata. - rpc ImportUserEvents(ImportUserEventsRequest) returns (google.longrunning.Operation) { + rpc ImportUserEvents(ImportUserEventsRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:import" body: "*" @@ -96,6 +104,8 @@ service UserEventService { response_type: "google.cloud.recommendationengine.v1beta1.ImportUserEventsResponse" metadata_type: "google.cloud.recommendationengine.v1beta1.ImportMetadata" }; + option (google.api.method_signature) = + "parent,request_id,input_config,errors_config"; } } @@ -104,7 +114,12 @@ message PurgeUserEventsRequest { // Required. The resource name of the event_store under which the events are // created. The format is // "projects/${projectId}/locations/global/catalogs/${catalogId}/eventStores/${eventStoreId}" - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/EventStore" + } + ]; // Required. The filter string to specify the events to be deleted. Empty // string filter is not allowed. This filter can also be used with @@ -158,7 +173,12 @@ message PurgeUserEventsResponse { message WriteUserEventRequest { // Required. The parent eventStore resource name, such as // "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/EventStore" + } + ]; // Required. User event to write. UserEvent user_event = 2 [(google.api.field_behavior) = REQUIRED]; @@ -168,20 +188,25 @@ message WriteUserEventRequest { message CollectUserEventRequest { // Required. The parent eventStore name, such as // "projects/1234/locations/global/catalogs/default_catalog/eventStores/default_event_store". - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/EventStore" + } + ]; // Required. URL encoded UserEvent proto. string user_event = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. The url including cgi-parameters but excluding the hash fragment. The URL - // must be truncated to 1.5K bytes to conservatively be under the 2K bytes. - // This is often more useful than the referer url, because many browsers only - // send the domain for 3rd party requests. + // Optional. The url including cgi-parameters but excluding the hash fragment. + // The URL must be truncated to 1.5K bytes to conservatively be under the 2K + // bytes. This is often more useful than the referer url, because many + // browsers only send the domain for 3rd party requests. string uri = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. The event timestamp in milliseconds. This prevents browser caching of - // otherwise identical get requests. The name is abbreviated to reduce the - // payload bytes. + // Optional. The event timestamp in milliseconds. This prevents browser + // caching of otherwise identical get requests. The name is abbreviated to + // reduce the payload bytes. int64 ets = 4 [(google.api.field_behavior) = OPTIONAL]; } @@ -189,7 +214,12 @@ message CollectUserEventRequest { message ListUserEventsRequest { // Required. The parent eventStore resource name, such as // "projects/*/locations/*/catalogs/default_catalog/eventStores/default_event_store". - string parent = 1 [(google.api.field_behavior) = REQUIRED]; + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "recommendationengine.googleapis.com/EventStore" + } + ]; // Optional. Maximum number of results to return per page. If zero, the // service will choose a reasonable default. diff --git a/synth.metadata b/synth.metadata index bc9acd69..6354f95b 100644 --- a/synth.metadata +++ b/synth.metadata @@ -4,15 +4,15 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/java-recommendations-ai.git", - "sha": "88913efba8d4a933edd844a30479921247d89acf" + "sha": "0a33bcaaee4a4ac1fb336e07bf299dd28969db66" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "d741cd976975c745d0199987aff0e908b8352992", - "internalRef": "305561906" + "sha": "aaff764c185e18a6c73227357c3df5fa60fec85a", + "internalRef": "309426927" } }, {