AppSearchSchema.StringPropertyConfig.Builder


class AppSearchSchema.StringPropertyConfig.Builder


Builder for StringPropertyConfig.

Summary

Public constructors

Builder(propertyName: String)

Creates a new StringPropertyConfig.Builder.

Public functions

AppSearchSchema.StringPropertyConfig

Constructs a new StringPropertyConfig from the contents of this builder.

AppSearchSchema.StringPropertyConfig.Builder
setCardinality(cardinality: Int)

Sets the cardinality of the property (whether it is optional, required or repeated).

AppSearchSchema.StringPropertyConfig.Builder
@RequiresFeature(enforcement = "androidx.appsearch.app.Features#isFeatureSupported", name = Features .SCHEMA_STRING_PROPERTY_CONFIG_DELETE_PROPAGATION_TYPE_PROPAGATE_FROM)
@ExperimentalAppSearchApi
setDeletePropagationType(deletePropagationType: Int)

Configures how the deletion will be propagated between this document and the referenced document whose qualified id is held by this property.

AppSearchSchema.StringPropertyConfig.Builder
@RequiresFeature(enforcement = "androidx.appsearch.app.Features#isFeatureSupported", name = Features.SCHEMA_SET_DESCRIPTION)
@ExperimentalAppSearchApi
setDescription(description: String)

Sets a natural language description of this property.

AppSearchSchema.StringPropertyConfig.Builder
setIndexingType(indexingType: Int)

Configures how a property should be indexed so that it can be retrieved by queries.

AppSearchSchema.StringPropertyConfig.Builder
setJoinableValueType(joinableValueType: Int)

Configures how this property should be used as a joining matcher.

AppSearchSchema.StringPropertyConfig.Builder
setTokenizerType(tokenizerType: Int)

Configures how this property should be tokenized (split into words).

Public constructors

Builder

Added in 1.1.0-alpha07
Builder(propertyName: String)

Creates a new StringPropertyConfig.Builder.

Public functions

build

Added in 1.1.0-alpha07
fun build(): AppSearchSchema.StringPropertyConfig

Constructs a new StringPropertyConfig from the contents of this builder.

Throws
java.lang.IllegalStateException

if any following condition:

setCardinality

Added in 1.1.0-alpha07
fun setCardinality(cardinality: Int): AppSearchSchema.StringPropertyConfig.Builder

Sets the cardinality of the property (whether it is optional, required or repeated).

If this method is not called, the default cardinality is CARDINALITY_OPTIONAL.

setDeletePropagationType

Added in 1.1.0-alpha07
@RequiresFeature(enforcement = "androidx.appsearch.app.Features#isFeatureSupported", name = Features
                            .SCHEMA_STRING_PROPERTY_CONFIG_DELETE_PROPAGATION_TYPE_PROPAGATE_FROM)
@ExperimentalAppSearchApi
fun setDeletePropagationType(deletePropagationType: Int): AppSearchSchema.StringPropertyConfig.Builder

Configures how the deletion will be propagated between this document and the referenced document whose qualified id is held by this property.

If this method is not called, the default delete propagation type is DELETE_PROPAGATION_TYPE_NONE, indicating that deletion will not propagate between this document and the referenced document.

If the delete propagation type is not DELETE_PROPAGATION_TYPE_NONE, then JOINABLE_VALUE_TYPE_QUALIFIED_ID must also be set since the delete propagation has to use the qualified id. Otherwise, throw IllegalStateException when building.

setDescription

Added in 1.1.0-alpha07
@RequiresFeature(enforcement = "androidx.appsearch.app.Features#isFeatureSupported", name = Features.SCHEMA_SET_DESCRIPTION)
@ExperimentalAppSearchApi
fun setDescription(description: String): AppSearchSchema.StringPropertyConfig.Builder

Sets a natural language description of this property.

For more details about the description field, see getDescription.

setIndexingType

Added in 1.1.0-alpha07
fun setIndexingType(indexingType: Int): AppSearchSchema.StringPropertyConfig.Builder

Configures how a property should be indexed so that it can be retrieved by queries.

If this method is not called, the default indexing type is INDEXING_TYPE_NONE, so that it cannot be matched by queries.

setJoinableValueType

Added in 1.1.0-alpha07
fun setJoinableValueType(joinableValueType: Int): AppSearchSchema.StringPropertyConfig.Builder

Configures how this property should be used as a joining matcher.

If this method is not called, the default joinable value type is JOINABLE_VALUE_TYPE_NONE, so that it is not joinable.

At most, 64 properties can be set as joinable per schema.

setTokenizerType

Added in 1.1.0-alpha07
fun setTokenizerType(tokenizerType: Int): AppSearchSchema.StringPropertyConfig.Builder

Configures how this property should be tokenized (split into words).

If this method is not called, the default indexing type is TOKENIZER_TYPE_NONE, so that it is not tokenized.

This method must be called with a value other than TOKENIZER_TYPE_NONE if the property is indexed (that is, if setIndexingType has been called with a value other than INDEXING_TYPE_NONE).