Class SearchRequest.FacetSpec.FacetKey.Builder

public static final class SearchRequest.FacetSpec.FacetKey.Builder extends GeneratedMessageV3.Builder<SearchRequest.FacetSpec.FacetKey.Builder> implements SearchRequest.FacetSpec.FacetKeyOrBuilder

Specifies how a facet is computed.

Protobuf type google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey

Methods

addAllContains(Iterable<String> values)

public SearchRequest.FacetSpec.FacetKey.Builder addAllContains(Iterable<String> values)

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Parameter
NameDescription
valuesIterable<String>

The contains to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

addAllIntervals(Iterable<? extends Interval> values)

public SearchRequest.FacetSpec.FacetKey.Builder addAllIntervals(Iterable<? extends Interval> values)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameter
NameDescription
valuesIterable<? extends com.google.cloud.retail.v2.Interval>
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

addAllPrefixes(Iterable<String> values)

public SearchRequest.FacetSpec.FacetKey.Builder addAllPrefixes(Iterable<String> values)

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Parameter
NameDescription
valuesIterable<String>

The prefixes to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

addAllRestrictedValues(Iterable<String> values)

public SearchRequest.FacetSpec.FacetKey.Builder addAllRestrictedValues(Iterable<String> values)

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Parameter
NameDescription
valuesIterable<String>

The restrictedValues to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

addContains(String value)

public SearchRequest.FacetSpec.FacetKey.Builder addContains(String value)

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Parameter
NameDescription
valueString

The contains to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

addContainsBytes(ByteString value)

public SearchRequest.FacetSpec.FacetKey.Builder addContainsBytes(ByteString value)

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Parameter
NameDescription
valueByteString

The bytes of the contains to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

addIntervals(Interval value)

public SearchRequest.FacetSpec.FacetKey.Builder addIntervals(Interval value)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameter
NameDescription
valueInterval
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

addIntervals(Interval.Builder builderForValue)

public SearchRequest.FacetSpec.FacetKey.Builder addIntervals(Interval.Builder builderForValue)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameter
NameDescription
builderForValueInterval.Builder
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

addIntervals(int index, Interval value)

public SearchRequest.FacetSpec.FacetKey.Builder addIntervals(int index, Interval value)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameters
NameDescription
indexint
valueInterval
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

addIntervals(int index, Interval.Builder builderForValue)

public SearchRequest.FacetSpec.FacetKey.Builder addIntervals(int index, Interval.Builder builderForValue)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameters
NameDescription
indexint
builderForValueInterval.Builder
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

addIntervalsBuilder()

public Interval.Builder addIntervalsBuilder()

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Returns
TypeDescription
Interval.Builder

addIntervalsBuilder(int index)

public Interval.Builder addIntervalsBuilder(int index)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameter
NameDescription
indexint
Returns
TypeDescription
Interval.Builder

addPrefixes(String value)

public SearchRequest.FacetSpec.FacetKey.Builder addPrefixes(String value)

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Parameter
NameDescription
valueString

The prefixes to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

addPrefixesBytes(ByteString value)

public SearchRequest.FacetSpec.FacetKey.Builder addPrefixesBytes(ByteString value)

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Parameter
NameDescription
valueByteString

The bytes of the prefixes to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public SearchRequest.FacetSpec.FacetKey.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

addRestrictedValues(String value)

public SearchRequest.FacetSpec.FacetKey.Builder addRestrictedValues(String value)

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Parameter
NameDescription
valueString

The restrictedValues to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

addRestrictedValuesBytes(ByteString value)

public SearchRequest.FacetSpec.FacetKey.Builder addRestrictedValuesBytes(ByteString value)

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Parameter
NameDescription
valueByteString

The bytes of the restrictedValues to add.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

build()

public SearchRequest.FacetSpec.FacetKey build()
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey

buildPartial()

public SearchRequest.FacetSpec.FacetKey buildPartial()
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey

clear()

public SearchRequest.FacetSpec.FacetKey.Builder clear()
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

clearContains()

public SearchRequest.FacetSpec.FacetKey.Builder clearContains()

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

clearField(Descriptors.FieldDescriptor field)

public SearchRequest.FacetSpec.FacetKey.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
NameDescription
fieldFieldDescriptor
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

clearIntervals()

public SearchRequest.FacetSpec.FacetKey.Builder clearIntervals()

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

clearKey()

public SearchRequest.FacetSpec.FacetKey.Builder clearKey()

Required. Supported textual and numerical facet keys in Product object, over which the facet values are computed. Facet key is case-sensitive. Allowed facet keys when FacetKey.query is not specified:

  • textual_field =
    • "brands"
    • "categories"
    • "genders"
    • "ageGroups"
    • "availability"
    • "colorFamilies"
    • "colors"
    • "sizes"
    • "materials"
    • "patterns"
    • "conditions"
    • "attributes.key"
    • "pickupInStore"
    • "shipToStore"
    • "sameDayDelivery"
    • "nextDayDelivery"
    • "customFulfillment1"
    • "customFulfillment2"
    • "customFulfillment3"
    • "customFulfillment4"
    • "customFulfillment5"
    • "inventory(place_id,attributes.key)"
  • numerical_field =
    • "price"
    • "discount"
    • "rating"
    • "ratingCount"
    • "attributes.key"
    • "inventory(place_id,price)"
    • "inventory(place_id,attributes.key)"

string key = 1 [(.google.api.field_behavior) = REQUIRED];

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

clearOneof(Descriptors.OneofDescriptor oneof)

public SearchRequest.FacetSpec.FacetKey.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
NameDescription
oneofOneofDescriptor
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

clearOrderBy()

public SearchRequest.FacetSpec.FacetKey.Builder clearOrderBy()

The order in which [Facet.values][] are returned. Allowed values are:

  • "count desc", which means order by [Facet.FacetValue.count][] descending.
  • "value desc", which means order by [Facet.FacetValue.value][] descending. Only applies to textual facets. If not set, textual values are sorted in natural order; numerical intervals are sorted in the order given by FacetSpec.FacetKey.intervals; FulfillmentInfo.place_ids are sorted in the order given by FacetSpec.FacetKey.restricted_values.

string order_by = 4;

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

clearPrefixes()

public SearchRequest.FacetSpec.FacetKey.Builder clearPrefixes()

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

clearQuery()

public SearchRequest.FacetSpec.FacetKey.Builder clearQuery()

The query that is used to compute facet for the given facet key. When provided, it will override the default behavior of facet computation. The query syntax is the same as a filter expression. See SearchRequest.filter for detail syntax and limitations. Notice that there is no limitation on FacetKey.key when query is specified. In the response, [FacetValue.value][] will be always "1" and [FacetValue.count][] will be the number of results that matches the query. For example, you can set a customized facet for "shipToStore", where FacetKey.key is "customizedShipToStore", and FacetKey.query is "availability: ANY(\"IN_STOCK\") AND shipToStore: ANY(\"123\")". Then the facet will count the products that are both in stock and ship to store "123".

string query = 5;

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

clearRestrictedValues()

public SearchRequest.FacetSpec.FacetKey.Builder clearRestrictedValues()

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

clone()

public SearchRequest.FacetSpec.FacetKey.Builder clone()
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

getContains(int index)

public String getContains(int index)

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Parameter
NameDescription
indexint

The index of the element to return.

Returns
TypeDescription
String

The contains at the given index.

getContainsBytes(int index)

public ByteString getContainsBytes(int index)

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Parameter
NameDescription
indexint

The index of the value to return.

Returns
TypeDescription
ByteString

The bytes of the contains at the given index.

getContainsCount()

public int getContainsCount()

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Returns
TypeDescription
int

The count of contains.

getContainsList()

public ProtocolStringList getContainsList()

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Returns
TypeDescription
ProtocolStringList

A list containing the contains.

getDefaultInstanceForType()

public SearchRequest.FacetSpec.FacetKey getDefaultInstanceForType()
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
TypeDescription
Descriptor

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
TypeDescription
Descriptor
Overrides

getIntervals(int index)

public Interval getIntervals(int index)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameter
NameDescription
indexint
Returns
TypeDescription
Interval

getIntervalsBuilder(int index)

public Interval.Builder getIntervalsBuilder(int index)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameter
NameDescription
indexint
Returns
TypeDescription
Interval.Builder

getIntervalsBuilderList()

public List<Interval.Builder> getIntervalsBuilderList()

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Returns
TypeDescription
List<Builder>

getIntervalsCount()

public int getIntervalsCount()

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Returns
TypeDescription
int

getIntervalsList()

public List<Interval> getIntervalsList()

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Returns
TypeDescription
List<Interval>

getIntervalsOrBuilder(int index)

public IntervalOrBuilder getIntervalsOrBuilder(int index)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameter
NameDescription
indexint
Returns
TypeDescription
IntervalOrBuilder

getIntervalsOrBuilderList()

public List<? extends IntervalOrBuilder> getIntervalsOrBuilderList()

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Returns
TypeDescription
List<? extends com.google.cloud.retail.v2.IntervalOrBuilder>

getKey()

public String getKey()

Required. Supported textual and numerical facet keys in Product object, over which the facet values are computed. Facet key is case-sensitive. Allowed facet keys when FacetKey.query is not specified:

  • textual_field =
    • "brands"
    • "categories"
    • "genders"
    • "ageGroups"
    • "availability"
    • "colorFamilies"
    • "colors"
    • "sizes"
    • "materials"
    • "patterns"
    • "conditions"
    • "attributes.key"
    • "pickupInStore"
    • "shipToStore"
    • "sameDayDelivery"
    • "nextDayDelivery"
    • "customFulfillment1"
    • "customFulfillment2"
    • "customFulfillment3"
    • "customFulfillment4"
    • "customFulfillment5"
    • "inventory(place_id,attributes.key)"
  • numerical_field =
    • "price"
    • "discount"
    • "rating"
    • "ratingCount"
    • "attributes.key"
    • "inventory(place_id,price)"
    • "inventory(place_id,attributes.key)"

string key = 1 [(.google.api.field_behavior) = REQUIRED];

Returns
TypeDescription
String

The key.

getKeyBytes()

public ByteString getKeyBytes()

Required. Supported textual and numerical facet keys in Product object, over which the facet values are computed. Facet key is case-sensitive. Allowed facet keys when FacetKey.query is not specified:

  • textual_field =
    • "brands"
    • "categories"
    • "genders"
    • "ageGroups"
    • "availability"
    • "colorFamilies"
    • "colors"
    • "sizes"
    • "materials"
    • "patterns"
    • "conditions"
    • "attributes.key"
    • "pickupInStore"
    • "shipToStore"
    • "sameDayDelivery"
    • "nextDayDelivery"
    • "customFulfillment1"
    • "customFulfillment2"
    • "customFulfillment3"
    • "customFulfillment4"
    • "customFulfillment5"
    • "inventory(place_id,attributes.key)"
  • numerical_field =
    • "price"
    • "discount"
    • "rating"
    • "ratingCount"
    • "attributes.key"
    • "inventory(place_id,price)"
    • "inventory(place_id,attributes.key)"

string key = 1 [(.google.api.field_behavior) = REQUIRED];

Returns
TypeDescription
ByteString

The bytes for key.

getOrderBy()

public String getOrderBy()

The order in which [Facet.values][] are returned. Allowed values are:

  • "count desc", which means order by [Facet.FacetValue.count][] descending.
  • "value desc", which means order by [Facet.FacetValue.value][] descending. Only applies to textual facets. If not set, textual values are sorted in natural order; numerical intervals are sorted in the order given by FacetSpec.FacetKey.intervals; FulfillmentInfo.place_ids are sorted in the order given by FacetSpec.FacetKey.restricted_values.

string order_by = 4;

Returns
TypeDescription
String

The orderBy.

getOrderByBytes()

public ByteString getOrderByBytes()

The order in which [Facet.values][] are returned. Allowed values are:

  • "count desc", which means order by [Facet.FacetValue.count][] descending.
  • "value desc", which means order by [Facet.FacetValue.value][] descending. Only applies to textual facets. If not set, textual values are sorted in natural order; numerical intervals are sorted in the order given by FacetSpec.FacetKey.intervals; FulfillmentInfo.place_ids are sorted in the order given by FacetSpec.FacetKey.restricted_values.

string order_by = 4;

Returns
TypeDescription
ByteString

The bytes for orderBy.

getPrefixes(int index)

public String getPrefixes(int index)

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Parameter
NameDescription
indexint

The index of the element to return.

Returns
TypeDescription
String

The prefixes at the given index.

getPrefixesBytes(int index)

public ByteString getPrefixesBytes(int index)

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Parameter
NameDescription
indexint

The index of the value to return.

Returns
TypeDescription
ByteString

The bytes of the prefixes at the given index.

getPrefixesCount()

public int getPrefixesCount()

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Returns
TypeDescription
int

The count of prefixes.

getPrefixesList()

public ProtocolStringList getPrefixesList()

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Returns
TypeDescription
ProtocolStringList

A list containing the prefixes.

getQuery()

public String getQuery()

The query that is used to compute facet for the given facet key. When provided, it will override the default behavior of facet computation. The query syntax is the same as a filter expression. See SearchRequest.filter for detail syntax and limitations. Notice that there is no limitation on FacetKey.key when query is specified. In the response, [FacetValue.value][] will be always "1" and [FacetValue.count][] will be the number of results that matches the query. For example, you can set a customized facet for "shipToStore", where FacetKey.key is "customizedShipToStore", and FacetKey.query is "availability: ANY(\"IN_STOCK\") AND shipToStore: ANY(\"123\")". Then the facet will count the products that are both in stock and ship to store "123".

string query = 5;

Returns
TypeDescription
String

The query.

getQueryBytes()

public ByteString getQueryBytes()

The query that is used to compute facet for the given facet key. When provided, it will override the default behavior of facet computation. The query syntax is the same as a filter expression. See SearchRequest.filter for detail syntax and limitations. Notice that there is no limitation on FacetKey.key when query is specified. In the response, [FacetValue.value][] will be always "1" and [FacetValue.count][] will be the number of results that matches the query. For example, you can set a customized facet for "shipToStore", where FacetKey.key is "customizedShipToStore", and FacetKey.query is "availability: ANY(\"IN_STOCK\") AND shipToStore: ANY(\"123\")". Then the facet will count the products that are both in stock and ship to store "123".

string query = 5;

Returns
TypeDescription
ByteString

The bytes for query.

getRestrictedValues(int index)

public String getRestrictedValues(int index)

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Parameter
NameDescription
indexint

The index of the element to return.

Returns
TypeDescription
String

The restrictedValues at the given index.

getRestrictedValuesBytes(int index)

public ByteString getRestrictedValuesBytes(int index)

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Parameter
NameDescription
indexint

The index of the value to return.

Returns
TypeDescription
ByteString

The bytes of the restrictedValues at the given index.

getRestrictedValuesCount()

public int getRestrictedValuesCount()

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Returns
TypeDescription
int

The count of restrictedValues.

getRestrictedValuesList()

public ProtocolStringList getRestrictedValuesList()

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Returns
TypeDescription
ProtocolStringList

A list containing the restrictedValues.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

mergeFrom(SearchRequest.FacetSpec.FacetKey other)

public SearchRequest.FacetSpec.FacetKey.Builder mergeFrom(SearchRequest.FacetSpec.FacetKey other)
Parameter
NameDescription
otherSearchRequest.FacetSpec.FacetKey
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public SearchRequest.FacetSpec.FacetKey.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides Exceptions
TypeDescription
IOException

mergeFrom(Message other)

public SearchRequest.FacetSpec.FacetKey.Builder mergeFrom(Message other)
Parameter
NameDescription
otherMessage
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

mergeUnknownFields(UnknownFieldSet unknownFields)

public final SearchRequest.FacetSpec.FacetKey.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

removeIntervals(int index)

public SearchRequest.FacetSpec.FacetKey.Builder removeIntervals(int index)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameter
NameDescription
indexint
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

setContains(int index, String value)

public SearchRequest.FacetSpec.FacetKey.Builder setContains(int index, String value)

Only get facet values that contains the given strings. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "contains" to "Shoe", the "categories" facet will give only "Women > Shoe" and "Men > Shoe". Only supported on textual fields. Maximum is 10.

repeated string contains = 9;

Parameters
NameDescription
indexint

The index to set the value at.

valueString

The contains to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setField(Descriptors.FieldDescriptor field, Object value)

public SearchRequest.FacetSpec.FacetKey.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

setIntervals(int index, Interval value)

public SearchRequest.FacetSpec.FacetKey.Builder setIntervals(int index, Interval value)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameters
NameDescription
indexint
valueInterval
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

setIntervals(int index, Interval.Builder builderForValue)

public SearchRequest.FacetSpec.FacetKey.Builder setIntervals(int index, Interval.Builder builderForValue)

Set only if values should be bucketized into intervals. Must be set for facets with numerical values. Must not be set for facet with text values. Maximum number of intervals is 30.

repeated .google.cloud.retail.v2.Interval intervals = 2;

Parameters
NameDescription
indexint
builderForValueInterval.Builder
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

setKey(String value)

public SearchRequest.FacetSpec.FacetKey.Builder setKey(String value)

Required. Supported textual and numerical facet keys in Product object, over which the facet values are computed. Facet key is case-sensitive. Allowed facet keys when FacetKey.query is not specified:

  • textual_field =
    • "brands"
    • "categories"
    • "genders"
    • "ageGroups"
    • "availability"
    • "colorFamilies"
    • "colors"
    • "sizes"
    • "materials"
    • "patterns"
    • "conditions"
    • "attributes.key"
    • "pickupInStore"
    • "shipToStore"
    • "sameDayDelivery"
    • "nextDayDelivery"
    • "customFulfillment1"
    • "customFulfillment2"
    • "customFulfillment3"
    • "customFulfillment4"
    • "customFulfillment5"
    • "inventory(place_id,attributes.key)"
  • numerical_field =
    • "price"
    • "discount"
    • "rating"
    • "ratingCount"
    • "attributes.key"
    • "inventory(place_id,price)"
    • "inventory(place_id,attributes.key)"

string key = 1 [(.google.api.field_behavior) = REQUIRED];

Parameter
NameDescription
valueString

The key to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setKeyBytes(ByteString value)

public SearchRequest.FacetSpec.FacetKey.Builder setKeyBytes(ByteString value)

Required. Supported textual and numerical facet keys in Product object, over which the facet values are computed. Facet key is case-sensitive. Allowed facet keys when FacetKey.query is not specified:

  • textual_field =
    • "brands"
    • "categories"
    • "genders"
    • "ageGroups"
    • "availability"
    • "colorFamilies"
    • "colors"
    • "sizes"
    • "materials"
    • "patterns"
    • "conditions"
    • "attributes.key"
    • "pickupInStore"
    • "shipToStore"
    • "sameDayDelivery"
    • "nextDayDelivery"
    • "customFulfillment1"
    • "customFulfillment2"
    • "customFulfillment3"
    • "customFulfillment4"
    • "customFulfillment5"
    • "inventory(place_id,attributes.key)"
  • numerical_field =
    • "price"
    • "discount"
    • "rating"
    • "ratingCount"
    • "attributes.key"
    • "inventory(place_id,price)"
    • "inventory(place_id,attributes.key)"

string key = 1 [(.google.api.field_behavior) = REQUIRED];

Parameter
NameDescription
valueByteString

The bytes for key to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setOrderBy(String value)

public SearchRequest.FacetSpec.FacetKey.Builder setOrderBy(String value)

The order in which [Facet.values][] are returned. Allowed values are:

  • "count desc", which means order by [Facet.FacetValue.count][] descending.
  • "value desc", which means order by [Facet.FacetValue.value][] descending. Only applies to textual facets. If not set, textual values are sorted in natural order; numerical intervals are sorted in the order given by FacetSpec.FacetKey.intervals; FulfillmentInfo.place_ids are sorted in the order given by FacetSpec.FacetKey.restricted_values.

string order_by = 4;

Parameter
NameDescription
valueString

The orderBy to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setOrderByBytes(ByteString value)

public SearchRequest.FacetSpec.FacetKey.Builder setOrderByBytes(ByteString value)

The order in which [Facet.values][] are returned. Allowed values are:

  • "count desc", which means order by [Facet.FacetValue.count][] descending.
  • "value desc", which means order by [Facet.FacetValue.value][] descending. Only applies to textual facets. If not set, textual values are sorted in natural order; numerical intervals are sorted in the order given by FacetSpec.FacetKey.intervals; FulfillmentInfo.place_ids are sorted in the order given by FacetSpec.FacetKey.restricted_values.

string order_by = 4;

Parameter
NameDescription
valueByteString

The bytes for orderBy to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setPrefixes(int index, String value)

public SearchRequest.FacetSpec.FacetKey.Builder setPrefixes(int index, String value)

Only get facet values that start with the given string prefix. For example, suppose "categories" has three values "Women > Shoe", "Women > Dress" and "Men > Shoe". If set "prefixes" to "Women", the "categories" facet will give only "Women > Shoe" and "Women > Dress". Only supported on textual fields. Maximum is 10.

repeated string prefixes = 8;

Parameters
NameDescription
indexint

The index to set the value at.

valueString

The prefixes to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setQuery(String value)

public SearchRequest.FacetSpec.FacetKey.Builder setQuery(String value)

The query that is used to compute facet for the given facet key. When provided, it will override the default behavior of facet computation. The query syntax is the same as a filter expression. See SearchRequest.filter for detail syntax and limitations. Notice that there is no limitation on FacetKey.key when query is specified. In the response, [FacetValue.value][] will be always "1" and [FacetValue.count][] will be the number of results that matches the query. For example, you can set a customized facet for "shipToStore", where FacetKey.key is "customizedShipToStore", and FacetKey.query is "availability: ANY(\"IN_STOCK\") AND shipToStore: ANY(\"123\")". Then the facet will count the products that are both in stock and ship to store "123".

string query = 5;

Parameter
NameDescription
valueString

The query to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setQueryBytes(ByteString value)

public SearchRequest.FacetSpec.FacetKey.Builder setQueryBytes(ByteString value)

The query that is used to compute facet for the given facet key. When provided, it will override the default behavior of facet computation. The query syntax is the same as a filter expression. See SearchRequest.filter for detail syntax and limitations. Notice that there is no limitation on FacetKey.key when query is specified. In the response, [FacetValue.value][] will be always "1" and [FacetValue.count][] will be the number of results that matches the query. For example, you can set a customized facet for "shipToStore", where FacetKey.key is "customizedShipToStore", and FacetKey.query is "availability: ANY(\"IN_STOCK\") AND shipToStore: ANY(\"123\")". Then the facet will count the products that are both in stock and ship to store "123".

string query = 5;

Parameter
NameDescription
valueByteString

The bytes for query to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)

public SearchRequest.FacetSpec.FacetKey.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters
NameDescription
fieldFieldDescriptor
indexint
valueObject
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides

setRestrictedValues(int index, String value)

public SearchRequest.FacetSpec.FacetKey.Builder setRestrictedValues(int index, String value)

Only get facet for the given restricted values. For example, when using "pickupInStore" as key and set restricted values to ["store123", "store456"], only facets for "store123" and "store456" are returned. Only supported on textual fields and fulfillments. Maximum is 20. Must be set for the fulfillment facet keys:

  • pickupInStore
  • shipToStore
  • sameDayDelivery
  • nextDayDelivery
  • customFulfillment1
  • customFulfillment2
  • customFulfillment3
  • customFulfillment4
  • customFulfillment5

repeated string restricted_values = 3;

Parameters
NameDescription
indexint

The index to set the value at.

valueString

The restrictedValues to set.

Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder

This builder for chaining.

setUnknownFields(UnknownFieldSet unknownFields)

public final SearchRequest.FacetSpec.FacetKey.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
SearchRequest.FacetSpec.FacetKey.Builder
Overrides