public final class Stopwatch.Builder


Builder for Stopwatch.

Summary

Public constructors

Constructor for Stopwatch.Builder with all the existing values.

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

Constructor for Stopwatch.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 Stopwatch

Builds the Stopwatch.

@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
setAccumulatedDurationMillis(long accumulatedDurationMillis)

Sets the total duration in milliseconds accumulated by the Stopwatch.

@NonNull T
setBaseTimeMillis(
    long baseTimeMillis,
    long baseTimeMillisInElapsedRealtime,
    int bootCount
)

Sets the point in time that the Stopwatch counts up from.

@NonNull T
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR1)
setBaseTimeMillis(
    @NonNull Context context,
    long baseTimeMillis,
    long baseTimeMillisInElapsedRealtime
)

Sets the point in time that the Stopwatch counts up from.

@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

Sets the URL for an image of the item.

@NonNull T

Sets all the StopwatchLap instances.

@NonNull T

Sets the name of the item.

@NonNull T
setStatus(int status)

Sets the current status.

@NonNull T

Sets the deeplink URL of the item.

Protected fields

mAccumulatedDurationMillis

protected long mAccumulatedDurationMillis

mAlternateNames

protected List<StringmAlternateNames

mBaseTimeMillis

protected long mBaseTimeMillis

mBaseTimeMillisInElapsedRealtime

protected long mBaseTimeMillisInElapsedRealtime

mBootCount

protected int mBootCount

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

mLaps

protected List<StopwatchLapmLaps

mName

protected String mName

mNamespace

protected final String mNamespace

mPotentialActions

protected List<PotentialActionmPotentialActions

mStatus

protected int mStatus

mUrl

protected String mUrl

Public constructors

Builder

Added in 1.1.0-alpha04
public Builder(@NonNull Stopwatch stopwatch)

Constructor for Stopwatch.Builder with all the existing values.

Builder

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

Constructor for Stopwatch.Builder.

Parameters
@NonNull String namespace

Namespace for the Document. See Document.Namespace.

@NonNull String id

Unique identifier for the Document. See Document.Id.

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 Stopwatch build()

Builds the Stopwatch.

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.

setAccumulatedDurationMillis

Added in 1.1.0-alpha04
public @NonNullsetAccumulatedDurationMillis(long accumulatedDurationMillis)

Sets the total duration in milliseconds accumulated by the Stopwatch.

setBaseTimeMillis

Added in 1.1.0-alpha04
public @NonNullsetBaseTimeMillis(
    long baseTimeMillis,
    long baseTimeMillisInElapsedRealtime,
    int bootCount
)

Sets the point in time that the Stopwatch counts up from.

Base time should be sampled in both the currentTimeMillis and elapsedRealtime time base. In addition, the boot count of the device is needed to check if the elapsedRealtime time base is valid.

Parameters
long baseTimeMillis

The base time in milliseconds using the currentTimeMillis time base.

long baseTimeMillisInElapsedRealtime

The base time in milliseconds using the elapsedRealtime time base.

int bootCount

The current boot count of the device. See BOOT_COUNT.

setBaseTimeMillis

Added in 1.1.0-alpha04
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR1)
public @NonNullsetBaseTimeMillis(
    @NonNull Context context,
    long baseTimeMillis,
    long baseTimeMillisInElapsedRealtime
)

Sets the point in time that the Stopwatch counts up from.

See setBaseTimeMillis.

Parameters
@NonNull Context context

The app context used to fetch boot count.

long baseTimeMillis

The base time in milliseconds using the currentTimeMillis time base.

long baseTimeMillisInElapsedRealtime

The base time in milliseconds using the elapsedRealtime time base.

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.

setImage

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

Sets the URL for an image of the item.

setLaps

Added in 1.1.0-alpha04
public @NonNullsetLaps(@NonNull List<StopwatchLap> laps)

Sets all the StopwatchLap instances.

setName

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

Sets the name of the item.

setStatus

Added in 1.1.0-alpha04
public @NonNullsetStatus(int status)

Sets the current status.

Status can be STATUS_UNKNOWN, STATUS_RESET, STATUS_RUNNING, or STATUS_PAUSED.

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.