Class CatalogAttribute

  • All Implemented Interfaces:
    CatalogAttributeOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

    public final class CatalogAttribute
    extends com.google.protobuf.GeneratedMessageV3
    implements CatalogAttributeOrBuilder
     Catalog level attribute config for an attribute. For example, if customers
     want to enable/disable facet for a specific attribute.
     
    Protobuf type google.cloud.retail.v2.CatalogAttribute
    See Also:
    Serialized Form
    • Field Detail

      • INDEXABLE_OPTION_FIELD_NUMBER

        public static final int INDEXABLE_OPTION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • DYNAMIC_FACETABLE_OPTION_FIELD_NUMBER

        public static final int DYNAMIC_FACETABLE_OPTION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • SEARCHABLE_OPTION_FIELD_NUMBER

        public static final int SEARCHABLE_OPTION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • EXACT_SEARCHABLE_OPTION_FIELD_NUMBER

        public static final int EXACT_SEARCHABLE_OPTION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • RETRIEVABLE_OPTION_FIELD_NUMBER

        public static final int RETRIEVABLE_OPTION_FIELD_NUMBER
        See Also:
        Constant Field Values
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • getKey

        public String getKey()
         Required. Attribute name.
         For example: `color`, `brands`, `attributes.custom_attribute`, such as
         `attributes.xyz`.
         To be indexable, the attribute name can contain only alpha-numeric
         characters and underscores. For example, an attribute named
         `attributes.abc_xyz` can be indexed, but an attribute named
         `attributes.abc-xyz` cannot be indexed.
        
         If the attribute key starts with `attributes.`, then the attribute is a
         custom attribute. Attributes such as `brands`, `patterns`, and `title` are
         built-in and called system attributes.
         
        string key = 1 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getKey in interface CatalogAttributeOrBuilder
        Returns:
        The key.
      • getKeyBytes

        public com.google.protobuf.ByteString getKeyBytes()
         Required. Attribute name.
         For example: `color`, `brands`, `attributes.custom_attribute`, such as
         `attributes.xyz`.
         To be indexable, the attribute name can contain only alpha-numeric
         characters and underscores. For example, an attribute named
         `attributes.abc_xyz` can be indexed, but an attribute named
         `attributes.abc-xyz` cannot be indexed.
        
         If the attribute key starts with `attributes.`, then the attribute is a
         custom attribute. Attributes such as `brands`, `patterns`, and `title` are
         built-in and called system attributes.
         
        string key = 1 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getKeyBytes in interface CatalogAttributeOrBuilder
        Returns:
        The bytes for key.
      • getInUse

        public boolean getInUse()
         Output only. Indicates whether this attribute has been used by any
         products. `True` if at least one [Product][google.cloud.retail.v2.Product]
         is using this attribute in
         [Product.attributes][google.cloud.retail.v2.Product.attributes]. Otherwise,
         this field is `False`.
        
         [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute] can be
         pre-loaded by using
         [CatalogService.AddCatalogAttribute][google.cloud.retail.v2.CatalogService.AddCatalogAttribute],
         [CatalogService.ImportCatalogAttributes][], or
         [CatalogService.UpdateAttributesConfig][google.cloud.retail.v2.CatalogService.UpdateAttributesConfig]
         APIs. This field is `False` for pre-loaded
         [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute]s.
        
         Only pre-loaded [catalog
         attributes][google.cloud.retail.v2.CatalogAttribute] that are neither in
         use by products nor predefined can be deleted. [Catalog
         attributes][google.cloud.retail.v2.CatalogAttribute] that are
         either in use by products or are predefined attributes cannot be deleted;
         however, their configuration properties will reset to default values upon
         removal request.
        
         After catalog changes, it takes about 10 minutes for this field to update.
         
        bool in_use = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
        Specified by:
        getInUse in interface CatalogAttributeOrBuilder
        Returns:
        The inUse.
      • getTypeValue

        public int getTypeValue()
         Output only. The type of this attribute. This is derived from the attribute
         in [Product.attributes][google.cloud.retail.v2.Product.attributes].
         
        .google.cloud.retail.v2.CatalogAttribute.AttributeType type = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];
        Specified by:
        getTypeValue in interface CatalogAttributeOrBuilder
        Returns:
        The enum numeric value on the wire for type.
      • getType

        public CatalogAttribute.AttributeType getType()
         Output only. The type of this attribute. This is derived from the attribute
         in [Product.attributes][google.cloud.retail.v2.Product.attributes].
         
        .google.cloud.retail.v2.CatalogAttribute.AttributeType type = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];
        Specified by:
        getType in interface CatalogAttributeOrBuilder
        Returns:
        The type.
      • getIndexableOptionValue

        public int getIndexableOptionValue()
         When
         [AttributesConfig.attribute_config_level][google.cloud.retail.v2.AttributesConfig.attribute_config_level]
         is CATALOG_LEVEL_ATTRIBUTE_CONFIG, if INDEXABLE_ENABLED attribute values
         are indexed so that it can be filtered, faceted, or boosted in
         [SearchService.Search][google.cloud.retail.v2.SearchService.Search].
        
         Must be specified, otherwise throws INVALID_FORMAT error.
         
        .google.cloud.retail.v2.CatalogAttribute.IndexableOption indexable_option = 5;
        Specified by:
        getIndexableOptionValue in interface CatalogAttributeOrBuilder
        Returns:
        The enum numeric value on the wire for indexableOption.
      • getIndexableOption

        public CatalogAttribute.IndexableOption getIndexableOption()
         When
         [AttributesConfig.attribute_config_level][google.cloud.retail.v2.AttributesConfig.attribute_config_level]
         is CATALOG_LEVEL_ATTRIBUTE_CONFIG, if INDEXABLE_ENABLED attribute values
         are indexed so that it can be filtered, faceted, or boosted in
         [SearchService.Search][google.cloud.retail.v2.SearchService.Search].
        
         Must be specified, otherwise throws INVALID_FORMAT error.
         
        .google.cloud.retail.v2.CatalogAttribute.IndexableOption indexable_option = 5;
        Specified by:
        getIndexableOption in interface CatalogAttributeOrBuilder
        Returns:
        The indexableOption.
      • getDynamicFacetableOptionValue

        public int getDynamicFacetableOptionValue()
         If DYNAMIC_FACETABLE_ENABLED, attribute values are available for dynamic
         facet. Could only be DYNAMIC_FACETABLE_DISABLED if
         [CatalogAttribute.indexable_option][google.cloud.retail.v2.CatalogAttribute.indexable_option]
         is INDEXABLE_DISABLED. Otherwise, an INVALID_ARGUMENT error is returned.
        
         Must be specified, otherwise throws INVALID_FORMAT error.
         
        .google.cloud.retail.v2.CatalogAttribute.DynamicFacetableOption dynamic_facetable_option = 6;
        Specified by:
        getDynamicFacetableOptionValue in interface CatalogAttributeOrBuilder
        Returns:
        The enum numeric value on the wire for dynamicFacetableOption.
      • getDynamicFacetableOption

        public CatalogAttribute.DynamicFacetableOption getDynamicFacetableOption()
         If DYNAMIC_FACETABLE_ENABLED, attribute values are available for dynamic
         facet. Could only be DYNAMIC_FACETABLE_DISABLED if
         [CatalogAttribute.indexable_option][google.cloud.retail.v2.CatalogAttribute.indexable_option]
         is INDEXABLE_DISABLED. Otherwise, an INVALID_ARGUMENT error is returned.
        
         Must be specified, otherwise throws INVALID_FORMAT error.
         
        .google.cloud.retail.v2.CatalogAttribute.DynamicFacetableOption dynamic_facetable_option = 6;
        Specified by:
        getDynamicFacetableOption in interface CatalogAttributeOrBuilder
        Returns:
        The dynamicFacetableOption.
      • getSearchableOptionValue

        public int getSearchableOptionValue()
         When
         [AttributesConfig.attribute_config_level][google.cloud.retail.v2.AttributesConfig.attribute_config_level]
         is CATALOG_LEVEL_ATTRIBUTE_CONFIG, if SEARCHABLE_ENABLED, attribute values
         are searchable by text queries in
         [SearchService.Search][google.cloud.retail.v2.SearchService.Search].
        
         If SEARCHABLE_ENABLED but attribute type is numerical, attribute values
         will not be searchable by text queries in
         [SearchService.Search][google.cloud.retail.v2.SearchService.Search], as
         there are no text values associated to numerical attributes.
        
         Must be specified, otherwise throws INVALID_FORMAT error.
         
        .google.cloud.retail.v2.CatalogAttribute.SearchableOption searchable_option = 7;
        Specified by:
        getSearchableOptionValue in interface CatalogAttributeOrBuilder
        Returns:
        The enum numeric value on the wire for searchableOption.
      • getSearchableOption

        public CatalogAttribute.SearchableOption getSearchableOption()
         When
         [AttributesConfig.attribute_config_level][google.cloud.retail.v2.AttributesConfig.attribute_config_level]
         is CATALOG_LEVEL_ATTRIBUTE_CONFIG, if SEARCHABLE_ENABLED, attribute values
         are searchable by text queries in
         [SearchService.Search][google.cloud.retail.v2.SearchService.Search].
        
         If SEARCHABLE_ENABLED but attribute type is numerical, attribute values
         will not be searchable by text queries in
         [SearchService.Search][google.cloud.retail.v2.SearchService.Search], as
         there are no text values associated to numerical attributes.
        
         Must be specified, otherwise throws INVALID_FORMAT error.
         
        .google.cloud.retail.v2.CatalogAttribute.SearchableOption searchable_option = 7;
        Specified by:
        getSearchableOption in interface CatalogAttributeOrBuilder
        Returns:
        The searchableOption.
      • getExactSearchableOptionValue

        public int getExactSearchableOptionValue()
         If EXACT_SEARCHABLE_ENABLED, attribute values will be exact searchable.
         This property only applies to textual custom attributes and requires
         indexable set to enabled to enable exact-searchable. If unset, the server
         behavior defaults to
         [EXACT_SEARCHABLE_DISABLED][google.cloud.retail.v2.CatalogAttribute.ExactSearchableOption.EXACT_SEARCHABLE_DISABLED].
         
        .google.cloud.retail.v2.CatalogAttribute.ExactSearchableOption exact_searchable_option = 11;
        Specified by:
        getExactSearchableOptionValue in interface CatalogAttributeOrBuilder
        Returns:
        The enum numeric value on the wire for exactSearchableOption.
      • getExactSearchableOption

        public CatalogAttribute.ExactSearchableOption getExactSearchableOption()
         If EXACT_SEARCHABLE_ENABLED, attribute values will be exact searchable.
         This property only applies to textual custom attributes and requires
         indexable set to enabled to enable exact-searchable. If unset, the server
         behavior defaults to
         [EXACT_SEARCHABLE_DISABLED][google.cloud.retail.v2.CatalogAttribute.ExactSearchableOption.EXACT_SEARCHABLE_DISABLED].
         
        .google.cloud.retail.v2.CatalogAttribute.ExactSearchableOption exact_searchable_option = 11;
        Specified by:
        getExactSearchableOption in interface CatalogAttributeOrBuilder
        Returns:
        The exactSearchableOption.
      • getRetrievableOptionValue

        public int getRetrievableOptionValue()
         If RETRIEVABLE_ENABLED, attribute values are retrievable in the search
         results. If unset, the server behavior defaults to
         [RETRIEVABLE_DISABLED][google.cloud.retail.v2.CatalogAttribute.RetrievableOption.RETRIEVABLE_DISABLED].
         
        .google.cloud.retail.v2.CatalogAttribute.RetrievableOption retrievable_option = 12;
        Specified by:
        getRetrievableOptionValue in interface CatalogAttributeOrBuilder
        Returns:
        The enum numeric value on the wire for retrievableOption.
      • getRetrievableOption

        public CatalogAttribute.RetrievableOption getRetrievableOption()
         If RETRIEVABLE_ENABLED, attribute values are retrievable in the search
         results. If unset, the server behavior defaults to
         [RETRIEVABLE_DISABLED][google.cloud.retail.v2.CatalogAttribute.RetrievableOption.RETRIEVABLE_DISABLED].
         
        .google.cloud.retail.v2.CatalogAttribute.RetrievableOption retrievable_option = 12;
        Specified by:
        getRetrievableOption in interface CatalogAttributeOrBuilder
        Returns:
        The retrievableOption.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static CatalogAttribute parseFrom​(ByteBuffer data)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static CatalogAttribute parseFrom​(ByteBuffer data,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static CatalogAttribute parseFrom​(com.google.protobuf.ByteString data)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static CatalogAttribute parseFrom​(com.google.protobuf.ByteString data,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static CatalogAttribute parseFrom​(byte[] data)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static CatalogAttribute parseFrom​(byte[] data,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static CatalogAttribute parseFrom​(com.google.protobuf.CodedInputStream input,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws IOException
        Throws:
        IOException
      • newBuilderForType

        public CatalogAttribute.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public CatalogAttribute.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected CatalogAttribute.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getParserForType

        public com.google.protobuf.Parser<CatalogAttribute> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public CatalogAttribute getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder