Class Transaction (3.36.0)

public abstract class Transaction extends UpdateBuilder<Transaction>

A Transaction is passed to a Function to provide the methods to read and write data within the transaction context. See Also: Firestore#runTransaction(Function)

Inheritance

java.lang.Object > UpdateBuilder > Transaction

Constructors

Transaction(FirestoreImpl firestore)

protected Transaction(FirestoreImpl firestore)
Parameter
Name Description
firestore com.google.cloud.firestore.FirestoreImpl

Fields

transactionTraceContext

protected TraceUtil.Context transactionTraceContext
Field Value
Type Description
TraceUtil.Context

Methods

className()

protected String className()
Returns
Type Description
String
Overrides

execute(Pipeline pipeline)

public abstract ApiFuture<Pipeline.Snapshot> execute(Pipeline pipeline)

Executes the provided pipeline within the transaction context.

Parameter
Name Description
pipeline Pipeline
Returns
Type Description
ApiFuture<Snapshot>

The result of the execution.

execute(Pipeline pipeline, PipelineExecuteOptions options)

public abstract ApiFuture<Pipeline.Snapshot> execute(Pipeline pipeline, PipelineExecuteOptions options)

Executes the provided pipeline with specified options, within the transaction context.

Parameters
Name Description
pipeline Pipeline
options PipelineExecuteOptions
Returns
Type Description
ApiFuture<Snapshot>

The result of the execution.

get(AggregateQuery query)

public abstract ApiFuture<AggregateQuerySnapshot> get(AggregateQuery query)

Returns the result from the provided aggregate query. Holds a pessimistic lock on all accessed documents.

Parameter
Name Description
query AggregateQuery
Returns
Type Description
ApiFuture<AggregateQuerySnapshot>

The result of the aggregation.

get(DocumentReference documentRef)

public abstract ApiFuture<DocumentSnapshot> get(DocumentReference documentRef)

Reads the document referred to by the provided DocumentReference. Holds a pessimistic lock on the returned document.

Parameter
Name Description
documentRef DocumentReference
Returns
Type Description
ApiFuture<DocumentSnapshot>

The contents of the Document at this DocumentReference.

get(Query query)

public abstract ApiFuture<QuerySnapshot> get(Query query)

Returns the result set from the provided query. Holds a pessimistic lock on all returned documents.

Parameter
Name Description
query Query
Returns
Type Description
ApiFuture<QuerySnapshot>

The contents of the Document at this DocumentReference.

getAll(DocumentReference[] documentReferences)

public abstract ApiFuture<List<DocumentSnapshot>> getAll(DocumentReference[] documentReferences)

Retrieves multiple documents from Firestore. Holds a pessimistic lock on all returned documents.

Parameter
Name Description
documentReferences DocumentReference[]

List of Document References to fetch.

Returns
Type Description
ApiFuture<List<DocumentSnapshot>>

getAll(DocumentReference[] documentReferences, FieldMask fieldMask)

public abstract ApiFuture<List<DocumentSnapshot>> getAll(DocumentReference[] documentReferences, FieldMask fieldMask)

Retrieves multiple documents from Firestore, while optionally applying a field mask to reduce the amount of data transmitted from the backend. Holds a pessimistic lock on all returned documents.

Parameters
Name Description
documentReferences DocumentReference[]

Array with Document References to fetch.

fieldMask FieldMask

If set, specifies the subset of fields to return.

Returns
Type Description
ApiFuture<List<DocumentSnapshot>>

hasTransactionId()

public abstract boolean hasTransactionId()
Returns
Type Description
boolean