All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.api.services.retail.v2.model.GoogleCloudRetailV2SearchResponseSearchResult Maven / Gradle / Ivy

There is a newer version: v2-rev20241220-2.0.0
Show newest version
/*
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 * in compliance with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License
 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 * or implied. See the License for the specific language governing permissions and limitations under
 * the License.
 */
/*
 * This code was generated by https://github.com/googleapis/google-api-java-client-services/
 * Modify at your own risk.
 */

package com.google.api.services.retail.v2.model;

/**
 * Represents the search results.
 *
 * 

This is the Java data model class that specifies how to parse/serialize into the JSON that is * transmitted over HTTP when working with the Retail API. For a detailed explanation see: * https://developers.google.com/api-client-library/java/google-http-java-client/json *

* * @author Google, Inc. */ @SuppressWarnings("javadoc") public final class GoogleCloudRetailV2SearchResponseSearchResult extends com.google.api.client.json.GenericJson { /** * Product.id of the searched Product. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String id; /** * The count of matched variant Products. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Integer matchingVariantCount; /** * If a variant Product matches the search query, this map indicates which Product fields are * matched. The key is the Product.name, the value is a field mask of the matched Product fields. * If matched attributes cannot be determined, this map will be empty. For example, a key "sku1" * with field mask "products.color_info" indicates there is a match between "sku1" ColorInfo and * the query. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.Map matchingVariantFields; /** * The product data snippet in the search response. Only Product.name is guaranteed to be * populated. Product.variants contains the product variants that match the search query. If there * are multiple product variants matching the query, top 5 most relevant product variants are * returned and ordered by relevancy. If relevancy can be deternmined, use matching_variant_fields * to look up matched product variants fields. If relevancy cannot be determined, e.g. when * searching "shoe" all products in a shoe product can be a match, 5 product variants are returned * but order is meaningless. * The value may be {@code null}. */ @com.google.api.client.util.Key private GoogleCloudRetailV2Product product; /** * The rollup matching variant Product attributes. The key is one of the * SearchRequest.variant_rollup_keys. The values are the merged and de-duplicated Product * attributes. Notice that the rollup values are respect filter. For example, when filtering by * "colorFamilies:ANY(\"red\")" and rollup "colorFamilies", only "red" is returned. For textual * and numerical attributes, the rollup values is a list of string or double values with type * google.protobuf.ListValue. For example, if there are two variants with colors "red" and "blue", * the rollup values are { key: "colorFamilies" value { list_value { values { string_value: "red" * } values { string_value: "blue" } } } } For FulfillmentInfo, the rollup values is a double * value with type google.protobuf.Value. For example, `{key: "pickupInStore.store1" value { * number_value: 10 }}` means a there are 10 variants in this product are available in the store * "store1". * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.Map variantRollupValues; /** * Product.id of the searched Product. * @return value or {@code null} for none */ public java.lang.String getId() { return id; } /** * Product.id of the searched Product. * @param id id or {@code null} for none */ public GoogleCloudRetailV2SearchResponseSearchResult setId(java.lang.String id) { this.id = id; return this; } /** * The count of matched variant Products. * @return value or {@code null} for none */ public java.lang.Integer getMatchingVariantCount() { return matchingVariantCount; } /** * The count of matched variant Products. * @param matchingVariantCount matchingVariantCount or {@code null} for none */ public GoogleCloudRetailV2SearchResponseSearchResult setMatchingVariantCount(java.lang.Integer matchingVariantCount) { this.matchingVariantCount = matchingVariantCount; return this; } /** * If a variant Product matches the search query, this map indicates which Product fields are * matched. The key is the Product.name, the value is a field mask of the matched Product fields. * If matched attributes cannot be determined, this map will be empty. For example, a key "sku1" * with field mask "products.color_info" indicates there is a match between "sku1" ColorInfo and * the query. * @return value or {@code null} for none */ public java.util.Map getMatchingVariantFields() { return matchingVariantFields; } /** * If a variant Product matches the search query, this map indicates which Product fields are * matched. The key is the Product.name, the value is a field mask of the matched Product fields. * If matched attributes cannot be determined, this map will be empty. For example, a key "sku1" * with field mask "products.color_info" indicates there is a match between "sku1" ColorInfo and * the query. * @param matchingVariantFields matchingVariantFields or {@code null} for none */ public GoogleCloudRetailV2SearchResponseSearchResult setMatchingVariantFields(java.util.Map matchingVariantFields) { this.matchingVariantFields = matchingVariantFields; return this; } /** * The product data snippet in the search response. Only Product.name is guaranteed to be * populated. Product.variants contains the product variants that match the search query. If there * are multiple product variants matching the query, top 5 most relevant product variants are * returned and ordered by relevancy. If relevancy can be deternmined, use matching_variant_fields * to look up matched product variants fields. If relevancy cannot be determined, e.g. when * searching "shoe" all products in a shoe product can be a match, 5 product variants are returned * but order is meaningless. * @return value or {@code null} for none */ public GoogleCloudRetailV2Product getProduct() { return product; } /** * The product data snippet in the search response. Only Product.name is guaranteed to be * populated. Product.variants contains the product variants that match the search query. If there * are multiple product variants matching the query, top 5 most relevant product variants are * returned and ordered by relevancy. If relevancy can be deternmined, use matching_variant_fields * to look up matched product variants fields. If relevancy cannot be determined, e.g. when * searching "shoe" all products in a shoe product can be a match, 5 product variants are returned * but order is meaningless. * @param product product or {@code null} for none */ public GoogleCloudRetailV2SearchResponseSearchResult setProduct(GoogleCloudRetailV2Product product) { this.product = product; return this; } /** * The rollup matching variant Product attributes. The key is one of the * SearchRequest.variant_rollup_keys. The values are the merged and de-duplicated Product * attributes. Notice that the rollup values are respect filter. For example, when filtering by * "colorFamilies:ANY(\"red\")" and rollup "colorFamilies", only "red" is returned. For textual * and numerical attributes, the rollup values is a list of string or double values with type * google.protobuf.ListValue. For example, if there are two variants with colors "red" and "blue", * the rollup values are { key: "colorFamilies" value { list_value { values { string_value: "red" * } values { string_value: "blue" } } } } For FulfillmentInfo, the rollup values is a double * value with type google.protobuf.Value. For example, `{key: "pickupInStore.store1" value { * number_value: 10 }}` means a there are 10 variants in this product are available in the store * "store1". * @return value or {@code null} for none */ public java.util.Map getVariantRollupValues() { return variantRollupValues; } /** * The rollup matching variant Product attributes. The key is one of the * SearchRequest.variant_rollup_keys. The values are the merged and de-duplicated Product * attributes. Notice that the rollup values are respect filter. For example, when filtering by * "colorFamilies:ANY(\"red\")" and rollup "colorFamilies", only "red" is returned. For textual * and numerical attributes, the rollup values is a list of string or double values with type * google.protobuf.ListValue. For example, if there are two variants with colors "red" and "blue", * the rollup values are { key: "colorFamilies" value { list_value { values { string_value: "red" * } values { string_value: "blue" } } } } For FulfillmentInfo, the rollup values is a double * value with type google.protobuf.Value. For example, `{key: "pickupInStore.store1" value { * number_value: 10 }}` means a there are 10 variants in this product are available in the store * "store1". * @param variantRollupValues variantRollupValues or {@code null} for none */ public GoogleCloudRetailV2SearchResponseSearchResult setVariantRollupValues(java.util.Map variantRollupValues) { this.variantRollupValues = variantRollupValues; return this; } @Override public GoogleCloudRetailV2SearchResponseSearchResult set(String fieldName, Object value) { return (GoogleCloudRetailV2SearchResponseSearchResult) super.set(fieldName, value); } @Override public GoogleCloudRetailV2SearchResponseSearchResult clone() { return (GoogleCloudRetailV2SearchResponseSearchResult) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy