dynamicFacetableOption = $dynamicFacetableOption; } /** * @return self::DYNAMIC_FACETABLE_OPTION_* */ public function getDynamicFacetableOption() { return $this->dynamicFacetableOption; } /** * 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. * * Accepted values: EXACT_SEARCHABLE_OPTION_UNSPECIFIED, * EXACT_SEARCHABLE_ENABLED, EXACT_SEARCHABLE_DISABLED * * @param self::EXACT_SEARCHABLE_OPTION_* $exactSearchableOption */ public function setExactSearchableOption($exactSearchableOption) { $this->exactSearchableOption = $exactSearchableOption; } /** * @return self::EXACT_SEARCHABLE_OPTION_* */ public function getExactSearchableOption() { return $this->exactSearchableOption; } /** * Contains facet options. * * @param GoogleCloudRetailV2CatalogAttributeFacetConfig $facetConfig */ public function setFacetConfig(GoogleCloudRetailV2CatalogAttributeFacetConfig $facetConfig) { $this->facetConfig = $facetConfig; } /** * @return GoogleCloudRetailV2CatalogAttributeFacetConfig */ public function getFacetConfig() { return $this->facetConfig; } /** * Output only. Indicates whether this attribute has been used by any * products. `True` if at least one Product is using this attribute in * Product.attributes. Otherwise, this field is `False`. CatalogAttribute can * be pre-loaded by using CatalogService.AddCatalogAttribute or * CatalogService.UpdateAttributesConfig APIs. This field is `False` for pre- * loaded CatalogAttributes. Only pre-loaded catalog attributes that are * neither in use by products nor predefined can be deleted. Catalog * attributes 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. * * @param bool $inUse */ public function setInUse($inUse) { $this->inUse = $inUse; } /** * @return bool */ public function getInUse() { return $this->inUse; } /** * When 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. Must be specified when * AttributesConfig.attribute_config_level is CATALOG_LEVEL_ATTRIBUTE_CONFIG, * otherwise throws INVALID_FORMAT error. * * Accepted values: INDEXABLE_OPTION_UNSPECIFIED, INDEXABLE_ENABLED, * INDEXABLE_DISABLED * * @param self::INDEXABLE_OPTION_* $indexableOption */ public function setIndexableOption($indexableOption) { $this->indexableOption = $indexableOption; } /** * @return self::INDEXABLE_OPTION_* */ public function getIndexableOption() { return $this->indexableOption; } /** * 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. * * @param string $key */ public function setKey($key) { $this->key = $key; } /** * @return string */ public function getKey() { return $this->key; } /** * If RETRIEVABLE_ENABLED, attribute values are retrievable in the search * results. If unset, the server behavior defaults to RETRIEVABLE_DISABLED. * * Accepted values: RETRIEVABLE_OPTION_UNSPECIFIED, RETRIEVABLE_ENABLED, * RETRIEVABLE_DISABLED * * @param self::RETRIEVABLE_OPTION_* $retrievableOption */ public function setRetrievableOption($retrievableOption) { $this->retrievableOption = $retrievableOption; } /** * @return self::RETRIEVABLE_OPTION_* */ public function getRetrievableOption() { return $this->retrievableOption; } /** * When AttributesConfig.attribute_config_level is * CATALOG_LEVEL_ATTRIBUTE_CONFIG, if SEARCHABLE_ENABLED, attribute values are * searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED * but attribute type is numerical, attribute values will not be searchable by * text queries in SearchService.Search, as there are no text values * associated to numerical attributes. Must be specified, when * AttributesConfig.attribute_config_level is CATALOG_LEVEL_ATTRIBUTE_CONFIG, * otherwise throws INVALID_FORMAT error. * * Accepted values: SEARCHABLE_OPTION_UNSPECIFIED, SEARCHABLE_ENABLED, * SEARCHABLE_DISABLED * * @param self::SEARCHABLE_OPTION_* $searchableOption */ public function setSearchableOption($searchableOption) { $this->searchableOption = $searchableOption; } /** * @return self::SEARCHABLE_OPTION_* */ public function getSearchableOption() { return $this->searchableOption; } /** * Output only. The type of this attribute. This is derived from the attribute * in Product.attributes. * * Accepted values: UNKNOWN, TEXTUAL, NUMERICAL * * @param self::TYPE_* $type */ public function setType($type) { $this->type = $type; } /** * @return self::TYPE_* */ public function getType() { return $this->type; } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(GoogleCloudRetailV2CatalogAttribute::class, 'Google_Service_CloudRetail_GoogleCloudRetailV2CatalogAttribute');