From 49dbddea8144fad949b6d2a21f391057e68e3bc0 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 21 Oct 2021 17:31:20 -0400 Subject: [PATCH] docs: Keep the API doc up-to-date (#226) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * docs: Keep the API doc up-to-date feat: add search mode to search request. If not specified, a single search request triggers both product search and faceted search. feat: update grpc service config settings to reflect correct API deadlines PiperOrigin-RevId: 404039072 Source-Link: https://github.com/googleapis/googleapis/commit/8ef531eaf6e03d709b0dabf1e2202c16685a96d8 Source-Link: https://github.com/googleapis/googleapis-gen/commit/86e91097a445a4b0972a20e4b0e3e87f9aadd2c0 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiODZlOTEwOTdhNDQ1YTRiMDk3MmEyMGU0YjBlM2U4N2Y5YWFkZDJjMCJ9 * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../retail/v2/SearchServiceClientTest.java | 1 + .../v2/AddFulfillmentPlacesRequest.java | 24 +- .../AddFulfillmentPlacesRequestOrBuilder.java | 4 +- .../v2/AddFulfillmentPlacesResponse.java | 4 +- .../cloud/retail/v2/BigQuerySource.java | 20 +- .../com/google/cloud/retail/v2/Catalog.java | 8 +- .../retail/v2/CollectUserEventRequest.java | 12 +- .../com/google/cloud/retail/v2/ColorInfo.java | 26 +- .../cloud/retail/v2/ColorInfoOrBuilder.java | 8 +- .../cloud/retail/v2/CompleteQueryRequest.java | 20 +- .../retail/v2/CompleteQueryResponse.java | 12 +- .../cloud/retail/v2/CompletionDetail.java | 8 +- .../cloud/retail/v2/CreateProductRequest.java | 8 +- .../cloud/retail/v2/CustomAttribute.java | 24 +- .../retail/v2/CustomAttributeOrBuilder.java | 8 +- .../cloud/retail/v2/DeleteProductRequest.java | 4 +- .../cloud/retail/v2/FulfillmentInfo.java | 56 +- .../retail/v2/FulfillmentInfoOrBuilder.java | 16 +- .../com/google/cloud/retail/v2/GcsSource.java | 4 +- .../retail/v2/GetDefaultBranchRequest.java | 4 +- .../retail/v2/GetDefaultBranchResponse.java | 8 +- .../cloud/retail/v2/GetProductRequest.java | 4 +- .../com/google/cloud/retail/v2/Image.java | 4 +- .../v2/ImportCompletionDataRequest.java | 8 +- .../cloud/retail/v2/ImportMetadata.java | 8 +- .../retail/v2/ImportProductsRequest.java | 12 +- .../retail/v2/ImportUserEventsRequest.java | 4 +- .../cloud/retail/v2/ListCatalogsRequest.java | 8 +- .../cloud/retail/v2/ListCatalogsResponse.java | 4 +- .../cloud/retail/v2/ListProductsRequest.java | 12 +- .../cloud/retail/v2/ListProductsResponse.java | 4 +- .../cloud/retail/v2/PredictRequest.java | 12 +- .../cloud/retail/v2/PredictResponse.java | 8 +- .../com/google/cloud/retail/v2/PriceInfo.java | 4 +- .../com/google/cloud/retail/v2/Product.java | 231 ++++--- .../cloud/retail/v2/ProductLevelConfig.java | 8 +- .../cloud/retail/v2/ProductOrBuilder.java | 50 +- .../cloud/retail/v2/ProductServiceProto.java | 221 +++--- .../com/google/cloud/retail/v2/Promotion.java | 4 +- .../cloud/retail/v2/PurchaseTransaction.java | 8 +- .../retail/v2/PurgeUserEventsRequest.java | 8 +- .../retail/v2/RejoinUserEventsRequest.java | 4 +- .../v2/RemoveFulfillmentPlacesRequest.java | 24 +- ...moveFulfillmentPlacesRequestOrBuilder.java | 4 +- .../google/cloud/retail/v2/SearchRequest.java | 645 +++++++++++++++--- .../retail/v2/SearchRequestOrBuilder.java | 90 ++- .../cloud/retail/v2/SearchResponse.java | 39 +- .../cloud/retail/v2/SearchServiceProto.java | 135 ++-- .../retail/v2/SetDefaultBranchRequest.java | 12 +- .../cloud/retail/v2/SetInventoryRequest.java | 8 +- .../v2/SetInventoryRequestOrBuilder.java | 2 +- .../com/google/cloud/retail/v2/UserEvent.java | 164 ++--- .../cloud/retail/v2/UserEventOrBuilder.java | 28 +- .../com/google/cloud/retail/v2/UserInfo.java | 12 +- .../retail/v2/WriteUserEventRequest.java | 4 +- .../proto/google/cloud/retail/v2/common.proto | 6 +- .../google/cloud/retail/v2/product.proto | 19 +- .../cloud/retail/v2/product_service.proto | 13 +- .../cloud/retail/v2/search_service.proto | 65 +- .../google/cloud/retail/v2/user_event.proto | 8 +- 60 files changed, 1407 insertions(+), 776 deletions(-) diff --git a/google-cloud-retail/src/test/java/com/google/cloud/retail/v2/SearchServiceClientTest.java b/google-cloud-retail/src/test/java/com/google/cloud/retail/v2/SearchServiceClientTest.java index 87739a2c..7c96fdb4 100644 --- a/google-cloud-retail/src/test/java/com/google/cloud/retail/v2/SearchServiceClientTest.java +++ b/google-cloud-retail/src/test/java/com/google/cloud/retail/v2/SearchServiceClientTest.java @@ -140,6 +140,7 @@ public void searchTest() throws Exception { Assert.assertEquals( request.getVariantRollupKeysList(), actualRequest.getVariantRollupKeysList()); Assert.assertEquals(request.getPageCategoriesList(), actualRequest.getPageCategoriesList()); + Assert.assertEquals(request.getSearchMode(), actualRequest.getSearchMode()); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesRequest.java index bad53b88..3d36f29a 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesRequest.java @@ -464,8 +464,8 @@ public com.google.protobuf.TimestampOrBuilder getAddTimeOrBuilder() { * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * @@ -492,10 +492,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getProductBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(product_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, product_); } - if (!getTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, type_); } for (int i = 0; i < placeIds_.size(); i++) { @@ -516,10 +516,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getProductBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(product_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, product_); } - if (!getTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, type_); } { @@ -1690,8 +1690,8 @@ public com.google.protobuf.TimestampOrBuilder getAddTimeOrBuilder() { * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * @@ -1710,8 +1710,8 @@ public boolean getAllowMissing() { * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * @@ -1733,8 +1733,8 @@ public Builder setAllowMissing(boolean value) { * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesRequestOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesRequestOrBuilder.java index bc81d56d..0fe45819 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesRequestOrBuilder.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesRequestOrBuilder.java @@ -262,8 +262,8 @@ public interface AddFulfillmentPlacesRequestOrBuilder * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesResponse.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesResponse.java index 13fb9b75..bf23a591 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesResponse.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/AddFulfillmentPlacesResponse.java @@ -22,7 +22,7 @@ * * *
- * Response of the RemoveFulfillmentPlacesRequest.  Currently empty because
+ * Response of the AddFulfillmentPlacesRequest.  Currently empty because
  * there is no meaningful response populated from the [AddFulfillmentPlaces][]
  * method.
  * 
@@ -259,7 +259,7 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.Build * * *
-   * Response of the RemoveFulfillmentPlacesRequest.  Currently empty because
+   * Response of the AddFulfillmentPlacesRequest.  Currently empty because
    * there is no meaningful response populated from the [AddFulfillmentPlaces][]
    * method.
    * 
diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/BigQuerySource.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/BigQuerySource.java index 3e387307..e07ccd30 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/BigQuerySource.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/BigQuerySource.java @@ -554,19 +554,19 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getDatasetIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(datasetId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, datasetId_); } - if (!getTableIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, tableId_); } - if (!getGcsStagingDirBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(gcsStagingDir_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, gcsStagingDir_); } - if (!getDataSchemaBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataSchema_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, dataSchema_); } - if (!getProjectIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, projectId_); } if (partitionCase_ == 6) { @@ -581,19 +581,19 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getDatasetIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(datasetId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, datasetId_); } - if (!getTableIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tableId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, tableId_); } - if (!getGcsStagingDirBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(gcsStagingDir_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, gcsStagingDir_); } - if (!getDataSchemaBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataSchema_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, dataSchema_); } - if (!getProjectIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, projectId_); } if (partitionCase_ == 6) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Catalog.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Catalog.java index e1a25bdc..1c4a03d0 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Catalog.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Catalog.java @@ -313,10 +313,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getDisplayNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, displayName_); } if (productLevelConfig_ != null) { @@ -331,10 +331,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getDisplayNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, displayName_); } if (productLevelConfig_ != null) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CollectUserEventRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CollectUserEventRequest.java index 924df11e..e25f3d4c 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CollectUserEventRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CollectUserEventRequest.java @@ -323,13 +323,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } - if (!getUserEventBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(userEvent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, userEvent_); } - if (!getUriBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, uri_); } if (ets_ != 0L) { @@ -344,13 +344,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } - if (!getUserEventBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(userEvent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, userEvent_); } - if (!getUriBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, uri_); } if (ets_ != 0L) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ColorInfo.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ColorInfo.java index 9cac0713..5cd3e8ba 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ColorInfo.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ColorInfo.java @@ -243,7 +243,7 @@ public com.google.protobuf.ByteString getColorFamiliesBytes(int index) { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -266,7 +266,7 @@ public com.google.protobuf.ProtocolStringList getColorsList() { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -289,7 +289,7 @@ public int getColorsCount() { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -313,7 +313,7 @@ public java.lang.String getColors(int index) { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -971,7 +971,7 @@ private void ensureColorsIsMutable() { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -994,7 +994,7 @@ public com.google.protobuf.ProtocolStringList getColorsList() { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -1017,7 +1017,7 @@ public int getColorsCount() { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -1041,7 +1041,7 @@ public java.lang.String getColors(int index) { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -1065,7 +1065,7 @@ public com.google.protobuf.ByteString getColorsBytes(int index) { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -1096,7 +1096,7 @@ public Builder setColors(int index, java.lang.String value) { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -1126,7 +1126,7 @@ public Builder addColors(java.lang.String value) { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -1153,7 +1153,7 @@ public Builder addAllColors(java.lang.Iterable values) { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -1179,7 +1179,7 @@ public Builder clearColors() { * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ColorInfoOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ColorInfoOrBuilder.java index e9ba65f0..c32a8aee 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ColorInfoOrBuilder.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ColorInfoOrBuilder.java @@ -122,7 +122,7 @@ public interface ColorInfoOrBuilder * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -143,7 +143,7 @@ public interface ColorInfoOrBuilder * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -164,7 +164,7 @@ public interface ColorInfoOrBuilder * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property @@ -186,7 +186,7 @@ public interface ColorInfoOrBuilder * names, such as the color aliases used in the website frontend. Normally * it is expected to have only 1 color. May consider using single "Mixed" * instead of multiple values. - * A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded + * A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded * string with a length limit of 128 characters. Otherwise, an * INVALID_ARGUMENT error is returned. * Google Merchant Center property diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompleteQueryRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompleteQueryRequest.java index ead167f6..c76c0b7b 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompleteQueryRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompleteQueryRequest.java @@ -578,25 +578,25 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getCatalogBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(catalog_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, catalog_); } - if (!getQueryBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(query_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, query_); } for (int i = 0; i < languageCodes_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, languageCodes_.getRaw(i)); } - if (!getDeviceTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceType_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, deviceType_); } if (maxSuggestions_ != 0) { output.writeInt32(5, maxSuggestions_); } - if (!getDatasetBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataset_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 6, dataset_); } - if (!getVisitorIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(visitorId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, visitorId_); } unknownFields.writeTo(output); @@ -608,10 +608,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getCatalogBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(catalog_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, catalog_); } - if (!getQueryBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(query_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, query_); } { @@ -622,16 +622,16 @@ public int getSerializedSize() { size += dataSize; size += 1 * getLanguageCodesList().size(); } - if (!getDeviceTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceType_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, deviceType_); } if (maxSuggestions_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, maxSuggestions_); } - if (!getDatasetBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataset_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, dataset_); } - if (!getVisitorIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(visitorId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, visitorId_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompleteQueryResponse.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompleteQueryResponse.java index 16bc1949..1522ea0f 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompleteQueryResponse.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompleteQueryResponse.java @@ -529,7 +529,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getSuggestionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(suggestion_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, suggestion_); } com.google.protobuf.GeneratedMessageV3.serializeStringMapTo( @@ -543,7 +543,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getSuggestionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(suggestion_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, suggestion_); } for (java.util.Map.Entry entry : @@ -1409,7 +1409,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getRecentSearchBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(recentSearch_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, recentSearch_); } unknownFields.writeTo(output); @@ -1421,7 +1421,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getRecentSearchBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(recentSearch_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, recentSearch_); } size += unknownFields.getSerializedSize(); @@ -2202,7 +2202,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < completionResults_.size(); i++) { output.writeMessage(1, completionResults_.get(i)); } - if (!getAttributionTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(attributionToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, attributionToken_); } for (int i = 0; i < recentSearchResults_.size(); i++) { @@ -2221,7 +2221,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, completionResults_.get(i)); } - if (!getAttributionTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(attributionToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, attributionToken_); } for (int i = 0; i < recentSearchResults_.size(); i++) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompletionDetail.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompletionDetail.java index e18ad1ca..ed849017 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompletionDetail.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CompletionDetail.java @@ -261,10 +261,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getCompletionAttributionTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(completionAttributionToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, completionAttributionToken_); } - if (!getSelectedSuggestionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(selectedSuggestion_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, selectedSuggestion_); } if (selectedPosition_ != 0) { @@ -279,11 +279,11 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getCompletionAttributionTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(completionAttributionToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, completionAttributionToken_); } - if (!getSelectedSuggestionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(selectedSuggestion_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, selectedSuggestion_); } if (selectedPosition_ != 0) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CreateProductRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CreateProductRequest.java index c3b6fb0b..d0cc4af6 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CreateProductRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CreateProductRequest.java @@ -323,13 +323,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } if (product_ != null) { output.writeMessage(2, getProduct()); } - if (!getProductIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(productId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, productId_); } unknownFields.writeTo(output); @@ -341,13 +341,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } if (product_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getProduct()); } - if (!getProductIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(productId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, productId_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CustomAttribute.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CustomAttribute.java index 7d08e09c..992d451f 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CustomAttribute.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CustomAttribute.java @@ -328,7 +328,7 @@ public double getNumbers(int index) { * set. Otherwise, a INVALID_ARGUMENT error is returned. * * - * bool searchable = 3; + * optional bool searchable = 3; * * @return Whether the searchable field is set. */ @@ -347,7 +347,7 @@ public boolean hasSearchable() { * set. Otherwise, a INVALID_ARGUMENT error is returned. * * - * bool searchable = 3; + * optional bool searchable = 3; * * @return The searchable. */ @@ -373,7 +373,7 @@ public boolean getSearchable() { * for more details. * * - * bool indexable = 4; + * optional bool indexable = 4; * * @return Whether the indexable field is set. */ @@ -396,7 +396,7 @@ public boolean hasIndexable() { * for more details. * * - * bool indexable = 4; + * optional bool indexable = 4; * * @return The indexable. */ @@ -1241,7 +1241,7 @@ public Builder clearNumbers() { * set. Otherwise, a INVALID_ARGUMENT error is returned. * * - * bool searchable = 3; + * optional bool searchable = 3; * * @return Whether the searchable field is set. */ @@ -1260,7 +1260,7 @@ public boolean hasSearchable() { * set. Otherwise, a INVALID_ARGUMENT error is returned. * * - * bool searchable = 3; + * optional bool searchable = 3; * * @return The searchable. */ @@ -1279,7 +1279,7 @@ public boolean getSearchable() { * set. Otherwise, a INVALID_ARGUMENT error is returned. * * - * bool searchable = 3; + * optional bool searchable = 3; * * @param value The searchable to set. * @return This builder for chaining. @@ -1301,7 +1301,7 @@ public Builder setSearchable(boolean value) { * set. Otherwise, a INVALID_ARGUMENT error is returned. * * - * bool searchable = 3; + * optional bool searchable = 3; * * @return This builder for chaining. */ @@ -1328,7 +1328,7 @@ public Builder clearSearchable() { * for more details. * * - * bool indexable = 4; + * optional bool indexable = 4; * * @return Whether the indexable field is set. */ @@ -1351,7 +1351,7 @@ public boolean hasIndexable() { * for more details. * * - * bool indexable = 4; + * optional bool indexable = 4; * * @return The indexable. */ @@ -1374,7 +1374,7 @@ public boolean getIndexable() { * for more details. * * - * bool indexable = 4; + * optional bool indexable = 4; * * @param value The indexable to set. * @return This builder for chaining. @@ -1400,7 +1400,7 @@ public Builder setIndexable(boolean value) { * for more details. * * - * bool indexable = 4; + * optional bool indexable = 4; * * @return This builder for chaining. */ diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CustomAttributeOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CustomAttributeOrBuilder.java index b4abb178..9715650d 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CustomAttributeOrBuilder.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/CustomAttributeOrBuilder.java @@ -169,7 +169,7 @@ public interface CustomAttributeOrBuilder * set. Otherwise, a INVALID_ARGUMENT error is returned. * * - * bool searchable = 3; + * optional bool searchable = 3; * * @return Whether the searchable field is set. */ @@ -185,7 +185,7 @@ public interface CustomAttributeOrBuilder * set. Otherwise, a INVALID_ARGUMENT error is returned. * * - * bool searchable = 3; + * optional bool searchable = 3; * * @return The searchable. */ @@ -206,7 +206,7 @@ public interface CustomAttributeOrBuilder * for more details. * * - * bool indexable = 4; + * optional bool indexable = 4; * * @return Whether the indexable field is set. */ @@ -226,7 +226,7 @@ public interface CustomAttributeOrBuilder * for more details. * * - * bool indexable = 4; + * optional bool indexable = 4; * * @return The indexable. */ diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/DeleteProductRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/DeleteProductRequest.java index aa7158eb..f5363038 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/DeleteProductRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/DeleteProductRequest.java @@ -210,7 +210,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -222,7 +222,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/FulfillmentInfo.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/FulfillmentInfo.java index ba33f0cc..0f8ad245 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/FulfillmentInfo.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/FulfillmentInfo.java @@ -215,8 +215,8 @@ public com.google.protobuf.ByteString getTypeBytes() { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -236,8 +236,8 @@ public com.google.protobuf.ProtocolStringList getPlaceIdsList() { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -257,8 +257,8 @@ public int getPlaceIdsCount() { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -279,8 +279,8 @@ public java.lang.String getPlaceIds(int index) { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -307,7 +307,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, type_); } for (int i = 0; i < placeIds_.size(); i++) { @@ -322,7 +322,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, type_); } { @@ -840,8 +840,8 @@ private void ensurePlaceIdsIsMutable() { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -861,8 +861,8 @@ public com.google.protobuf.ProtocolStringList getPlaceIdsList() { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -882,8 +882,8 @@ public int getPlaceIdsCount() { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -904,8 +904,8 @@ public java.lang.String getPlaceIds(int index) { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -926,8 +926,8 @@ public com.google.protobuf.ByteString getPlaceIdsBytes(int index) { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -955,8 +955,8 @@ public Builder setPlaceIds(int index, java.lang.String value) { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -983,8 +983,8 @@ public Builder addPlaceIds(java.lang.String value) { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -1008,8 +1008,8 @@ public Builder addAllPlaceIds(java.lang.Iterable values) { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -1032,8 +1032,8 @@ public Builder clearPlaceIds() { * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/FulfillmentInfoOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/FulfillmentInfoOrBuilder.java index 4b815d9a..d77a4c5e 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/FulfillmentInfoOrBuilder.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/FulfillmentInfoOrBuilder.java @@ -85,8 +85,8 @@ public interface FulfillmentInfoOrBuilder * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -104,8 +104,8 @@ public interface FulfillmentInfoOrBuilder * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -123,8 +123,8 @@ public interface FulfillmentInfoOrBuilder * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * @@ -143,8 +143,8 @@ public interface FulfillmentInfoOrBuilder * [FulfillmentInfo.type.pickup-in-store][google.cloud.retail.v2.FulfillmentInfo.type] * or the region IDs for * [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type]. - * A maximum of 2000 values are allowed. Each value must be a string with a - * length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as + * A maximum of 3000 values are allowed. Each value must be a string with a + * length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as * "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned. * * diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GcsSource.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GcsSource.java index 948e5535..41291a6c 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GcsSource.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GcsSource.java @@ -304,7 +304,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < inputUris_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, inputUris_.getRaw(i)); } - if (!getDataSchemaBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataSchema_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dataSchema_); } unknownFields.writeTo(output); @@ -324,7 +324,7 @@ public int getSerializedSize() { size += dataSize; size += 1 * getInputUrisList().size(); } - if (!getDataSchemaBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataSchema_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dataSchema_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetDefaultBranchRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetDefaultBranchRequest.java index d6e1543c..2098b327 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetDefaultBranchRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetDefaultBranchRequest.java @@ -176,7 +176,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getCatalogBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(catalog_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, catalog_); } unknownFields.writeTo(output); @@ -188,7 +188,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getCatalogBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(catalog_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, catalog_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetDefaultBranchResponse.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetDefaultBranchResponse.java index 91743802..c1ee5f62 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetDefaultBranchResponse.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetDefaultBranchResponse.java @@ -297,13 +297,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getBranchBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(branch_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, branch_); } if (setTime_ != null) { output.writeMessage(2, getSetTime()); } - if (!getNoteBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(note_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, note_); } unknownFields.writeTo(output); @@ -315,13 +315,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getBranchBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(branch_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, branch_); } if (setTime_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getSetTime()); } - if (!getNoteBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(note_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, note_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetProductRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetProductRequest.java index 35e78bd5..e1ad12c2 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetProductRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/GetProductRequest.java @@ -192,7 +192,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } unknownFields.writeTo(output); @@ -204,7 +204,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Image.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Image.java index 66bcb461..11bec8a7 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Image.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Image.java @@ -233,7 +233,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getUriBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, uri_); } if (height_ != 0) { @@ -251,7 +251,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getUriBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, uri_); } if (height_ != 0) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportCompletionDataRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportCompletionDataRequest.java index 710b0a62..b12e89fb 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportCompletionDataRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportCompletionDataRequest.java @@ -316,13 +316,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } if (inputConfig_ != null) { output.writeMessage(2, getInputConfig()); } - if (!getNotificationPubsubTopicBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(notificationPubsubTopic_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, notificationPubsubTopic_); } unknownFields.writeTo(output); @@ -334,13 +334,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } if (inputConfig_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getInputConfig()); } - if (!getNotificationPubsubTopicBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(notificationPubsubTopic_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, notificationPubsubTopic_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportMetadata.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportMetadata.java index 654440ce..c088add9 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportMetadata.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportMetadata.java @@ -425,10 +425,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (failureCount_ != 0L) { output.writeInt64(4, failureCount_); } - if (!getRequestIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(requestId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, requestId_); } - if (!getNotificationPubsubTopicBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(notificationPubsubTopic_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 6, notificationPubsubTopic_); } unknownFields.writeTo(output); @@ -452,10 +452,10 @@ public int getSerializedSize() { if (failureCount_ != 0L) { size += com.google.protobuf.CodedOutputStream.computeInt64Size(4, failureCount_); } - if (!getRequestIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(requestId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, requestId_); } - if (!getNotificationPubsubTopicBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(notificationPubsubTopic_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, notificationPubsubTopic_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportProductsRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportProductsRequest.java index 11ea2517..9448a206 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportProductsRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportProductsRequest.java @@ -757,7 +757,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } if (inputConfig_ != null) { @@ -775,10 +775,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io .getNumber()) { output.writeEnum(5, reconciliationMode_); } - if (!getRequestIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(requestId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 6, requestId_); } - if (!getNotificationPubsubTopicBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(notificationPubsubTopic_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, notificationPubsubTopic_); } unknownFields.writeTo(output); @@ -790,7 +790,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } if (inputConfig_ != null) { @@ -808,10 +808,10 @@ public int getSerializedSize() { .getNumber()) { size += com.google.protobuf.CodedOutputStream.computeEnumSize(5, reconciliationMode_); } - if (!getRequestIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(requestId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, requestId_); } - if (!getNotificationPubsubTopicBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(notificationPubsubTopic_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, notificationPubsubTopic_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportUserEventsRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportUserEventsRequest.java index 2b5b2ee9..d2483fd3 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportUserEventsRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ImportUserEventsRequest.java @@ -315,7 +315,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } if (inputConfig_ != null) { @@ -333,7 +333,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } if (inputConfig_ != null) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListCatalogsRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListCatalogsRequest.java index 6b205fd0..35ae127b 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListCatalogsRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListCatalogsRequest.java @@ -287,13 +287,13 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } if (pageSize_ != 0) { output.writeInt32(2, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, pageToken_); } unknownFields.writeTo(output); @@ -305,13 +305,13 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } if (pageSize_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, pageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListCatalogsResponse.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListCatalogsResponse.java index cfdd0d48..7da5e72f 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListCatalogsResponse.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListCatalogsResponse.java @@ -270,7 +270,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < catalogs_.size(); i++) { output.writeMessage(1, catalogs_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nextPageToken_); } unknownFields.writeTo(output); @@ -285,7 +285,7 @@ public int getSerializedSize() { for (int i = 0; i < catalogs_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, catalogs_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nextPageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListProductsRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListProductsRequest.java index 6557f089..1a8b10d4 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListProductsRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListProductsRequest.java @@ -496,16 +496,16 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_); } if (pageSize_ != 0) { output.writeInt32(2, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, pageToken_); } - if (!getFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, filter_); } if (readMask_ != null) { @@ -520,16 +520,16 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getParentBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_); } if (pageSize_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, pageToken_); } - if (!getFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, filter_); } if (readMask_ != null) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListProductsResponse.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListProductsResponse.java index f51d5906..576355ec 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListProductsResponse.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ListProductsResponse.java @@ -270,7 +270,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < products_.size(); i++) { output.writeMessage(1, products_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nextPageToken_); } unknownFields.writeTo(output); @@ -285,7 +285,7 @@ public int getSerializedSize() { for (int i = 0; i < products_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, products_.get(i)); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nextPageToken_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictRequest.java index f7172fcb..e7b0fe67 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictRequest.java @@ -855,7 +855,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getPlacementBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(placement_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, placement_); } if (userEvent_ != null) { @@ -864,10 +864,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (pageSize_ != 0) { output.writeInt32(3, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, pageToken_); } - if (!getFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, filter_); } if (validateOnly_ != false) { @@ -886,7 +886,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getPlacementBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(placement_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, placement_); } if (userEvent_ != null) { @@ -895,10 +895,10 @@ public int getSerializedSize() { if (pageSize_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, pageToken_); } - if (!getFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, filter_); } if (validateOnly_ != false) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictResponse.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictResponse.java index ad7156d8..9479aa8b 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictResponse.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PredictResponse.java @@ -567,7 +567,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_); } com.google.protobuf.GeneratedMessageV3.serializeStringMapTo( @@ -581,7 +581,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_); } for (java.util.Map.Entry entry : @@ -1508,7 +1508,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < results_.size(); i++) { output.writeMessage(1, results_.get(i)); } - if (!getAttributionTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(attributionToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, attributionToken_); } for (int i = 0; i < missingIds_.size(); i++) { @@ -1529,7 +1529,7 @@ public int getSerializedSize() { for (int i = 0; i < results_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, results_.get(i)); } - if (!getAttributionTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(attributionToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, attributionToken_); } { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PriceInfo.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PriceInfo.java index 1df1bd95..71da381f 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PriceInfo.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/PriceInfo.java @@ -1747,7 +1747,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getCurrencyCodeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(currencyCode_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, currencyCode_); } if (price_ != 0F) { @@ -1777,7 +1777,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getCurrencyCodeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(currencyCode_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, currencyCode_); } if (price_ != 0F) { diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Product.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Product.java index ed9d54f5..93d9ae99 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Product.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/Product.java @@ -1021,6 +1021,10 @@ public ExpirationCase getExpirationCase() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -1047,6 +1051,10 @@ public boolean hasExpireTime() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -1076,6 +1084,10 @@ public com.google.protobuf.Timestamp getExpireTime() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -1096,12 +1108,12 @@ public com.google.protobuf.TimestampOrBuilder getExpireTimeOrBuilder() { * *
    * Input only. The TTL (time to live) of the product.
-   * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-   * is set as current timestamp plus
-   * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-   * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-   * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-   * when retrieving the [Product][google.cloud.retail.v2.Product].
+   * If it is set, it must be a non-negative value, and
+   * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+   * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+   * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+   * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+   * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
    * If it is set, the product is not available for
    * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
    * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -1124,12 +1136,12 @@ public boolean hasTtl() {
    *
    * 
    * Input only. The TTL (time to live) of the product.
-   * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-   * is set as current timestamp plus
-   * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-   * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-   * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-   * when retrieving the [Product][google.cloud.retail.v2.Product].
+   * If it is set, it must be a non-negative value, and
+   * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+   * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+   * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+   * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+   * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
    * If it is set, the product is not available for
    * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
    * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -1155,12 +1167,12 @@ public com.google.protobuf.Duration getTtl() {
    *
    * 
    * Input only. The TTL (time to live) of the product.
-   * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-   * is set as current timestamp plus
-   * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-   * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-   * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-   * when retrieving the [Product][google.cloud.retail.v2.Product].
+   * If it is set, it must be a non-negative value, and
+   * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+   * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+   * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+   * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+   * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
    * If it is set, the product is not available for
    * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
    * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -1188,7 +1200,6 @@ public com.google.protobuf.DurationOrBuilder getTtlOrBuilder() {
    * 
    * Immutable. Full resource name of the product, such as
    * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-   * The branch ID must be "default_branch".
    * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; @@ -1213,7 +1224,6 @@ public java.lang.String getName() { *
    * Immutable. Full resource name of the product, such as
    * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-   * The branch ID must be "default_branch".
    * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; @@ -3717,37 +3727,37 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } - if (!getIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, id_); } if (type_ != com.google.cloud.retail.v2.Product.Type.TYPE_UNSPECIFIED.getNumber()) { output.writeEnum(3, type_); } - if (!getPrimaryProductIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(primaryProductId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, primaryProductId_); } for (int i = 0; i < collectionMemberIds_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, collectionMemberIds_.getRaw(i)); } - if (!getGtinBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(gtin_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 6, gtin_); } for (int i = 0; i < categories_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, categories_.getRaw(i)); } - if (!getTitleBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(title_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 8, title_); } for (int i = 0; i < brands_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 9, brands_.getRaw(i)); } - if (!getDescriptionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 10, description_); } - if (!getLanguageCodeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(languageCode_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 11, languageCode_); } com.google.protobuf.GeneratedMessageV3.serializeStringMapTo( @@ -3780,7 +3790,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < fulfillmentInfo_.size(); i++) { output.writeMessage(21, fulfillmentInfo_.get(i)); } - if (!getUriBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 22, uri_); } for (int i = 0; i < images_.size(); i++) { @@ -3825,16 +3835,16 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getNameBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } - if (!getIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, id_); } if (type_ != com.google.cloud.retail.v2.Product.Type.TYPE_UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream.computeEnumSize(3, type_); } - if (!getPrimaryProductIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(primaryProductId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, primaryProductId_); } { @@ -3845,7 +3855,7 @@ public int getSerializedSize() { size += dataSize; size += 1 * getCollectionMemberIdsList().size(); } - if (!getGtinBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(gtin_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, gtin_); } { @@ -3856,7 +3866,7 @@ public int getSerializedSize() { size += dataSize; size += 1 * getCategoriesList().size(); } - if (!getTitleBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(title_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, title_); } { @@ -3867,10 +3877,10 @@ public int getSerializedSize() { size += dataSize; size += 1 * getBrandsList().size(); } - if (!getDescriptionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, description_); } - if (!getLanguageCodeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(languageCode_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, languageCode_); } for (java.util.Map.Entry entry : @@ -3921,7 +3931,7 @@ public int getSerializedSize() { for (int i = 0; i < fulfillmentInfo_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(21, fulfillmentInfo_.get(i)); } - if (!getUriBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(22, uri_); } for (int i = 0; i < images_.size(); i++) { @@ -5016,6 +5026,10 @@ public Builder clearExpiration() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). *
@@ -5042,6 +5056,10 @@ public boolean hasExpireTime() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). *
@@ -5078,6 +5096,10 @@ public com.google.protobuf.Timestamp getExpireTime() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). *
@@ -5111,6 +5133,10 @@ public Builder setExpireTime(com.google.protobuf.Timestamp value) { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -5141,6 +5167,10 @@ public Builder setExpireTime(com.google.protobuf.Timestamp.Builder builderForVal * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -5182,6 +5212,10 @@ public Builder mergeExpireTime(com.google.protobuf.Timestamp value) { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -5218,6 +5252,10 @@ public Builder clearExpireTime() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -5241,6 +5279,10 @@ public com.google.protobuf.Timestamp.Builder getExpireTimeBuilder() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -5272,6 +5314,10 @@ public com.google.protobuf.TimestampOrBuilder getExpireTimeOrBuilder() { * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). * @@ -5311,12 +5357,12 @@ public com.google.protobuf.TimestampOrBuilder getExpireTimeOrBuilder() { * *
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5339,12 +5385,12 @@ public boolean hasTtl() {
      *
      * 
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5377,12 +5423,12 @@ public com.google.protobuf.Duration getTtl() {
      *
      * 
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5412,12 +5458,12 @@ public Builder setTtl(com.google.protobuf.Duration value) {
      *
      * 
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5444,12 +5490,12 @@ public Builder setTtl(com.google.protobuf.Duration.Builder builderForValue) {
      *
      * 
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5487,12 +5533,12 @@ public Builder mergeTtl(com.google.protobuf.Duration value) {
      *
      * 
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5525,12 +5571,12 @@ public Builder clearTtl() {
      *
      * 
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5550,12 +5596,12 @@ public com.google.protobuf.Duration.Builder getTtlBuilder() {
      *
      * 
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5583,12 +5629,12 @@ public com.google.protobuf.DurationOrBuilder getTtlOrBuilder() {
      *
      * 
      * Input only. The TTL (time to live) of the product.
-     * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-     * is set as current timestamp plus
-     * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-     * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-     * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-     * when retrieving the [Product][google.cloud.retail.v2.Product].
+     * If it is set, it must be a non-negative value, and
+     * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+     * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+     * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+     * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+     * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
      * If it is set, the product is not available for
      * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
      * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -5630,7 +5676,6 @@ public com.google.protobuf.DurationOrBuilder getTtlOrBuilder() {
      * 
      * Immutable. Full resource name of the product, such as
      * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-     * The branch ID must be "default_branch".
      * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; @@ -5654,7 +5699,6 @@ public java.lang.String getName() { *
      * Immutable. Full resource name of the product, such as
      * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-     * The branch ID must be "default_branch".
      * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; @@ -5678,7 +5722,6 @@ public com.google.protobuf.ByteString getNameBytes() { *
      * Immutable. Full resource name of the product, such as
      * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-     * The branch ID must be "default_branch".
      * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; @@ -5701,7 +5744,6 @@ public Builder setName(java.lang.String value) { *
      * Immutable. Full resource name of the product, such as
      * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-     * The branch ID must be "default_branch".
      * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; @@ -5720,7 +5762,6 @@ public Builder clearName() { *
      * Immutable. Full resource name of the product, such as
      * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-     * The branch ID must be "default_branch".
      * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductLevelConfig.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductLevelConfig.java index 73f4586b..c516fd53 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductLevelConfig.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductLevelConfig.java @@ -304,10 +304,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getIngestionProductTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ingestionProductType_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, ingestionProductType_); } - if (!getMerchantCenterProductIdFieldBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(merchantCenterProductIdField_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, merchantCenterProductIdField_); } unknownFields.writeTo(output); @@ -319,10 +319,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getIngestionProductTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ingestionProductType_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, ingestionProductType_); } - if (!getMerchantCenterProductIdFieldBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(merchantCenterProductIdField_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize( 2, merchantCenterProductIdField_); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductOrBuilder.java index 0f99170e..e905cbb3 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductOrBuilder.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductOrBuilder.java @@ -37,6 +37,10 @@ public interface ProductOrBuilder * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). *
@@ -60,6 +64,10 @@ public interface ProductOrBuilder * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). *
@@ -83,6 +91,10 @@ public interface ProductOrBuilder * [ProductService.GetProduct][google.cloud.retail.v2.ProductService.GetProduct] * and * [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts]. + * [expire_time][google.cloud.retail.v2.Product.expire_time] must be later + * than [available_time][google.cloud.retail.v2.Product.available_time] and + * [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an + * INVALID_ARGUMENT error is thrown. * Google Merchant Center property * [expiration_date](https://support.google.com/merchants/answer/6324499). *
@@ -96,12 +108,12 @@ public interface ProductOrBuilder * *
    * Input only. The TTL (time to live) of the product.
-   * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-   * is set as current timestamp plus
-   * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-   * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-   * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-   * when retrieving the [Product][google.cloud.retail.v2.Product].
+   * If it is set, it must be a non-negative value, and
+   * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+   * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+   * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+   * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+   * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
    * If it is set, the product is not available for
    * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
    * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -121,12 +133,12 @@ public interface ProductOrBuilder
    *
    * 
    * Input only. The TTL (time to live) of the product.
-   * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-   * is set as current timestamp plus
-   * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-   * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-   * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-   * when retrieving the [Product][google.cloud.retail.v2.Product].
+   * If it is set, it must be a non-negative value, and
+   * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+   * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+   * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+   * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+   * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
    * If it is set, the product is not available for
    * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
    * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -146,12 +158,12 @@ public interface ProductOrBuilder
    *
    * 
    * Input only. The TTL (time to live) of the product.
-   * If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-   * is set as current timestamp plus
-   * [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-   * [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-   * the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-   * when retrieving the [Product][google.cloud.retail.v2.Product].
+   * If it is set, it must be a non-negative value, and
+   * [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+   * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+   * derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+   * returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+   * left blank when retrieving the [Product][google.cloud.retail.v2.Product].
    * If it is set, the product is not available for
    * [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
    * current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl].
@@ -171,7 +183,6 @@ public interface ProductOrBuilder
    * 
    * Immutable. Full resource name of the product, such as
    * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-   * The branch ID must be "default_branch".
    * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; @@ -185,7 +196,6 @@ public interface ProductOrBuilder *
    * Immutable. Full resource name of the product, such as
    * `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-   * The branch ID must be "default_branch".
    * 
* * string name = 1 [(.google.api.field_behavior) = IMMUTABLE]; diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductServiceProto.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductServiceProto.java index da55a6d8..52b0fc60 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductServiceProto.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/ProductServiceProto.java @@ -100,115 +100,116 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + ".proto\022\026google.cloud.retail.v2\032\034google/a" + "pi/annotations.proto\032\027google/api/client." + "proto\032\037google/api/field_behavior.proto\032\031" - + "google/api/resource.proto\032*google/cloud/" - + "retail/v2/import_config.proto\032$google/cl" - + "oud/retail/v2/product.proto\032)google/clou" - + "d/retail/v2/purge_config.proto\032#google/l" - + "ongrunning/operations.proto\032\033google/prot" - + "obuf/empty.proto\032 google/protobuf/field_" - + "mask.proto\032\037google/protobuf/timestamp.pr" - + "oto\"\234\001\n\024CreateProductRequest\0224\n\006parent\030\001" - + " \001(\tB$\340A\002\372A\036\n\034retail.googleapis.com/Bran" - + "ch\0225\n\007product\030\002 \001(\0132\037.google.cloud.retai" - + "l.v2.ProductB\003\340A\002\022\027\n\nproduct_id\030\003 \001(\tB\003\340" - + "A\002\"H\n\021GetProductRequest\0223\n\004name\030\001 \001(\tB%\340" - + "A\002\372A\037\n\035retail.googleapis.com/Product\"\225\001\n" - + "\024UpdateProductRequest\0225\n\007product\030\001 \001(\0132\037" - + ".google.cloud.retail.v2.ProductB\003\340A\002\022/\n\013" - + "update_mask\030\002 \001(\0132\032.google.protobuf.Fiel" - + "dMask\022\025\n\rallow_missing\030\003 \001(\010\"K\n\024DeletePr" - + "oductRequest\0223\n\004name\030\001 \001(\tB%\340A\002\372A\037\n\035reta" - + "il.googleapis.com/Product\"\261\001\n\023ListProduc" - + "tsRequest\0224\n\006parent\030\001 \001(\tB$\340A\002\372A\036\n\034retai" - + "l.googleapis.com/Branch\022\021\n\tpage_size\030\002 \001" - + "(\005\022\022\n\npage_token\030\003 \001(\t\022\016\n\006filter\030\004 \001(\t\022-" - + "\n\tread_mask\030\005 \001(\0132\032.google.protobuf.Fiel" - + "dMask\"b\n\024ListProductsResponse\0221\n\010product" - + "s\030\001 \003(\0132\037.google.cloud.retail.v2.Product" - + "\022\027\n\017next_page_token\030\002 \001(\t\"\301\001\n\023SetInvento" - + "ryRequest\0227\n\tinventory\030\001 \001(\0132\037.google.cl" - + "oud.retail.v2.ProductB\003\340A\002\022,\n\010set_mask\030\002" - + " \001(\0132\032.google.protobuf.FieldMask\022,\n\010set_" - + "time\030\003 \001(\0132\032.google.protobuf.Timestamp\022\025" - + "\n\rallow_missing\030\004 \001(\010\"\026\n\024SetInventoryMet" - + "adata\"\026\n\024SetInventoryResponse\"\305\001\n\033AddFul" - + "fillmentPlacesRequest\0226\n\007product\030\001 \001(\tB%" - + "\340A\002\372A\037\n\035retail.googleapis.com/Product\022\021\n" - + "\004type\030\002 \001(\tB\003\340A\002\022\026\n\tplace_ids\030\003 \003(\tB\003\340A\002" - + "\022,\n\010add_time\030\004 \001(\0132\032.google.protobuf.Tim" - + "estamp\022\025\n\rallow_missing\030\005 \001(\010\"\036\n\034AddFulf" - + "illmentPlacesMetadata\"\036\n\034AddFulfillmentP" - + "lacesResponse\"\313\001\n\036RemoveFulfillmentPlace" - + "sRequest\0226\n\007product\030\001 \001(\tB%\340A\002\372A\037\n\035retai" - + "l.googleapis.com/Product\022\021\n\004type\030\002 \001(\tB\003" - + "\340A\002\022\026\n\tplace_ids\030\003 \003(\tB\003\340A\002\022/\n\013remove_ti" - + "me\030\004 \001(\0132\032.google.protobuf.Timestamp\022\025\n\r" - + "allow_missing\030\005 \001(\010\"!\n\037RemoveFulfillment" - + "PlacesMetadata\"!\n\037RemoveFulfillmentPlace" - + "sResponse2\217\022\n\016ProductService\022\317\001\n\rCreateP" - + "roduct\022,.google.cloud.retail.v2.CreatePr" - + "oductRequest\032\037.google.cloud.retail.v2.Pr" - + "oduct\"o\202\323\344\223\002M\"B/v2/{parent=projects/*/lo" - + "cations/*/catalogs/*/branches/*}/product" - + "s:\007product\332A\031parent,product,product_id\022\254" - + "\001\n\nGetProduct\022).google.cloud.retail.v2.G" - + "etProductRequest\032\037.google.cloud.retail.v" - + "2.Product\"R\202\323\344\223\002E\022C/v2/{name=projects/*/" - + "locations/*/catalogs/*/branches/*/produc" - + "ts/**}\332A\004name\022\276\001\n\014ListProducts\022+.google." - + "cloud.retail.v2.ListProductsRequest\032,.go" - + "ogle.cloud.retail.v2.ListProductsRespons" - + "e\"S\202\323\344\223\002D\022B/v2/{parent=projects/*/locati" - + "ons/*/catalogs/*/branches/*}/products\332A\006" - + "parent\022\322\001\n\rUpdateProduct\022,.google.cloud." - + "retail.v2.UpdateProductRequest\032\037.google." - + "cloud.retail.v2.Product\"r\202\323\344\223\002V2K/v2/{pr" - + "oduct.name=projects/*/locations/*/catalo" - + "gs/*/branches/*/products/**}:\007product\332A\023" - + "product,update_mask\022\251\001\n\rDeleteProduct\022,." - + "google.cloud.retail.v2.DeleteProductRequ" - + "est\032\026.google.protobuf.Empty\"R\202\323\344\223\002E*C/v2" - + "/{name=projects/*/locations/*/catalogs/*" - + "/branches/*/products/**}\332A\004name\022\216\002\n\016Impo" - + "rtProducts\022-.google.cloud.retail.v2.Impo" - + "rtProductsRequest\032\035.google.longrunning.O" - + "peration\"\255\001\202\323\344\223\002N\"I/v2/{parent=projects/" - + "*/locations/*/catalogs/*/branches/*}/pro" - + "ducts:import:\001*\312AV\n-google.cloud.retail." - + "v2.ImportProductsResponse\022%google.cloud." - + "retail.v2.ImportMetadata\022\264\002\n\014SetInventor" - + "y\022+.google.cloud.retail.v2.SetInventoryR" - + "equest\032\035.google.longrunning.Operation\"\327\001" - + "\202\323\344\223\002_\"Z/v2/{inventory.name=projects/*/l" - + "ocations/*/catalogs/*/branches/*/product" - + "s/**}:setInventory:\001*\332A\022inventory,set_ma" - + "sk\312AZ\n+google.cloud.retail.v2.SetInvento" - + "ryResponse\022+google.cloud.retail.v2.SetIn" - + "ventoryMetadata\022\312\002\n\024AddFulfillmentPlaces" - + "\0223.google.cloud.retail.v2.AddFulfillment" - + "PlacesRequest\032\035.google.longrunning.Opera" - + "tion\"\335\001\202\323\344\223\002`\"[/v2/{product=projects/*/l" - + "ocations/*/catalogs/*/branches/*/product" - + "s/**}:addFulfillmentPlaces:\001*\332A\007product\312" - + "Aj\n3google.cloud.retail.v2.AddFulfillmen" - + "tPlacesResponse\0223google.cloud.retail.v2." - + "AddFulfillmentPlacesMetadata\022\331\002\n\027RemoveF" - + "ulfillmentPlaces\0226.google.cloud.retail.v" - + "2.RemoveFulfillmentPlacesRequest\032\035.googl" - + "e.longrunning.Operation\"\346\001\202\323\344\223\002c\"^/v2/{p" - + "roduct=projects/*/locations/*/catalogs/*" - + "/branches/*/products/**}:removeFulfillme" - + "ntPlaces:\001*\332A\007product\312Ap\n6google.cloud.r" - + "etail.v2.RemoveFulfillmentPlacesResponse" - + "\0226google.cloud.retail.v2.RemoveFulfillme" - + "ntPlacesMetadata\032I\312A\025retail.googleapis.c" - + "om\322A.https://www.googleapis.com/auth/clo" - + "ud-platformB\310\001\n\032com.google.cloud.retail." - + "v2B\023ProductServiceProtoP\001Z * @@ -477,10 +477,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getProductBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(product_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, product_); } - if (!getTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, type_); } for (int i = 0; i < placeIds_.size(); i++) { @@ -501,10 +501,10 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getProductBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(product_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, product_); } - if (!getTypeBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, type_); } { @@ -1643,8 +1643,8 @@ public com.google.protobuf.TimestampOrBuilder getRemoveTimeOrBuilder() { * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. *
* @@ -1663,8 +1663,8 @@ public boolean getAllowMissing() { * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. *
* @@ -1686,8 +1686,8 @@ public Builder setAllowMissing(boolean value) { * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. *
* diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/RemoveFulfillmentPlacesRequestOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/RemoveFulfillmentPlacesRequestOrBuilder.java index d51dbf1d..cfbe4a78 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/RemoveFulfillmentPlacesRequestOrBuilder.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/RemoveFulfillmentPlacesRequestOrBuilder.java @@ -246,8 +246,8 @@ public interface RemoveFulfillmentPlacesRequestOrBuilder * If set to true, and the [Product][google.cloud.retail.v2.Product] is not * found, the fulfillment information will still be processed and retained for * at most 1 day and processed once the - * [Product][google.cloud.retail.v2.Product] is created. If set to false, an - * INVALID_ARGUMENT error is returned if the + * [Product][google.cloud.retail.v2.Product] is created. If set to false, a + * NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. *
* diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchRequest.java index 7279612b..eae86f58 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchRequest.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchRequest.java @@ -50,6 +50,7 @@ private SearchRequest() { facetSpecs_ = java.util.Collections.emptyList(); variantRollupKeys_ = com.google.protobuf.LazyStringArrayList.EMPTY; pageCategories_ = com.google.protobuf.LazyStringArrayList.EMPTY; + searchMode_ = 0; } @java.lang.Override @@ -248,6 +249,13 @@ private SearchRequest( canonicalFilter_ = s; break; } + case 248: + { + int rawValue = input.readEnum(); + + searchMode_ = rawValue; + break; + } default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { @@ -291,6 +299,193 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { com.google.cloud.retail.v2.SearchRequest.Builder.class); } + /** + * + * + *
+   * The search mode of each search request.
+   * 
+ * + * Protobuf enum {@code google.cloud.retail.v2.SearchRequest.SearchMode} + */ + public enum SearchMode implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+     * Default value. In this case both product search and faceted search will
+     * be performed. Both [SearchResponse.SearchResult] and
+     * [SearchResponse.Facet] will be returned.
+     * 
+ * + * SEARCH_MODE_UNSPECIFIED = 0; + */ + SEARCH_MODE_UNSPECIFIED(0), + /** + * + * + *
+     * Only product search will be performed. The faceted search will be
+     * disabled.
+     * Only [SearchResponse.SearchResult] will be returned.
+     * [SearchResponse.Facet] will not be returned, even if
+     * [SearchRequest.facet_specs][google.cloud.retail.v2.SearchRequest.facet_specs]
+     * or
+     * [SearchRequest.dynamic_facet_spec][google.cloud.retail.v2.SearchRequest.dynamic_facet_spec]
+     * is set.
+     * 
+ * + * PRODUCT_SEARCH_ONLY = 1; + */ + PRODUCT_SEARCH_ONLY(1), + /** + * + * + *
+     * Only faceted search will be performed. The product search will be
+     * disabled.
+     * When in this mode, one or both of [SearchRequest.facet_spec][] and
+     * [SearchRequest.dynamic_facet_spec][google.cloud.retail.v2.SearchRequest.dynamic_facet_spec]
+     * should be set. Otherwise, an INVALID_ARGUMENT error is returned. Only
+     * [SearchResponse.Facet] will be returned. [SearchResponse.SearchResult]
+     * will not be returned.
+     * 
+ * + * FACETED_SEARCH_ONLY = 2; + */ + FACETED_SEARCH_ONLY(2), + UNRECOGNIZED(-1), + ; + + /** + * + * + *
+     * Default value. In this case both product search and faceted search will
+     * be performed. Both [SearchResponse.SearchResult] and
+     * [SearchResponse.Facet] will be returned.
+     * 
+ * + * SEARCH_MODE_UNSPECIFIED = 0; + */ + public static final int SEARCH_MODE_UNSPECIFIED_VALUE = 0; + /** + * + * + *
+     * Only product search will be performed. The faceted search will be
+     * disabled.
+     * Only [SearchResponse.SearchResult] will be returned.
+     * [SearchResponse.Facet] will not be returned, even if
+     * [SearchRequest.facet_specs][google.cloud.retail.v2.SearchRequest.facet_specs]
+     * or
+     * [SearchRequest.dynamic_facet_spec][google.cloud.retail.v2.SearchRequest.dynamic_facet_spec]
+     * is set.
+     * 
+ * + * PRODUCT_SEARCH_ONLY = 1; + */ + public static final int PRODUCT_SEARCH_ONLY_VALUE = 1; + /** + * + * + *
+     * Only faceted search will be performed. The product search will be
+     * disabled.
+     * When in this mode, one or both of [SearchRequest.facet_spec][] and
+     * [SearchRequest.dynamic_facet_spec][google.cloud.retail.v2.SearchRequest.dynamic_facet_spec]
+     * should be set. Otherwise, an INVALID_ARGUMENT error is returned. Only
+     * [SearchResponse.Facet] will be returned. [SearchResponse.SearchResult]
+     * will not be returned.
+     * 
+ * + * FACETED_SEARCH_ONLY = 2; + */ + public static final int FACETED_SEARCH_ONLY_VALUE = 2; + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static SearchMode valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static SearchMode forNumber(int value) { + switch (value) { + case 0: + return SEARCH_MODE_UNSPECIFIED; + case 1: + return PRODUCT_SEARCH_ONLY; + case 2: + return FACETED_SEARCH_ONLY; + default: + return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { + return internalValueMap; + } + + private static final com.google.protobuf.Internal.EnumLiteMap internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public SearchMode findValueByNumber(int number) { + return SearchMode.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.cloud.retail.v2.SearchRequest.getDescriptor().getEnumTypes().get(0); + } + + private static final SearchMode[] VALUES = values(); + + public static SearchMode valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private SearchMode(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.cloud.retail.v2.SearchRequest.SearchMode) + } + public interface FacetSpecOrBuilder extends // @@protoc_insertion_point(interface_extends:google.cloud.retail.v2.SearchRequest.FacetSpec) @@ -661,6 +856,7 @@ public interface FacetKeyOrBuilder * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" *
* * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -706,6 +902,7 @@ public interface FacetKeyOrBuilder * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" *
* * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -1335,6 +1532,7 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" *
* * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -1391,6 +1589,7 @@ public java.lang.String getKey() { * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" *
* * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -1932,7 +2131,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getKeyBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(key_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, key_); } for (int i = 0; i < intervals_.size(); i++) { @@ -1942,10 +2141,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io com.google.protobuf.GeneratedMessageV3.writeString( output, 3, restrictedValues_.getRaw(i)); } - if (!getOrderByBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(orderBy_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, orderBy_); } - if (!getQueryBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(query_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, query_); } for (int i = 0; i < prefixes_.size(); i++) { @@ -1963,7 +2162,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getKeyBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(key_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, key_); } for (int i = 0; i < intervals_.size(); i++) { @@ -1977,10 +2176,10 @@ public int getSerializedSize() { size += dataSize; size += 1 * getRestrictedValuesList().size(); } - if (!getOrderByBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(orderBy_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, orderBy_); } - if (!getQueryBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(query_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, query_); } { @@ -2474,6 +2673,7 @@ public Builder mergeFrom( * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" *
* * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -2529,6 +2729,7 @@ public java.lang.String getKey() { * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" * * * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -2584,6 +2785,7 @@ public com.google.protobuf.ByteString getKeyBytes() { * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" * * * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -2638,6 +2840,7 @@ public Builder setKey(java.lang.String value) { * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" * * * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -2688,6 +2891,7 @@ public Builder clearKey() { * * "rating" * * "ratingCount" * * "attributes.key" + * * "inventory(place_id,price)" * * * string key = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -6859,7 +7063,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getConditionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(condition_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, condition_); } if (boost_ != 0F) { @@ -6874,7 +7078,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getConditionBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(condition_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, condition_); } if (boost_ != 0F) { @@ -9431,10 +9635,8 @@ public com.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec getDefaultIns *
    * Required. The resource name of the search engine placement, such as
    * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-   * This field is used to identify the set of models that will be used to make
-   * the search.
-   * We currently support one placement with the following ID:
-   * * `default_search`.
+   * This field is used to identify the serving configuration name and the set
+   * of models that will be used to make the search.
    * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -9459,10 +9661,8 @@ public java.lang.String getPlacement() { *
    * Required. The resource name of the search engine placement, such as
    * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-   * This field is used to identify the set of models that will be used to make
-   * the search.
-   * We currently support one placement with the following ID:
-   * * `default_search`.
+   * This field is used to identify the serving configuration name and the set
+   * of models that will be used to make the search.
    * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -9808,7 +10008,8 @@ public int getOffset() { *
    * The filter syntax consists of an expression language for constructing a
    * predicate from one or more fields of the products being filtered. Filter
-   * expression is case-sensitive.
+   * expression is case-sensitive. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
    * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
    * 
* @@ -9834,7 +10035,8 @@ public java.lang.String getFilter() { *
    * The filter syntax consists of an expression language for constructing a
    * predicate from one or more fields of the products being filtered. Filter
-   * expression is case-sensitive.
+   * expression is case-sensitive. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
    * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
    * 
* @@ -9926,7 +10128,9 @@ public com.google.protobuf.ByteString getCanonicalFilterBytes() { *
    * The order in which products are returned. Products can be ordered by
    * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-   * unset if ordered by relevance. OrderBy expression is case-sensitive.
+   * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+   * more details at this [user
+   * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
    * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
    * 
* @@ -9952,7 +10156,9 @@ public java.lang.String getOrderBy() { *
    * The order in which products are returned. Products can be ordered by
    * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-   * unset if ordered by relevance. OrderBy expression is case-sensitive.
+   * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+   * more details at this [user
+   * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
    * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
    * 
* @@ -10117,7 +10323,13 @@ public com.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec getDynamicFacet * * *
-   * Boost specification to boost certain products.
+   * Boost specification to boost certain products. See more details at this
+   * [user guide](https://cloud.google.com/retail/docs/boosting).
+   * Notice that if both [ServingConfig.boost_control_ids][] and
+   * [SearchRequest.boost_spec] are set, the boost conditions from both places
+   * are evaluated. If a search request matches multiple boost conditions,
+   * the final boost score is equal to the sum of the boost scores from all
+   * matched boost conditions.
    * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -10132,7 +10344,13 @@ public boolean hasBoostSpec() { * * *
-   * Boost specification to boost certain products.
+   * Boost specification to boost certain products. See more details at this
+   * [user guide](https://cloud.google.com/retail/docs/boosting).
+   * Notice that if both [ServingConfig.boost_control_ids][] and
+   * [SearchRequest.boost_spec] are set, the boost conditions from both places
+   * are evaluated. If a search request matches multiple boost conditions,
+   * the final boost score is equal to the sum of the boost scores from all
+   * matched boost conditions.
    * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -10149,7 +10367,13 @@ public com.google.cloud.retail.v2.SearchRequest.BoostSpec getBoostSpec() { * * *
-   * Boost specification to boost certain products.
+   * Boost specification to boost certain products. See more details at this
+   * [user guide](https://cloud.google.com/retail/docs/boosting).
+   * Notice that if both [ServingConfig.boost_control_ids][] and
+   * [SearchRequest.boost_spec] are set, the boost conditions from both places
+   * are evaluated. If a search request matches multiple boost conditions,
+   * the final boost score is equal to the sum of the boost scores from all
+   * matched boost conditions.
    * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -10166,7 +10390,8 @@ public com.google.cloud.retail.v2.SearchRequest.BoostSpecOrBuilder getBoostSpecO * *
    * The query expansion specification that specifies the conditions under which
-   * query expansion will occur.
+   * query expansion will occur. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
    * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -10183,7 +10408,8 @@ public boolean hasQueryExpansionSpec() { * *
    * The query expansion specification that specifies the conditions under which
-   * query expansion will occur.
+   * query expansion will occur. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
    * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -10202,7 +10428,8 @@ public com.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec getQueryExpan * *
    * The query expansion specification that specifies the conditions under which
-   * query expansion will occur.
+   * query expansion will occur. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
    * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -10237,6 +10464,7 @@ public com.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec getQueryExpan * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -10307,6 +10535,7 @@ public com.google.protobuf.ProtocolStringList getVariantRollupKeysList() { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -10377,6 +10606,7 @@ public int getVariantRollupKeysCount() { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -10448,6 +10678,7 @@ public java.lang.String getVariantRollupKeys(int index) { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -10596,6 +10827,46 @@ public com.google.protobuf.ByteString getPageCategoriesBytes(int index) { return pageCategories_.getByteString(index); } + public static final int SEARCH_MODE_FIELD_NUMBER = 31; + private int searchMode_; + /** + * + * + *
+   * The search mode of the search request. If not specified, a single search
+   * request triggers both product search and faceted search.
+   * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @return The enum numeric value on the wire for searchMode. + */ + @java.lang.Override + public int getSearchModeValue() { + return searchMode_; + } + /** + * + * + *
+   * The search mode of the search request. If not specified, a single search
+   * request triggers both product search and faceted search.
+   * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @return The searchMode. + */ + @java.lang.Override + public com.google.cloud.retail.v2.SearchRequest.SearchMode getSearchMode() { + @SuppressWarnings("deprecation") + com.google.cloud.retail.v2.SearchRequest.SearchMode result = + com.google.cloud.retail.v2.SearchRequest.SearchMode.valueOf(searchMode_); + return result == null + ? com.google.cloud.retail.v2.SearchRequest.SearchMode.UNRECOGNIZED + : result; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -10610,16 +10881,16 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getPlacementBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(placement_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, placement_); } - if (!getBranchBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(branch_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, branch_); } - if (!getQueryBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(query_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, query_); } - if (!getVisitorIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(visitorId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, visitorId_); } if (userInfo_ != null) { @@ -10628,16 +10899,16 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (pageSize_ != 0) { output.writeInt32(7, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 8, pageToken_); } if (offset_ != 0) { output.writeInt32(9, offset_); } - if (!getFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 10, filter_); } - if (!getOrderByBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(orderBy_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 11, orderBy_); } for (int i = 0; i < facetSpecs_.size(); i++) { @@ -10658,9 +10929,14 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io for (int i = 0; i < pageCategories_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 23, pageCategories_.getRaw(i)); } - if (!getCanonicalFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(canonicalFilter_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 28, canonicalFilter_); } + if (searchMode_ + != com.google.cloud.retail.v2.SearchRequest.SearchMode.SEARCH_MODE_UNSPECIFIED + .getNumber()) { + output.writeEnum(31, searchMode_); + } unknownFields.writeTo(output); } @@ -10670,16 +10946,16 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getPlacementBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(placement_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, placement_); } - if (!getBranchBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(branch_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, branch_); } - if (!getQueryBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(query_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, query_); } - if (!getVisitorIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(visitorId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, visitorId_); } if (userInfo_ != null) { @@ -10688,16 +10964,16 @@ public int getSerializedSize() { if (pageSize_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(7, pageSize_); } - if (!getPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, pageToken_); } if (offset_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(9, offset_); } - if (!getFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, filter_); } - if (!getOrderByBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(orderBy_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, orderBy_); } for (int i = 0; i < facetSpecs_.size(); i++) { @@ -10728,9 +11004,14 @@ public int getSerializedSize() { size += dataSize; size += 2 * getPageCategoriesList().size(); } - if (!getCanonicalFilterBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(canonicalFilter_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(28, canonicalFilter_); } + if (searchMode_ + != com.google.cloud.retail.v2.SearchRequest.SearchMode.SEARCH_MODE_UNSPECIFIED + .getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(31, searchMode_); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -10775,6 +11056,7 @@ public boolean equals(final java.lang.Object obj) { } if (!getVariantRollupKeysList().equals(other.getVariantRollupKeysList())) return false; if (!getPageCategoriesList().equals(other.getPageCategoriesList())) return false; + if (searchMode_ != other.searchMode_) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -10834,6 +11116,8 @@ public int hashCode() { hash = (37 * hash) + PAGE_CATEGORIES_FIELD_NUMBER; hash = (53 * hash) + getPageCategoriesList().hashCode(); } + hash = (37 * hash) + SEARCH_MODE_FIELD_NUMBER; + hash = (53 * hash) + searchMode_; hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -11036,6 +11320,8 @@ public Builder clear() { bitField0_ = (bitField0_ & ~0x00000002); pageCategories_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000004); + searchMode_ = 0; + return this; } @@ -11113,6 +11399,7 @@ public com.google.cloud.retail.v2.SearchRequest buildPartial() { bitField0_ = (bitField0_ & ~0x00000004); } result.pageCategories_ = pageCategories_; + result.searchMode_ = searchMode_; onBuilt(); return result; } @@ -11259,6 +11546,9 @@ public Builder mergeFrom(com.google.cloud.retail.v2.SearchRequest other) { } onChanged(); } + if (other.searchMode_ != 0) { + setSearchModeValue(other.getSearchModeValue()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -11297,10 +11587,8 @@ public Builder mergeFrom( *
      * Required. The resource name of the search engine placement, such as
      * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-     * This field is used to identify the set of models that will be used to make
-     * the search.
-     * We currently support one placement with the following ID:
-     * * `default_search`.
+     * This field is used to identify the serving configuration name and the set
+     * of models that will be used to make the search.
      * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -11324,10 +11612,8 @@ public java.lang.String getPlacement() { *
      * Required. The resource name of the search engine placement, such as
      * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-     * This field is used to identify the set of models that will be used to make
-     * the search.
-     * We currently support one placement with the following ID:
-     * * `default_search`.
+     * This field is used to identify the serving configuration name and the set
+     * of models that will be used to make the search.
      * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -11351,10 +11637,8 @@ public com.google.protobuf.ByteString getPlacementBytes() { *
      * Required. The resource name of the search engine placement, such as
      * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-     * This field is used to identify the set of models that will be used to make
-     * the search.
-     * We currently support one placement with the following ID:
-     * * `default_search`.
+     * This field is used to identify the serving configuration name and the set
+     * of models that will be used to make the search.
      * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -11377,10 +11661,8 @@ public Builder setPlacement(java.lang.String value) { *
      * Required. The resource name of the search engine placement, such as
      * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-     * This field is used to identify the set of models that will be used to make
-     * the search.
-     * We currently support one placement with the following ID:
-     * * `default_search`.
+     * This field is used to identify the serving configuration name and the set
+     * of models that will be used to make the search.
      * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -11399,10 +11681,8 @@ public Builder clearPlacement() { *
      * Required. The resource name of the search engine placement, such as
      * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-     * This field is used to identify the set of models that will be used to make
-     * the search.
-     * We currently support one placement with the following ID:
-     * * `default_search`.
+     * This field is used to identify the serving configuration name and the set
+     * of models that will be used to make the search.
      * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -12245,7 +12525,8 @@ public Builder clearOffset() { *
      * The filter syntax consists of an expression language for constructing a
      * predicate from one or more fields of the products being filtered. Filter
-     * expression is case-sensitive.
+     * expression is case-sensitive. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12270,7 +12551,8 @@ public java.lang.String getFilter() { *
      * The filter syntax consists of an expression language for constructing a
      * predicate from one or more fields of the products being filtered. Filter
-     * expression is case-sensitive.
+     * expression is case-sensitive. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12295,7 +12577,8 @@ public com.google.protobuf.ByteString getFilterBytes() { *
      * The filter syntax consists of an expression language for constructing a
      * predicate from one or more fields of the products being filtered. Filter
-     * expression is case-sensitive.
+     * expression is case-sensitive. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12319,7 +12602,8 @@ public Builder setFilter(java.lang.String value) { *
      * The filter syntax consists of an expression language for constructing a
      * predicate from one or more fields of the products being filtered. Filter
-     * expression is case-sensitive.
+     * expression is case-sensitive. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12339,7 +12623,8 @@ public Builder clearFilter() { *
      * The filter syntax consists of an expression language for constructing a
      * predicate from one or more fields of the products being filtered. Filter
-     * expression is case-sensitive.
+     * expression is case-sensitive. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12507,7 +12792,9 @@ public Builder setCanonicalFilterBytes(com.google.protobuf.ByteString value) { *
      * The order in which products are returned. Products can be ordered by
      * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-     * unset if ordered by relevance. OrderBy expression is case-sensitive.
+     * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+     * more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12532,7 +12819,9 @@ public java.lang.String getOrderBy() { *
      * The order in which products are returned. Products can be ordered by
      * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-     * unset if ordered by relevance. OrderBy expression is case-sensitive.
+     * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+     * more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12557,7 +12846,9 @@ public com.google.protobuf.ByteString getOrderByBytes() { *
      * The order in which products are returned. Products can be ordered by
      * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-     * unset if ordered by relevance. OrderBy expression is case-sensitive.
+     * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+     * more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12581,7 +12872,9 @@ public Builder setOrderBy(java.lang.String value) { *
      * The order in which products are returned. Products can be ordered by
      * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-     * unset if ordered by relevance. OrderBy expression is case-sensitive.
+     * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+     * more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -12601,7 +12894,9 @@ public Builder clearOrderBy() { *
      * The order in which products are returned. Products can be ordered by
      * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-     * unset if ordered by relevance. OrderBy expression is case-sensitive.
+     * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+     * more details at this [user
+     * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
      * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
      * 
* @@ -13243,7 +13538,13 @@ public Builder clearDynamicFacetSpec() { * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13257,7 +13558,13 @@ public boolean hasBoostSpec() { * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13277,7 +13584,13 @@ public com.google.cloud.retail.v2.SearchRequest.BoostSpec getBoostSpec() { * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13299,7 +13612,13 @@ public Builder setBoostSpec(com.google.cloud.retail.v2.SearchRequest.BoostSpec v * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13319,7 +13638,13 @@ public Builder setBoostSpec( * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13345,7 +13670,13 @@ public Builder mergeBoostSpec(com.google.cloud.retail.v2.SearchRequest.BoostSpec * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13365,7 +13696,13 @@ public Builder clearBoostSpec() { * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13379,7 +13716,13 @@ public com.google.cloud.retail.v2.SearchRequest.BoostSpec.Builder getBoostSpecBu * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13397,7 +13740,13 @@ public com.google.cloud.retail.v2.SearchRequest.BoostSpecOrBuilder getBoostSpecO * * *
-     * Boost specification to boost certain products.
+     * Boost specification to boost certain products. See more details at this
+     * [user guide](https://cloud.google.com/retail/docs/boosting).
+     * Notice that if both [ServingConfig.boost_control_ids][] and
+     * [SearchRequest.boost_spec] are set, the boost conditions from both places
+     * are evaluated. If a search request matches multiple boost conditions,
+     * the final boost score is equal to the sum of the boost scores from all
+     * matched boost conditions.
      * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -13430,7 +13779,8 @@ public com.google.cloud.retail.v2.SearchRequest.BoostSpecOrBuilder getBoostSpecO * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13446,7 +13796,8 @@ public boolean hasQueryExpansionSpec() { * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13468,7 +13819,8 @@ public com.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec getQueryExpan * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13493,7 +13845,8 @@ public Builder setQueryExpansionSpec( * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13515,7 +13868,8 @@ public Builder setQueryExpansionSpec( * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13545,7 +13899,8 @@ public Builder mergeQueryExpansionSpec( * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13567,7 +13922,8 @@ public Builder clearQueryExpansionSpec() { * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13584,7 +13940,8 @@ public Builder clearQueryExpansionSpec() { * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13605,7 +13962,8 @@ public Builder clearQueryExpansionSpec() { * *
      * The query expansion specification that specifies the conditions under which
-     * query expansion will occur.
+     * query expansion will occur. See more details at this [user
+     * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
      * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -13658,6 +14016,7 @@ private void ensureVariantRollupKeysIsMutable() { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -13728,6 +14087,7 @@ public com.google.protobuf.ProtocolStringList getVariantRollupKeysList() { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -13798,6 +14158,7 @@ public int getVariantRollupKeysCount() { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -13869,6 +14230,7 @@ public java.lang.String getVariantRollupKeys(int index) { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -13940,6 +14302,7 @@ public com.google.protobuf.ByteString getVariantRollupKeysBytes(int index) { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -14018,6 +14381,7 @@ public Builder setVariantRollupKeys(int index, java.lang.String value) { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -14095,6 +14459,7 @@ public Builder addVariantRollupKeys(java.lang.String value) { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -14169,6 +14534,7 @@ public Builder addAllVariantRollupKeys(java.lang.Iterable valu * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -14242,6 +14608,7 @@ public Builder clearVariantRollupKeys() { * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -14549,6 +14916,104 @@ public Builder addPageCategoriesBytes(com.google.protobuf.ByteString value) { return this; } + private int searchMode_ = 0; + /** + * + * + *
+     * The search mode of the search request. If not specified, a single search
+     * request triggers both product search and faceted search.
+     * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @return The enum numeric value on the wire for searchMode. + */ + @java.lang.Override + public int getSearchModeValue() { + return searchMode_; + } + /** + * + * + *
+     * The search mode of the search request. If not specified, a single search
+     * request triggers both product search and faceted search.
+     * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @param value The enum numeric value on the wire for searchMode to set. + * @return This builder for chaining. + */ + public Builder setSearchModeValue(int value) { + + searchMode_ = value; + onChanged(); + return this; + } + /** + * + * + *
+     * The search mode of the search request. If not specified, a single search
+     * request triggers both product search and faceted search.
+     * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @return The searchMode. + */ + @java.lang.Override + public com.google.cloud.retail.v2.SearchRequest.SearchMode getSearchMode() { + @SuppressWarnings("deprecation") + com.google.cloud.retail.v2.SearchRequest.SearchMode result = + com.google.cloud.retail.v2.SearchRequest.SearchMode.valueOf(searchMode_); + return result == null + ? com.google.cloud.retail.v2.SearchRequest.SearchMode.UNRECOGNIZED + : result; + } + /** + * + * + *
+     * The search mode of the search request. If not specified, a single search
+     * request triggers both product search and faceted search.
+     * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @param value The searchMode to set. + * @return This builder for chaining. + */ + public Builder setSearchMode(com.google.cloud.retail.v2.SearchRequest.SearchMode value) { + if (value == null) { + throw new NullPointerException(); + } + + searchMode_ = value.getNumber(); + onChanged(); + return this; + } + /** + * + * + *
+     * The search mode of the search request. If not specified, a single search
+     * request triggers both product search and faceted search.
+     * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @return This builder for chaining. + */ + public Builder clearSearchMode() { + + searchMode_ = 0; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchRequestOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchRequestOrBuilder.java index de18fb45..8338f808 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchRequestOrBuilder.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchRequestOrBuilder.java @@ -29,10 +29,8 @@ public interface SearchRequestOrBuilder *
    * Required. The resource name of the search engine placement, such as
    * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-   * This field is used to identify the set of models that will be used to make
-   * the search.
-   * We currently support one placement with the following ID:
-   * * `default_search`.
+   * This field is used to identify the serving configuration name and the set
+   * of models that will be used to make the search.
    * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -46,10 +44,8 @@ public interface SearchRequestOrBuilder *
    * Required. The resource name of the search engine placement, such as
    * `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-   * This field is used to identify the set of models that will be used to make
-   * the search.
-   * We currently support one placement with the following ID:
-   * * `default_search`.
+   * This field is used to identify the serving configuration name and the set
+   * of models that will be used to make the search.
    * 
* * string placement = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -265,7 +261,8 @@ public interface SearchRequestOrBuilder *
    * The filter syntax consists of an expression language for constructing a
    * predicate from one or more fields of the products being filtered. Filter
-   * expression is case-sensitive.
+   * expression is case-sensitive. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
    * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
    * 
* @@ -280,7 +277,8 @@ public interface SearchRequestOrBuilder *
    * The filter syntax consists of an expression language for constructing a
    * predicate from one or more fields of the products being filtered. Filter
-   * expression is case-sensitive.
+   * expression is case-sensitive. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
    * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
    * 
* @@ -335,7 +333,9 @@ public interface SearchRequestOrBuilder *
    * The order in which products are returned. Products can be ordered by
    * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-   * unset if ordered by relevance. OrderBy expression is case-sensitive.
+   * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+   * more details at this [user
+   * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
    * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
    * 
* @@ -350,7 +350,9 @@ public interface SearchRequestOrBuilder *
    * The order in which products are returned. Products can be ordered by
    * a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-   * unset if ordered by relevance. OrderBy expression is case-sensitive.
+   * unset if ordered by relevance. OrderBy expression is case-sensitive. See
+   * more details at this [user
+   * guide](https://cloud.google.com/retail/docs/filter-and-order#order).
    * If this field is unrecognizable, an INVALID_ARGUMENT is returned.
    * 
* @@ -470,7 +472,13 @@ public interface SearchRequestOrBuilder * * *
-   * Boost specification to boost certain products.
+   * Boost specification to boost certain products. See more details at this
+   * [user guide](https://cloud.google.com/retail/docs/boosting).
+   * Notice that if both [ServingConfig.boost_control_ids][] and
+   * [SearchRequest.boost_spec] are set, the boost conditions from both places
+   * are evaluated. If a search request matches multiple boost conditions,
+   * the final boost score is equal to the sum of the boost scores from all
+   * matched boost conditions.
    * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -482,7 +490,13 @@ public interface SearchRequestOrBuilder * * *
-   * Boost specification to boost certain products.
+   * Boost specification to boost certain products. See more details at this
+   * [user guide](https://cloud.google.com/retail/docs/boosting).
+   * Notice that if both [ServingConfig.boost_control_ids][] and
+   * [SearchRequest.boost_spec] are set, the boost conditions from both places
+   * are evaluated. If a search request matches multiple boost conditions,
+   * the final boost score is equal to the sum of the boost scores from all
+   * matched boost conditions.
    * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -494,7 +508,13 @@ public interface SearchRequestOrBuilder * * *
-   * Boost specification to boost certain products.
+   * Boost specification to boost certain products. See more details at this
+   * [user guide](https://cloud.google.com/retail/docs/boosting).
+   * Notice that if both [ServingConfig.boost_control_ids][] and
+   * [SearchRequest.boost_spec] are set, the boost conditions from both places
+   * are evaluated. If a search request matches multiple boost conditions,
+   * the final boost score is equal to the sum of the boost scores from all
+   * matched boost conditions.
    * 
* * .google.cloud.retail.v2.SearchRequest.BoostSpec boost_spec = 13; @@ -506,7 +526,8 @@ public interface SearchRequestOrBuilder * *
    * The query expansion specification that specifies the conditions under which
-   * query expansion will occur.
+   * query expansion will occur. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
    * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -520,7 +541,8 @@ public interface SearchRequestOrBuilder * *
    * The query expansion specification that specifies the conditions under which
-   * query expansion will occur.
+   * query expansion will occur. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
    * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -534,7 +556,8 @@ public interface SearchRequestOrBuilder * *
    * The query expansion specification that specifies the conditions under which
-   * query expansion will occur.
+   * query expansion will occur. See more details at this [user
+   * guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
    * 
* * .google.cloud.retail.v2.SearchRequest.QueryExpansionSpec query_expansion_spec = 14; @@ -564,6 +587,7 @@ public interface SearchRequestOrBuilder * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -632,6 +656,7 @@ public interface SearchRequestOrBuilder * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -700,6 +725,7 @@ public interface SearchRequestOrBuilder * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -769,6 +795,7 @@ public interface SearchRequestOrBuilder * * price * * originalPrice * * discount + * * inventory(place_id,price) * * attributes.key, where key is any key in the * [Product.attributes][google.cloud.retail.v2.Product.attributes] map. * * pickupInStore.id, where id is any @@ -904,4 +931,31 @@ public interface SearchRequestOrBuilder * @return The bytes of the pageCategories at the given index. */ com.google.protobuf.ByteString getPageCategoriesBytes(int index); + + /** + * + * + *
+   * The search mode of the search request. If not specified, a single search
+   * request triggers both product search and faceted search.
+   * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @return The enum numeric value on the wire for searchMode. + */ + int getSearchModeValue(); + /** + * + * + *
+   * The search mode of the search request. If not specified, a single search
+   * request triggers both product search and faceted search.
+   * 
+ * + * .google.cloud.retail.v2.SearchRequest.SearchMode search_mode = 31; + * + * @return The searchMode. + */ + com.google.cloud.retail.v2.SearchRequest.SearchMode getSearchMode(); } diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchResponse.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchResponse.java index 7d907da9..867171e0 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchResponse.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchResponse.java @@ -1285,7 +1285,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_); } if (product_ != null) { @@ -1313,7 +1313,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getIdBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_); } if (product_ != null) { @@ -4429,7 +4429,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getKeyBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(key_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, key_); } for (int i = 0; i < values_.size(); i++) { @@ -4447,7 +4447,7 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!getKeyBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(key_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, key_); } for (int i = 0; i < values_.size(); i++) { @@ -5413,7 +5413,8 @@ public interface QueryExpansionInfoOrBuilder * *
      * Number of pinned results. This field will only be set when expansion
-     * happens and [SearchRequest.query_expansion_spec.pin_unexpanded_results][]
+     * happens and
+     * [SearchRequest.QueryExpansionSpec.pin_unexpanded_results][google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.pin_unexpanded_results]
      * is set to true.
      * 
* @@ -5543,7 +5544,8 @@ public boolean getExpandedQuery() { * *
      * Number of pinned results. This field will only be set when expansion
-     * happens and [SearchRequest.query_expansion_spec.pin_unexpanded_results][]
+     * happens and
+     * [SearchRequest.QueryExpansionSpec.pin_unexpanded_results][google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.pin_unexpanded_results]
      * is set to true.
      * 
* @@ -5955,7 +5957,8 @@ public Builder clearExpandedQuery() { * *
        * Number of pinned results. This field will only be set when expansion
-       * happens and [SearchRequest.query_expansion_spec.pin_unexpanded_results][]
+       * happens and
+       * [SearchRequest.QueryExpansionSpec.pin_unexpanded_results][google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.pin_unexpanded_results]
        * is set to true.
        * 
* @@ -5972,7 +5975,8 @@ public long getPinnedResultCount() { * *
        * Number of pinned results. This field will only be set when expansion
-       * happens and [SearchRequest.query_expansion_spec.pin_unexpanded_results][]
+       * happens and
+       * [SearchRequest.QueryExpansionSpec.pin_unexpanded_results][google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.pin_unexpanded_results]
        * is set to true.
        * 
* @@ -5992,7 +5996,8 @@ public Builder setPinnedResultCount(long value) { * *
        * Number of pinned results. This field will only be set when expansion
-       * happens and [SearchRequest.query_expansion_spec.pin_unexpanded_results][]
+       * happens and
+       * [SearchRequest.QueryExpansionSpec.pin_unexpanded_results][google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.pin_unexpanded_results]
        * is set to true.
        * 
* @@ -6512,19 +6517,19 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (totalSize_ != 0) { output.writeInt32(3, totalSize_); } - if (!getCorrectedQueryBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(correctedQuery_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, correctedQuery_); } - if (!getAttributionTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(attributionToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, attributionToken_); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 6, nextPageToken_); } if (queryExpansionInfo_ != null) { output.writeMessage(7, getQueryExpansionInfo()); } - if (!getRedirectUriBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(redirectUri_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 10, redirectUri_); } unknownFields.writeTo(output); @@ -6545,19 +6550,19 @@ public int getSerializedSize() { if (totalSize_ != 0) { size += com.google.protobuf.CodedOutputStream.computeInt32Size(3, totalSize_); } - if (!getCorrectedQueryBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(correctedQuery_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, correctedQuery_); } - if (!getAttributionTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(attributionToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, attributionToken_); } - if (!getNextPageTokenBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nextPageToken_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, nextPageToken_); } if (queryExpansionInfo_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getQueryExpansionInfo()); } - if (!getRedirectUriBytes().isEmpty()) { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(redirectUri_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, redirectUri_); } size += unknownFields.getSerializedSize(); diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchServiceProto.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchServiceProto.java index c850e430..e030ddbe 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchServiceProto.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SearchServiceProto.java @@ -101,7 +101,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "il/v2/product.proto\032 google/protobuf/fie" + "ld_mask.proto\032\034google/protobuf/struct.pr" + "oto\032\037google/protobuf/timestamp.proto\032\036go" - + "ogle/protobuf/wrappers.proto\"\211\014\n\rSearchR" + + "ogle/protobuf/wrappers.proto\"\255\r\n\rSearchR" + "equest\022\026\n\tplacement\030\001 \001(\tB\003\340A\002\0221\n\006branch" + "\030\002 \001(\tB!\372A\036\n\034retail.googleapis.com/Branc" + "h\022\r\n\005query\030\003 \001(\t\022\027\n\nvisitor_id\030\004 \001(\tB\003\340A" @@ -118,70 +118,74 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "y_expansion_spec\030\016 \001(\01328.google.cloud.re" + "tail.v2.SearchRequest.QueryExpansionSpec" + "\022\033\n\023variant_rollup_keys\030\021 \003(\t\022\027\n\017page_ca" - + "tegories\030\027 \003(\t\032\337\002\n\tFacetSpec\022P\n\tfacet_ke" - + "y\030\001 \001(\01328.google.cloud.retail.v2.SearchR" - + "equest.FacetSpec.FacetKeyB\003\340A\002\022\r\n\005limit\030" - + "\002 \001(\005\022\034\n\024excluded_filter_keys\030\003 \003(\t\022\037\n\027e" - + "nable_dynamic_position\030\004 \001(\010\032\261\001\n\010FacetKe" - + "y\022\020\n\003key\030\001 \001(\tB\003\340A\002\0223\n\tintervals\030\002 \003(\0132 " - + ".google.cloud.retail.v2.Interval\022\031\n\021rest" - + "ricted_values\030\003 \003(\t\022\020\n\010prefixes\030\010 \003(\t\022\020\n" - + "\010contains\030\t \003(\t\022\020\n\010order_by\030\004 \001(\t\022\r\n\005que" - + "ry\030\005 \001(\t\032\226\001\n\020DynamicFacetSpec\022I\n\004mode\030\001 " - + "\001(\0162;.google.cloud.retail.v2.SearchReque" - + "st.DynamicFacetSpec.Mode\"7\n\004Mode\022\024\n\020MODE" - + "_UNSPECIFIED\020\000\022\014\n\010DISABLED\020\001\022\013\n\007ENABLED\020" - + "\002\032\246\001\n\tBoostSpec\022a\n\025condition_boost_specs" - + "\030\001 \003(\0132B.google.cloud.retail.v2.SearchRe" - + "quest.BoostSpec.ConditionBoostSpec\0326\n\022Co" - + "nditionBoostSpec\022\021\n\tcondition\030\001 \001(\t\022\r\n\005b" - + "oost\030\002 \001(\002\032\313\001\n\022QueryExpansionSpec\022U\n\tcon" - + "dition\030\001 \001(\0162B.google.cloud.retail.v2.Se" - + "archRequest.QueryExpansionSpec.Condition" - + "\022\036\n\026pin_unexpanded_results\030\002 \001(\010\">\n\tCond" - + "ition\022\031\n\025CONDITION_UNSPECIFIED\020\000\022\014\n\010DISA" - + "BLED\020\001\022\010\n\004AUTO\020\003\"\224\t\n\016SearchResponse\022D\n\007r" - + "esults\030\001 \003(\01323.google.cloud.retail.v2.Se" - + "archResponse.SearchResult\022<\n\006facets\030\002 \003(" - + "\0132,.google.cloud.retail.v2.SearchRespons" - + "e.Facet\022\022\n\ntotal_size\030\003 \001(\005\022\027\n\017corrected" - + "_query\030\004 \001(\t\022\031\n\021attribution_token\030\005 \001(\t\022" - + "\027\n\017next_page_token\030\006 \001(\t\022W\n\024query_expans" - + "ion_info\030\007 \001(\01329.google.cloud.retail.v2." - + "SearchResponse.QueryExpansionInfo\022\024\n\014red" - + "irect_uri\030\n \001(\t\032\370\003\n\014SearchResult\022\n\n\002id\030\001" - + " \001(\t\0220\n\007product\030\002 \001(\0132\037.google.cloud.ret" - + "ail.v2.Product\022\036\n\026matching_variant_count" - + "\030\003 \001(\005\022o\n\027matching_variant_fields\030\004 \003(\0132" - + "N.google.cloud.retail.v2.SearchResponse." - + "SearchResult.MatchingVariantFieldsEntry\022" - + "k\n\025variant_rollup_values\030\005 \003(\0132L.google." - + "cloud.retail.v2.SearchResponse.SearchRes" - + "ult.VariantRollupValuesEntry\032X\n\032Matching" - + "VariantFieldsEntry\022\013\n\003key\030\001 \001(\t\022)\n\005value" - + "\030\002 \001(\0132\032.google.protobuf.FieldMask:\0028\001\032R" - + "\n\030VariantRollupValuesEntry\022\013\n\003key\030\001 \001(\t\022" - + "%\n\005value\030\002 \001(\0132\026.google.protobuf.Value:\002" - + "8\001\032\347\001\n\005Facet\022\013\n\003key\030\001 \001(\t\022G\n\006values\030\002 \003(" - + "\01327.google.cloud.retail.v2.SearchRespons" - + "e.Facet.FacetValue\022\025\n\rdynamic_facet\030\003 \001(" - + "\010\032q\n\nFacetValue\022\017\n\005value\030\001 \001(\tH\000\0224\n\010inte" - + "rval\030\002 \001(\0132 .google.cloud.retail.v2.Inte" - + "rvalH\000\022\r\n\005count\030\003 \001(\003B\r\n\013facet_value\032I\n\022" - + "QueryExpansionInfo\022\026\n\016expanded_query\030\001 \001" - + "(\010\022\033\n\023pinned_result_count\030\002 \001(\0032\206\002\n\rSear" - + "chService\022\251\001\n\006Search\022%.google.cloud.reta" - + "il.v2.SearchRequest\032&.google.cloud.retai" - + "l.v2.SearchResponse\"P\202\323\344\223\002J\"E/v2/{placem" - + "ent=projects/*/locations/*/catalogs/*/pl" - + "acements/*}:search:\001*\032I\312A\025retail.googlea" - + "pis.com\322A.https://www.googleapis.com/aut" - + "h/cloud-platformB\307\001\n\032com.google.cloud.re" - + "tail.v2B\022SearchServiceProtoP\001Z\n\tCondition\022\031\n\025" + + "CONDITION_UNSPECIFIED\020\000\022\014\n\010DISABLED\020\001\022\010\n" + + "\004AUTO\020\003\"[\n\nSearchMode\022\033\n\027SEARCH_MODE_UNS" + + "PECIFIED\020\000\022\027\n\023PRODUCT_SEARCH_ONLY\020\001\022\027\n\023F" + + "ACETED_SEARCH_ONLY\020\002\"\224\t\n\016SearchResponse\022" + + "D\n\007results\030\001 \003(\01323.google.cloud.retail.v" + + "2.SearchResponse.SearchResult\022<\n\006facets\030" + + "\002 \003(\0132,.google.cloud.retail.v2.SearchRes" + + "ponse.Facet\022\022\n\ntotal_size\030\003 \001(\005\022\027\n\017corre" + + "cted_query\030\004 \001(\t\022\031\n\021attribution_token\030\005 " + + "\001(\t\022\027\n\017next_page_token\030\006 \001(\t\022W\n\024query_ex" + + "pansion_info\030\007 \001(\01329.google.cloud.retail" + + ".v2.SearchResponse.QueryExpansionInfo\022\024\n" + + "\014redirect_uri\030\n \001(\t\032\370\003\n\014SearchResult\022\n\n\002" + + "id\030\001 \001(\t\0220\n\007product\030\002 \001(\0132\037.google.cloud" + + ".retail.v2.Product\022\036\n\026matching_variant_c" + + "ount\030\003 \001(\005\022o\n\027matching_variant_fields\030\004 " + + "\003(\0132N.google.cloud.retail.v2.SearchRespo" + + "nse.SearchResult.MatchingVariantFieldsEn" + + "try\022k\n\025variant_rollup_values\030\005 \003(\0132L.goo" + + "gle.cloud.retail.v2.SearchResponse.Searc" + + "hResult.VariantRollupValuesEntry\032X\n\032Matc" + + "hingVariantFieldsEntry\022\013\n\003key\030\001 \001(\t\022)\n\005v" + + "alue\030\002 \001(\0132\032.google.protobuf.FieldMask:\002" + + "8\001\032R\n\030VariantRollupValuesEntry\022\013\n\003key\030\001 " + + "\001(\t\022%\n\005value\030\002 \001(\0132\026.google.protobuf.Val" + + "ue:\0028\001\032\347\001\n\005Facet\022\013\n\003key\030\001 \001(\t\022G\n\006values\030" + + "\002 \003(\01327.google.cloud.retail.v2.SearchRes" + + "ponse.Facet.FacetValue\022\025\n\rdynamic_facet\030" + + "\003 \001(\010\032q\n\nFacetValue\022\017\n\005value\030\001 \001(\tH\000\0224\n\010" + + "interval\030\002 \001(\0132 .google.cloud.retail.v2." + + "IntervalH\000\022\r\n\005count\030\003 \001(\003B\r\n\013facet_value" + + "\032I\n\022QueryExpansionInfo\022\026\n\016expanded_query" + + "\030\001 \001(\010\022\033\n\023pinned_result_count\030\002 \001(\0032\206\002\n\r" + + "SearchService\022\251\001\n\006Search\022%.google.cloud." + + "retail.v2.SearchRequest\032&.google.cloud.r" + + "etail.v2.SearchResponse\"P\202\323\344\223\002J\"E/v2/{pl" + + "acement=projects/*/locations/*/catalogs/" + + "*/placements/*}:search:\001*\032I\312A\025retail.goo" + + "gleapis.com\322A.https://www.googleapis.com" + + "/auth/cloud-platformB\307\001\n\032com.google.clou" + + "d.retail.v2B\022SearchServiceProtoP\001Z * @@ -1695,7 +1695,7 @@ public com.google.protobuf.TimestampOrBuilder getSetTimeOrBuilder() { * [Product.name][google.cloud.retail.v2.Product.name] is not found, the * inventory update will still be processed and retained for at most 1 day * until the [Product][google.cloud.retail.v2.Product] is created. If set to - * false, an INVALID_ARGUMENT error is returned if the + * false, a NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * @@ -1715,7 +1715,7 @@ public boolean getAllowMissing() { * [Product.name][google.cloud.retail.v2.Product.name] is not found, the * inventory update will still be processed and retained for at most 1 day * until the [Product][google.cloud.retail.v2.Product] is created. If set to - * false, an INVALID_ARGUMENT error is returned if the + * false, a NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * @@ -1738,7 +1738,7 @@ public Builder setAllowMissing(boolean value) { * [Product.name][google.cloud.retail.v2.Product.name] is not found, the * inventory update will still be processed and retained for at most 1 day * until the [Product][google.cloud.retail.v2.Product] is created. If set to - * false, an INVALID_ARGUMENT error is returned if the + * false, a NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SetInventoryRequestOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SetInventoryRequestOrBuilder.java index aad5aff4..de733245 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SetInventoryRequestOrBuilder.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/SetInventoryRequestOrBuilder.java @@ -241,7 +241,7 @@ public interface SetInventoryRequestOrBuilder * [Product.name][google.cloud.retail.v2.Product.name] is not found, the * inventory update will still be processed and retained for at most 1 day * until the [Product][google.cloud.retail.v2.Product] is created. If set to - * false, an INVALID_ARGUMENT error is returned if the + * false, a NOT_FOUND error is returned if the * [Product][google.cloud.retail.v2.Product] is not found. * * diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEvent.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEvent.java index 91f05110..a7a0a4de 100644 --- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEvent.java +++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEvent.java @@ -758,12 +758,12 @@ public com.google.protobuf.ByteString getAttributionTokenBytes() { * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -782,12 +782,12 @@ public java.util.List getProductDetail * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -807,12 +807,12 @@ public java.util.List getProductDetail * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -831,12 +831,12 @@ public int getProductDetailsCount() { * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -855,12 +855,12 @@ public com.google.cloud.retail.v2.ProductDetail getProductDetails(int index) { * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -1065,7 +1065,7 @@ public com.google.cloud.retail.v2.CustomAttribute getAttributesOrThrow(java.lang * * *
-   * The id or name of the associated shopping cart. This id is used
+   * The ID or name of the associated shopping cart. This ID is used
    * to associate multiple items added or present in the cart before purchase.
    * This can only be set for `add-to-cart`, `purchase-complete`, or
    * `shopping-cart-page-view` events.
@@ -1091,7 +1091,7 @@ public java.lang.String getCartId() {
    *
    *
    * 
-   * The id or name of the associated shopping cart. This id is used
+   * The ID or name of the associated shopping cart. This ID is used
    * to associate multiple items added or present in the cart before purchase.
    * This can only be set for `add-to-cart`, `purchase-complete`, or
    * `shopping-cart-page-view` events.
@@ -1644,7 +1644,7 @@ public com.google.protobuf.ByteString getReferrerUriBytes() {
    *
    *
    * 
-   * A unique id of a web page view.
+   * A unique ID of a web page view.
    * This should be kept the same for all user events triggered from the same
    * pageview. For example, an item detail page view could trigger multiple
    * events as the user is browsing the page. The `pageViewId` property should
@@ -1674,7 +1674,7 @@ public java.lang.String getPageViewId() {
    *
    *
    * 
-   * A unique id of a web page view.
+   * A unique ID of a web page view.
    * This should be kept the same for all user events triggered from the same
    * pageview. For example, an item detail page view could trigger multiple
    * events as the user is browsing the page. The `pageViewId` property should
@@ -1715,10 +1715,10 @@ public final boolean isInitialized() {
 
   @java.lang.Override
   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
-    if (!getEventTypeBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(eventType_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, eventType_);
     }
-    if (!getVisitorIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(visitorId_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 2, visitorId_);
     }
     if (eventTime_ != null) {
@@ -1727,7 +1727,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
     for (int i = 0; i < experimentIds_.size(); i++) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 4, experimentIds_.getRaw(i));
     }
-    if (!getAttributionTokenBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(attributionToken_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 5, attributionToken_);
     }
     for (int i = 0; i < productDetails_.size(); i++) {
@@ -1735,13 +1735,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
     }
     com.google.protobuf.GeneratedMessageV3.serializeStringMapTo(
         output, internalGetAttributes(), AttributesDefaultEntryHolder.defaultEntry, 7);
-    if (!getCartIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cartId_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 8, cartId_);
     }
     if (purchaseTransaction_ != null) {
       output.writeMessage(9, getPurchaseTransaction());
     }
-    if (!getSearchQueryBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(searchQuery_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 10, searchQuery_);
     }
     for (int i = 0; i < pageCategories_.size(); i++) {
@@ -1750,25 +1750,25 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
     if (userInfo_ != null) {
       output.writeMessage(12, getUserInfo());
     }
-    if (!getUriBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 13, uri_);
     }
-    if (!getReferrerUriBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(referrerUri_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 14, referrerUri_);
     }
-    if (!getPageViewIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageViewId_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 15, pageViewId_);
     }
-    if (!getFilterBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 16, filter_);
     }
-    if (!getOrderByBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(orderBy_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 17, orderBy_);
     }
     if (offset_ != 0) {
       output.writeInt32(18, offset_);
     }
-    if (!getSessionIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 21, sessionId_);
     }
     if (completionDetail_ != null) {
@@ -1783,10 +1783,10 @@ public int getSerializedSize() {
     if (size != -1) return size;
 
     size = 0;
-    if (!getEventTypeBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(eventType_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, eventType_);
     }
-    if (!getVisitorIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(visitorId_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, visitorId_);
     }
     if (eventTime_ != null) {
@@ -1800,7 +1800,7 @@ public int getSerializedSize() {
       size += dataSize;
       size += 1 * getExperimentIdsList().size();
     }
-    if (!getAttributionTokenBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(attributionToken_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, attributionToken_);
     }
     for (int i = 0; i < productDetails_.size(); i++) {
@@ -1817,13 +1817,13 @@ public int getSerializedSize() {
                   .build();
       size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, attributes__);
     }
-    if (!getCartIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cartId_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, cartId_);
     }
     if (purchaseTransaction_ != null) {
       size += com.google.protobuf.CodedOutputStream.computeMessageSize(9, getPurchaseTransaction());
     }
-    if (!getSearchQueryBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(searchQuery_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, searchQuery_);
     }
     {
@@ -1837,25 +1837,25 @@ public int getSerializedSize() {
     if (userInfo_ != null) {
       size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getUserInfo());
     }
-    if (!getUriBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uri_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, uri_);
     }
-    if (!getReferrerUriBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(referrerUri_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, referrerUri_);
     }
-    if (!getPageViewIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pageViewId_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, pageViewId_);
     }
-    if (!getFilterBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filter_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(16, filter_);
     }
-    if (!getOrderByBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(orderBy_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(17, orderBy_);
     }
     if (offset_ != 0) {
       size += com.google.protobuf.CodedOutputStream.computeInt32Size(18, offset_);
     }
-    if (!getSessionIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(21, sessionId_);
     }
     if (completionDetail_ != null) {
@@ -3541,12 +3541,12 @@ private void ensureProductDetailsIsMutable() {
      * * `detail-page-view`
      * * `purchase-complete`
      * In a `search` event, this field represents the products returned to the end
-     * user on the current page (the end user may have not finished broswing the
+     * user on the current page (the end user may have not finished browsing the
      * whole page yet). When a new page is returned to the end user, after
      * pagination/filtering/ordering even for the same query, a new `search` event
      * with different
      * [product_details][google.cloud.retail.v2.UserEvent.product_details] is
-     * desired. The end user may have not finished broswing the whole page yet.
+     * desired. The end user may have not finished browsing the whole page yet.
      * 
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3568,12 +3568,12 @@ public java.util.List getProductDetail * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. *
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3595,12 +3595,12 @@ public int getProductDetailsCount() { * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. *
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3622,12 +3622,12 @@ public com.google.cloud.retail.v2.ProductDetail getProductDetails(int index) { * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. *
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3655,12 +3655,12 @@ public Builder setProductDetails(int index, com.google.cloud.retail.v2.ProductDe * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3686,12 +3686,12 @@ public Builder setProductDetails( * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3719,12 +3719,12 @@ public Builder addProductDetails(com.google.cloud.retail.v2.ProductDetail value) * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3752,12 +3752,12 @@ public Builder addProductDetails(int index, com.google.cloud.retail.v2.ProductDe * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3783,12 +3783,12 @@ public Builder addProductDetails( * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3814,12 +3814,12 @@ public Builder addProductDetails( * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3845,12 +3845,12 @@ public Builder addAllProductDetails( * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3875,12 +3875,12 @@ public Builder clearProductDetails() { * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3905,12 +3905,12 @@ public Builder removeProductDetails(int index) { * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3928,12 +3928,12 @@ public com.google.cloud.retail.v2.ProductDetail.Builder getProductDetailsBuilder * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3955,12 +3955,12 @@ public com.google.cloud.retail.v2.ProductDetailOrBuilder getProductDetailsOrBuil * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -3983,12 +3983,12 @@ public com.google.cloud.retail.v2.ProductDetailOrBuilder getProductDetailsOrBuil * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -4007,12 +4007,12 @@ public com.google.cloud.retail.v2.ProductDetail.Builder addProductDetailsBuilder * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -4031,12 +4031,12 @@ public com.google.cloud.retail.v2.ProductDetail.Builder addProductDetailsBuilder * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. * * * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -4497,7 +4497,7 @@ public Builder putAllAttributes( * * *
-     * The id or name of the associated shopping cart. This id is used
+     * The ID or name of the associated shopping cart. This ID is used
      * to associate multiple items added or present in the cart before purchase.
      * This can only be set for `add-to-cart`, `purchase-complete`, or
      * `shopping-cart-page-view` events.
@@ -4522,7 +4522,7 @@ public java.lang.String getCartId() {
      *
      *
      * 
-     * The id or name of the associated shopping cart. This id is used
+     * The ID or name of the associated shopping cart. This ID is used
      * to associate multiple items added or present in the cart before purchase.
      * This can only be set for `add-to-cart`, `purchase-complete`, or
      * `shopping-cart-page-view` events.
@@ -4547,7 +4547,7 @@ public com.google.protobuf.ByteString getCartIdBytes() {
      *
      *
      * 
-     * The id or name of the associated shopping cart. This id is used
+     * The ID or name of the associated shopping cart. This ID is used
      * to associate multiple items added or present in the cart before purchase.
      * This can only be set for `add-to-cart`, `purchase-complete`, or
      * `shopping-cart-page-view` events.
@@ -4571,7 +4571,7 @@ public Builder setCartId(java.lang.String value) {
      *
      *
      * 
-     * The id or name of the associated shopping cart. This id is used
+     * The ID or name of the associated shopping cart. This ID is used
      * to associate multiple items added or present in the cart before purchase.
      * This can only be set for `add-to-cart`, `purchase-complete`, or
      * `shopping-cart-page-view` events.
@@ -4591,7 +4591,7 @@ public Builder clearCartId() {
      *
      *
      * 
-     * The id or name of the associated shopping cart. This id is used
+     * The ID or name of the associated shopping cart. This ID is used
      * to associate multiple items added or present in the cart before purchase.
      * This can only be set for `add-to-cart`, `purchase-complete`, or
      * `shopping-cart-page-view` events.
@@ -6000,7 +6000,7 @@ public Builder setReferrerUriBytes(com.google.protobuf.ByteString value) {
      *
      *
      * 
-     * A unique id of a web page view.
+     * A unique ID of a web page view.
      * This should be kept the same for all user events triggered from the same
      * pageview. For example, an item detail page view could trigger multiple
      * events as the user is browsing the page. The `pageViewId` property should
@@ -6029,7 +6029,7 @@ public java.lang.String getPageViewId() {
      *
      *
      * 
-     * A unique id of a web page view.
+     * A unique ID of a web page view.
      * This should be kept the same for all user events triggered from the same
      * pageview. For example, an item detail page view could trigger multiple
      * events as the user is browsing the page. The `pageViewId` property should
@@ -6058,7 +6058,7 @@ public com.google.protobuf.ByteString getPageViewIdBytes() {
      *
      *
      * 
-     * A unique id of a web page view.
+     * A unique ID of a web page view.
      * This should be kept the same for all user events triggered from the same
      * pageview. For example, an item detail page view could trigger multiple
      * events as the user is browsing the page. The `pageViewId` property should
@@ -6086,7 +6086,7 @@ public Builder setPageViewId(java.lang.String value) {
      *
      *
      * 
-     * A unique id of a web page view.
+     * A unique ID of a web page view.
      * This should be kept the same for all user events triggered from the same
      * pageview. For example, an item detail page view could trigger multiple
      * events as the user is browsing the page. The `pageViewId` property should
@@ -6110,7 +6110,7 @@ public Builder clearPageViewId() {
      *
      *
      * 
-     * A unique id of a web page view.
+     * A unique ID of a web page view.
      * This should be kept the same for all user events triggered from the same
      * pageview. For example, an item detail page view could trigger multiple
      * events as the user is browsing the page. The `pageViewId` property should
diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEventOrBuilder.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEventOrBuilder.java
index 5d267d26..53508c92 100644
--- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEventOrBuilder.java
+++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserEventOrBuilder.java
@@ -329,12 +329,12 @@ public interface UserEventOrBuilder
    * * `detail-page-view`
    * * `purchase-complete`
    * In a `search` event, this field represents the products returned to the end
-   * user on the current page (the end user may have not finished broswing the
+   * user on the current page (the end user may have not finished browsing the
    * whole page yet). When a new page is returned to the end user, after
    * pagination/filtering/ordering even for the same query, a new `search` event
    * with different
    * [product_details][google.cloud.retail.v2.UserEvent.product_details] is
-   * desired. The end user may have not finished broswing the whole page yet.
+   * desired. The end user may have not finished browsing the whole page yet.
    * 
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -350,12 +350,12 @@ public interface UserEventOrBuilder * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. *
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -371,12 +371,12 @@ public interface UserEventOrBuilder * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. *
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -392,12 +392,12 @@ public interface UserEventOrBuilder * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. *
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -414,12 +414,12 @@ public interface UserEventOrBuilder * * `detail-page-view` * * `purchase-complete` * In a `search` event, this field represents the products returned to the end - * user on the current page (the end user may have not finished broswing the + * user on the current page (the end user may have not finished browsing the * whole page yet). When a new page is returned to the end user, after * pagination/filtering/ordering even for the same query, a new `search` event * with different * [product_details][google.cloud.retail.v2.UserEvent.product_details] is - * desired. The end user may have not finished broswing the whole page yet. + * desired. The end user may have not finished browsing the whole page yet. *
* * repeated .google.cloud.retail.v2.ProductDetail product_details = 6; @@ -559,7 +559,7 @@ com.google.cloud.retail.v2.CustomAttribute getAttributesOrDefault( * * *
-   * The id or name of the associated shopping cart. This id is used
+   * The ID or name of the associated shopping cart. This ID is used
    * to associate multiple items added or present in the cart before purchase.
    * This can only be set for `add-to-cart`, `purchase-complete`, or
    * `shopping-cart-page-view` events.
@@ -574,7 +574,7 @@ com.google.cloud.retail.v2.CustomAttribute getAttributesOrDefault(
    *
    *
    * 
-   * The id or name of the associated shopping cart. This id is used
+   * The ID or name of the associated shopping cart. This ID is used
    * to associate multiple items added or present in the cart before purchase.
    * This can only be set for `add-to-cart`, `purchase-complete`, or
    * `shopping-cart-page-view` events.
@@ -955,7 +955,7 @@ com.google.cloud.retail.v2.CustomAttribute getAttributesOrDefault(
    *
    *
    * 
-   * A unique id of a web page view.
+   * A unique ID of a web page view.
    * This should be kept the same for all user events triggered from the same
    * pageview. For example, an item detail page view could trigger multiple
    * events as the user is browsing the page. The `pageViewId` property should
@@ -974,7 +974,7 @@ com.google.cloud.retail.v2.CustomAttribute getAttributesOrDefault(
    *
    *
    * 
-   * A unique id of a web page view.
+   * A unique ID of a web page view.
    * This should be kept the same for all user events triggered from the same
    * pageview. For example, an item detail page view could trigger multiple
    * events as the user is browsing the page. The `pageViewId` property should
diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserInfo.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserInfo.java
index 36b3fde0..d72052f0 100644
--- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserInfo.java
+++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/UserInfo.java
@@ -362,13 +362,13 @@ public final boolean isInitialized() {
 
   @java.lang.Override
   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
-    if (!getUserIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(userId_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, userId_);
     }
-    if (!getIpAddressBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ipAddress_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ipAddress_);
     }
-    if (!getUserAgentBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(userAgent_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 3, userAgent_);
     }
     if (directUserRequest_ != false) {
@@ -383,13 +383,13 @@ public int getSerializedSize() {
     if (size != -1) return size;
 
     size = 0;
-    if (!getUserIdBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(userId_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, userId_);
     }
-    if (!getIpAddressBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ipAddress_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ipAddress_);
     }
-    if (!getUserAgentBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(userAgent_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, userAgent_);
     }
     if (directUserRequest_ != false) {
diff --git a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/WriteUserEventRequest.java b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/WriteUserEventRequest.java
index 4fbb4227..cfc7d918 100644
--- a/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/WriteUserEventRequest.java
+++ b/proto-google-cloud-retail-v2/src/main/java/com/google/cloud/retail/v2/WriteUserEventRequest.java
@@ -246,7 +246,7 @@ public final boolean isInitialized() {
 
   @java.lang.Override
   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
-    if (!getParentBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) {
       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, parent_);
     }
     if (userEvent_ != null) {
@@ -261,7 +261,7 @@ public int getSerializedSize() {
     if (size != -1) return size;
 
     size = 0;
-    if (!getParentBytes().isEmpty()) {
+    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parent_)) {
       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, parent_);
     }
     if (userEvent_ != null) {
diff --git a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/common.proto b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/common.proto
index afbdcd05..157d22aa 100644
--- a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/common.proto
+++ b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/common.proto
@@ -84,7 +84,7 @@ message ColorInfo {
   // it is expected to have only 1 color. May consider using single "Mixed"
   // instead of multiple values.
   //
-  // A maximum of 5 colors are allowed. Each value must be a UTF-8 encoded
+  // A maximum of 25 colors are allowed. Each value must be a UTF-8 encoded
   // string with a length limit of 128 characters. Otherwise, an
   // INVALID_ARGUMENT error is returned.
   //
@@ -172,8 +172,8 @@ message FulfillmentInfo {
   // or the region IDs for
   // [FulfillmentInfo.type.same-day-delivery][google.cloud.retail.v2.FulfillmentInfo.type].
   //
-  // A maximum of 2000 values are allowed. Each value must be a string with a
-  // length limit of 10 characters, matching the pattern [a-zA-Z0-9_-]+, such as
+  // A maximum of 3000 values are allowed. Each value must be a string with a
+  // length limit of 30 characters, matching the pattern [a-zA-Z0-9_-]+, such as
   // "store1" or "REGION-2". Otherwise, an INVALID_ARGUMENT error is returned.
   repeated string place_ids = 2;
 }
diff --git a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/product.proto b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/product.proto
index 2c411078..545cc99c 100644
--- a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/product.proto
+++ b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/product.proto
@@ -115,18 +115,23 @@ message Product {
     // and
     // [ProductService.ListProducts][google.cloud.retail.v2.ProductService.ListProducts].
     //
+    // [expire_time][google.cloud.retail.v2.Product.expire_time] must be later
+    // than [available_time][google.cloud.retail.v2.Product.available_time] and
+    // [publish_time][google.cloud.retail.v2.Product.publish_time], otherwise an
+    // INVALID_ARGUMENT error is thrown.
+    //
     // Google Merchant Center property
     // [expiration_date](https://support.google.com/merchants/answer/6324499).
     google.protobuf.Timestamp expire_time = 16;
 
     // Input only. The TTL (time to live) of the product.
     //
-    // If it is set, [expire_time][google.cloud.retail.v2.Product.expire_time]
-    // is set as current timestamp plus
-    // [ttl][google.cloud.retail.v2.Product.ttl]. The derived
-    // [expire_time][google.cloud.retail.v2.Product.expire_time] is returned in
-    // the output and [ttl][google.cloud.retail.v2.Product.ttl] is left blank
-    // when retrieving the [Product][google.cloud.retail.v2.Product].
+    // If it is set, it must be a non-negative value, and
+    // [expire_time][google.cloud.retail.v2.Product.expire_time] is set as
+    // current timestamp plus [ttl][google.cloud.retail.v2.Product.ttl]. The
+    // derived [expire_time][google.cloud.retail.v2.Product.expire_time] is
+    // returned in the output and [ttl][google.cloud.retail.v2.Product.ttl] is
+    // left blank when retrieving the [Product][google.cloud.retail.v2.Product].
     //
     // If it is set, the product is not available for
     // [SearchService.Search][google.cloud.retail.v2.SearchService.Search] after
@@ -141,8 +146,6 @@ message Product {
 
   // Immutable. Full resource name of the product, such as
   // `projects/*/locations/global/catalogs/default_catalog/branches/default_branch/products/product_id`.
-  //
-  // The branch ID must be "default_branch".
   string name = 1 [(google.api.field_behavior) = IMMUTABLE];
 
   // Immutable. [Product][google.cloud.retail.v2.Product] identifier, which is
diff --git a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/product_service.proto b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/product_service.proto
index 3c381eb3..03c5a752 100644
--- a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/product_service.proto
+++ b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/product_service.proto
@@ -20,6 +20,7 @@ import "google/api/annotations.proto";
 import "google/api/client.proto";
 import "google/api/field_behavior.proto";
 import "google/api/resource.proto";
+import "google/cloud/retail/v2/common.proto";
 import "google/cloud/retail/v2/import_config.proto";
 import "google/cloud/retail/v2/product.proto";
 import "google/cloud/retail/v2/purge_config.proto";
@@ -476,7 +477,7 @@ message SetInventoryRequest {
   // [Product.name][google.cloud.retail.v2.Product.name] is not found, the
   // inventory update will still be processed and retained for at most 1 day
   // until the [Product][google.cloud.retail.v2.Product] is created. If set to
-  // false, an INVALID_ARGUMENT error is returned if the
+  // false, a NOT_FOUND error is returned if the
   // [Product][google.cloud.retail.v2.Product] is not found.
   bool allow_missing = 4;
 }
@@ -551,8 +552,8 @@ message AddFulfillmentPlacesRequest {
   // If set to true, and the [Product][google.cloud.retail.v2.Product] is not
   // found, the fulfillment information will still be processed and retained for
   // at most 1 day and processed once the
-  // [Product][google.cloud.retail.v2.Product] is created. If set to false, an
-  // INVALID_ARGUMENT error is returned if the
+  // [Product][google.cloud.retail.v2.Product] is created. If set to false, a
+  // NOT_FOUND error is returned if the
   // [Product][google.cloud.retail.v2.Product] is not found.
   bool allow_missing = 5;
 }
@@ -562,7 +563,7 @@ message AddFulfillmentPlacesRequest {
 // [AddFulfillmentPlaces][] method.
 message AddFulfillmentPlacesMetadata {}
 
-// Response of the RemoveFulfillmentPlacesRequest.  Currently empty because
+// Response of the AddFulfillmentPlacesRequest.  Currently empty because
 // there is no meaningful response populated from the [AddFulfillmentPlaces][]
 // method.
 message AddFulfillmentPlacesResponse {}
@@ -622,8 +623,8 @@ message RemoveFulfillmentPlacesRequest {
   // If set to true, and the [Product][google.cloud.retail.v2.Product] is not
   // found, the fulfillment information will still be processed and retained for
   // at most 1 day and processed once the
-  // [Product][google.cloud.retail.v2.Product] is created. If set to false, an
-  // INVALID_ARGUMENT error is returned if the
+  // [Product][google.cloud.retail.v2.Product] is created. If set to false, a
+  // NOT_FOUND error is returned if the
   // [Product][google.cloud.retail.v2.Product] is not found.
   bool allow_missing = 5;
 }
diff --git a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/search_service.proto b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/search_service.proto
index 38ccb464..bf32f607 100644
--- a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/search_service.proto
+++ b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/search_service.proto
@@ -103,6 +103,7 @@ message SearchRequest {
       //     * "rating"
       //     * "ratingCount"
       //     * "attributes.key"
+      //     * "inventory(place_id,price)"
       string key = 1 [(google.api.field_behavior) = REQUIRED];
 
       // Set only if values should be bucketized into intervals. Must be set
@@ -349,14 +350,39 @@ message SearchRequest {
     bool pin_unexpanded_results = 2;
   }
 
+  // The search mode of each search request.
+  enum SearchMode {
+    // Default value. In this case both product search and faceted search will
+    // be performed. Both [SearchResponse.SearchResult] and
+    // [SearchResponse.Facet] will be returned.
+    SEARCH_MODE_UNSPECIFIED = 0;
+
+    // Only product search will be performed. The faceted search will be
+    // disabled.
+    //
+    // Only [SearchResponse.SearchResult] will be returned.
+    // [SearchResponse.Facet] will not be returned, even if
+    // [SearchRequest.facet_specs][google.cloud.retail.v2.SearchRequest.facet_specs]
+    // or
+    // [SearchRequest.dynamic_facet_spec][google.cloud.retail.v2.SearchRequest.dynamic_facet_spec]
+    // is set.
+    PRODUCT_SEARCH_ONLY = 1;
+
+    // Only faceted search will be performed. The product search will be
+    // disabled.
+    //
+    // When in this mode, one or both of [SearchRequest.facet_spec][] and
+    // [SearchRequest.dynamic_facet_spec][google.cloud.retail.v2.SearchRequest.dynamic_facet_spec]
+    // should be set. Otherwise, an INVALID_ARGUMENT error is returned. Only
+    // [SearchResponse.Facet] will be returned. [SearchResponse.SearchResult]
+    // will not be returned.
+    FACETED_SEARCH_ONLY = 2;
+  }
+
   // Required. The resource name of the search engine placement, such as
   // `projects/*/locations/global/catalogs/default_catalog/placements/default_search`.
-  // This field is used to identify the set of models that will be used to make
-  // the search.
-  //
-  // We currently support one placement with the following ID:
-  //
-  // * `default_search`.
+  // This field is used to identify the serving configuration name and the set
+  // of models that will be used to make the search.
   string placement = 1 [(google.api.field_behavior) = REQUIRED];
 
   // The branch resource name, such as
@@ -413,7 +439,8 @@ message SearchRequest {
 
   // The filter syntax consists of an expression language for constructing a
   // predicate from one or more fields of the products being filtered. Filter
-  // expression is case-sensitive.
+  // expression is case-sensitive. See more details at this [user
+  // guide](https://cloud.google.com/retail/docs/filter-and-order#filter).
   //
   // If this field is unrecognizable, an INVALID_ARGUMENT is returned.
   string filter = 10;
@@ -431,7 +458,9 @@ message SearchRequest {
 
   // The order in which products are returned. Products can be ordered by
   // a field in an [Product][google.cloud.retail.v2.Product] object. Leave it
-  // unset if ordered by relevance. OrderBy expression is case-sensitive.
+  // unset if ordered by relevance. OrderBy expression is case-sensitive. See
+  // more details at this [user
+  // guide](https://cloud.google.com/retail/docs/filter-and-order#order).
   //
   // If this field is unrecognizable, an INVALID_ARGUMENT is returned.
   string order_by = 11;
@@ -449,11 +478,19 @@ message SearchRequest {
   // support team if you are interested in using dynamic facet feature.
   DynamicFacetSpec dynamic_facet_spec = 21;
 
-  // Boost specification to boost certain products.
+  // Boost specification to boost certain products. See more details at this
+  // [user guide](https://cloud.google.com/retail/docs/boosting).
+  //
+  // Notice that if both [ServingConfig.boost_control_ids][] and
+  // [SearchRequest.boost_spec] are set, the boost conditions from both places
+  // are evaluated. If a search request matches multiple boost conditions,
+  // the final boost score is equal to the sum of the boost scores from all
+  // matched boost conditions.
   BoostSpec boost_spec = 13;
 
   // The query expansion specification that specifies the conditions under which
-  // query expansion will occur.
+  // query expansion will occur. See more details at this [user
+  // guide](https://cloud.google.com/retail/docs/result-size#query_expansion).
   QueryExpansionSpec query_expansion_spec = 14;
 
   // The keys to fetch and rollup the matching
@@ -476,6 +513,7 @@ message SearchRequest {
   // * price
   // * originalPrice
   // * discount
+  // * inventory(place_id,price)
   // * attributes.key, where key is any key in the
   //   [Product.attributes][google.cloud.retail.v2.Product.attributes] map.
   // * pickupInStore.id, where id is any
@@ -532,6 +570,10 @@ message SearchRequest {
   // instance, a special sale page may have the category hierarchy:
   // "pageCategories" : ["Sales > 2017 Black Friday Deals"].
   repeated string page_categories = 23;
+
+  // The search mode of the search request. If not specified, a single search
+  // request triggers both product search and faceted search.
+  SearchMode search_mode = 31;
 }
 
 // Response message for
@@ -646,7 +688,8 @@ message SearchResponse {
     bool expanded_query = 1;
 
     // Number of pinned results. This field will only be set when expansion
-    // happens and [SearchRequest.query_expansion_spec.pin_unexpanded_results][]
+    // happens and
+    // [SearchRequest.QueryExpansionSpec.pin_unexpanded_results][google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.pin_unexpanded_results]
     // is set to true.
     int64 pinned_result_count = 2;
   }
diff --git a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/user_event.proto b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/user_event.proto
index e4bb810b..a1f7f217 100644
--- a/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/user_event.proto
+++ b/proto-google-cloud-retail-v2/src/main/proto/google/cloud/retail/v2/user_event.proto
@@ -120,12 +120,12 @@ message UserEvent {
   // * `purchase-complete`
   //
   // In a `search` event, this field represents the products returned to the end
-  // user on the current page (the end user may have not finished broswing the
+  // user on the current page (the end user may have not finished browsing the
   // whole page yet). When a new page is returned to the end user, after
   // pagination/filtering/ordering even for the same query, a new `search` event
   // with different
   // [product_details][google.cloud.retail.v2.UserEvent.product_details] is
-  // desired. The end user may have not finished broswing the whole page yet.
+  // desired. The end user may have not finished browsing the whole page yet.
   repeated ProductDetail product_details = 6;
 
   // The main completion details related to the event.
@@ -146,7 +146,7 @@ message UserEvent {
   // search, and etc.
   map attributes = 7;
 
-  // The id or name of the associated shopping cart. This id is used
+  // The ID or name of the associated shopping cart. This ID is used
   // to associate multiple items added or present in the cart before purchase.
   //
   // This can only be set for `add-to-cart`, `purchase-complete`, or
@@ -241,7 +241,7 @@ message UserEvent {
   // Tag Manager, this value is filled in automatically.
   string referrer_uri = 14;
 
-  // A unique id of a web page view.
+  // A unique ID of a web page view.
   //
   // This should be kept the same for all user events triggered from the same
   // pageview. For example, an item detail page view could trigger multiple