public final class Person.Builder


Builder class for Person.

Summary

Public constructors

Constructor for Builder with all the existing values of an Person.

Builder(@NonNull String namespace, @NonNull String id, @NonNull String name)

Constructor for Person.Builder.

Public methods

@NonNull T

Adds an alias for the item.

@NonNull T

Add a new action to the list of potential actions for this document.

@NonNull Person

Builds the Person.

@NonNull Thing

Builds a Thing object.

@NonNull T

Clears the aliases, if any, for the item.

@NonNull T

Clear all the potential actions for this document.

@NonNull T

Sets a list of AdditionalName for that Person.

@NonNull T

Sets a list of affiliations for this Person.

@NonNull T
setBot(boolean isBot)

Sets whether this Person is a bot.

@NonNull T

Sets a list of ContactPoint for the Person.

@NonNull T
setCreationTimestampMillis(long creationTimestampMillis)

Sets the creation timestamp for the current AppSearch entity, in milliseconds using the currentTimeMillis time base.

@NonNull T

Sets the description for the item.

@NonNull T
setDocumentScore(int documentScore)

Sets the user-provided opaque document score of the current AppSearch document, which can be used for ranking using RANKING_STRATEGY_DOCUMENT_SCORE.

@NonNull T
setDocumentTtlMillis(long documentTtlMillis)

Sets the time-to-live (TTL) for the current AppSearch document as a duration in milliseconds.

@NonNull T
setExternalUri(@NonNull Uri externalUri)

Sets an external Uri for this Person.

@NonNull T

Sets the family name of this Person.

@NonNull T

Sets the given name of this Person.

@NonNull T

Sets the URL for an image of the item.

@NonNull T
setImageUri(@NonNull Uri imageUri)

Sets the Uri of the profile image for the Person.

@NonNull T
setImportant(boolean isImportant)

Sets whether this Person is important.

@NonNull T

Sets the middle name of this Person.

@NonNull T

Sets the name of the item.

@NonNull T

Sets the notes about this Person.

@NonNull T

Sets a list of relations for this Person, like "Father" or "Mother".

@NonNull T

Sets the deeplink URL of the item.

Protected fields

mAlternateNames

protected List<StringmAlternateNames

mCreationTimestampMillis

protected long mCreationTimestampMillis

mDescription

protected String mDescription

mDocumentScore

protected int mDocumentScore

mDocumentTtlMillis

protected long mDocumentTtlMillis

mId

protected final String mId

mImage

protected String mImage

mName

protected String mName

mNamespace

protected final String mNamespace

mPotentialActions

protected List<PotentialActionmPotentialActions

mUrl

protected String mUrl

Public constructors

Builder

Added in 1.1.0-alpha04
public Builder(@NonNull Person person)

Constructor for Builder with all the existing values of an Person.

Builder

Added in 1.1.0-alpha04
public Builder(@NonNull String namespace, @NonNull String id, @NonNull String name)

Constructor for Person.Builder.

Parameters
@NonNull String namespace

Namespace for the Person Document. See Document.Namespace.

@NonNull String id

Unique identifier for the Person Document. See Document.Id.

@NonNull String name

The searchable full name of this Person. E.g. "Larry Page", or "Page, Larry".

Public methods

addAlternateName

Added in 1.1.0-alpha04
public @NonNulladdAlternateName(@NonNull String alternateName)

Adds an alias for the item.

addPotentialAction

Added in 1.1.0-alpha04
public @NonNulladdPotentialAction(@NonNull PotentialAction newPotentialAction)

Add a new action to the list of potential actions for this document.

build

Added in 1.1.0-alpha04
public @NonNull Person build()

Builds the Person.

build

Added in 1.1.0-alpha04
public @NonNull Thing build()

Builds a Thing object.

clearAlternateNames

Added in 1.1.0-alpha04
public @NonNullclearAlternateNames()

Clears the aliases, if any, for the item.

clearPotentialActions

Added in 1.1.0-alpha04
public @NonNullclearPotentialActions()

Clear all the potential actions for this document.

setAdditionalNames

Added in 1.1.0-alpha04
public @NonNullsetAdditionalNames(@NonNull List<Person.AdditionalName> additionalNames)

Sets a list of AdditionalName for that Person.

Only types defined in AdditionalName.NameType are accepted.

setAffiliations

Added in 1.1.0-alpha04
public @NonNullsetAffiliations(@NonNull List<String> affiliations)

Sets a list of affiliations for this Person. Like company, school, etc.

setBot

Added in 1.1.0-alpha04
public @NonNullsetBot(boolean isBot)

Sets whether this Person is a bot.

setContactPoints

Added in 1.1.0-alpha04
public @NonNullsetContactPoints(@NonNull List<ContactPoint> contactPoints)

Sets a list of ContactPoint for the Person.

More information could be found in ContactPoint.

setCreationTimestampMillis

Added in 1.1.0-alpha04
public @NonNullsetCreationTimestampMillis(long creationTimestampMillis)

Sets the creation timestamp for the current AppSearch entity, in milliseconds using the currentTimeMillis time base.

This timestamp refers to the creation time of the AppSearch entity, not when the document is written into AppSearch.

If not set, then the current timestamp will be used.

See androidx.appsearch.annotation.Document.CreationTimestampMillis for more information on creation timestamp.

setDescription

Added in 1.1.0-alpha04
public @NonNullsetDescription(@Nullable String description)

Sets the description for the item.

setDocumentScore

Added in 1.1.0-alpha04
public @NonNullsetDocumentScore(int documentScore)

Sets the user-provided opaque document score of the current AppSearch document, which can be used for ranking using RANKING_STRATEGY_DOCUMENT_SCORE.

See androidx.appsearch.annotation.Document.Score for more information on score.

setDocumentTtlMillis

Added in 1.1.0-alpha04
public @NonNullsetDocumentTtlMillis(long documentTtlMillis)

Sets the time-to-live (TTL) for the current AppSearch document as a duration in milliseconds.

The document will be automatically deleted when the TTL expires.

If not set, then the document will never expire.

See androidx.appsearch.annotation.Document.TtlMillis for more information on TTL.

setExternalUri

Added in 1.1.0-alpha04
public @NonNullsetExternalUri(@NonNull Uri externalUri)

Sets an external Uri for this Person. Or null if no Uri is provided. A Uri can be any of the following:

For mailto: and tel: URI schemes, it is recommended that the path portion refers to a valid contact in the Contacts Provider.

setFamilyName

Added in 1.1.0-alpha04
public @NonNullsetFamilyName(@NonNull String familyName)

Sets the family name of this Person.

setGivenName

Added in 1.1.0-alpha04
public @NonNullsetGivenName(@NonNull String givenName)

Sets the given name of this Person.

setImage

Added in 1.1.0-alpha04
public @NonNullsetImage(@Nullable String image)

Sets the URL for an image of the item.

setImageUri

Added in 1.1.0-alpha04
public @NonNullsetImageUri(@NonNull Uri imageUri)

Sets the Uri of the profile image for the Person.

setImportant

Added in 1.1.0-alpha04
public @NonNullsetImportant(boolean isImportant)

Sets whether this Person is important.

setMiddleName

Added in 1.1.0-alpha04
public @NonNullsetMiddleName(@NonNull String middleName)

Sets the middle name of this Person.

For Person with multiple middle names, they can all be set in this single string. Each middle name could be separated by a whitespace like "middleName1 middleName2 middleName3".

setName

Added in 1.1.0-alpha04
public @NonNullsetName(@Nullable String name)

Sets the name of the item.

setNotes

Added in 1.1.0-alpha04
public @NonNullsetNotes(@NonNull List<String> notes)

Sets the notes about this Person.

setRelations

Added in 1.1.0-alpha04
public @NonNullsetRelations(@NonNull List<String> relations)

Sets a list of relations for this Person, like "Father" or "Mother".

setUrl

Added in 1.1.0-alpha04
public @NonNullsetUrl(@Nullable String url)

Sets the deeplink URL of the item.

If this item can be displayed by any system UI surface, or can be read by another Android package, through one of the androidx.appsearch.app.SetSchemaRequest.Builder methods, this url should act as a deeplink into the activity that can open it. Callers should be able to construct an ACTION_VIEW intent with the url as the setData to view the item inside your application.

See Allowing Other Apps to Start Your Activity for more details on how to make activities in your app open for use by other apps by defining intent filters.