Class ConditionalRowMutation (2.23.0)

public final class ConditionalRowMutation implements Serializable

Mutates a row atomically based on the output of a condition filter.

Inheritance

java.lang.Object > ConditionalRowMutation

Implements

Serializable

Static Methods

create(String tableId, ByteString rowKey)

public static ConditionalRowMutation create(String tableId, ByteString rowKey)

Creates a new instance of the mutation builder.

Parameters
NameDescription
tableIdString
rowKeyByteString
Returns
TypeDescription
ConditionalRowMutation

create(String tableId, String rowKey)

public static ConditionalRowMutation create(String tableId, String rowKey)

Creates a new instance of the mutation builder.

Parameters
NameDescription
tableIdString
rowKeyString
Returns
TypeDescription
ConditionalRowMutation

fromProto(CheckAndMutateRowRequest request)

public static ConditionalRowMutation fromProto(CheckAndMutateRowRequest request)

Wraps the protobuf CheckAndMutateRowRequest.

WARNING: Please note that the table_name will be overwritten by the configuration in the BigtableDataClient.

Parameter
NameDescription
requestcom.google.bigtable.v2.CheckAndMutateRowRequest
Returns
TypeDescription
ConditionalRowMutation

Methods

condition(Filters.Filter condition)

public ConditionalRowMutation condition(Filters.Filter condition)

The filter to be applied to the contents of the specified row. Depending on whether or not any results are yielded, either the mutations added via #then(Mutation) or #otherwise(Mutation) will be executed. If unset, checks that the row contains any values at all.

Unlike #then(Mutation) and #otherwise(Mutation), only a single condition can be set. However that filter can be a Filters#chain() or Filters#interleave(), which can wrap multiple other filters.

WARNING: Filters#condition(Filter) is not supported.

Parameter
NameDescription
conditionFilters.Filter
Returns
TypeDescription
ConditionalRowMutation

otherwise(Mutation mutation)

public ConditionalRowMutation otherwise(Mutation mutation)

Adds changes to be atomically applied to the specified row if the condition does not yields any cells when applied to the row.

Each mutation can specify multiple changes and the changes are accumulated each time this method is called. Mutations are applied in order, meaning that earlier mutations can be masked by later ones. Must contain at least one entry if #then(Mutation) is empty, and at most 100000.

Parameter
NameDescription
mutationMutation
Returns
TypeDescription
ConditionalRowMutation

then(Mutation mutation)

public ConditionalRowMutation then(Mutation mutation)

Adds changes to be atomically applied to the specified row if the condition yields at least one cell when applied to the row.

Each mutation can specify multiple changes and the changes are accumulated each time this method is called. Mutations are applied in order, meaning that earlier mutations can be masked by later ones. Must contain at least one entry if #otherwise(Mutation) is empty, and at most 100000.

Parameter
NameDescription
mutationMutation
Returns
TypeDescription
ConditionalRowMutation

toProto(RequestContext requestContext)

public CheckAndMutateRowRequest toProto(RequestContext requestContext)

Creates the underlying CheckAndMutateRowRequest protobuf.

This method is considered an internal implementation detail and not meant to be used by applications.

Parameter
NameDescription
requestContextcom.google.cloud.bigtable.data.v2.internal.RequestContext
Returns
TypeDescription
com.google.bigtable.v2.CheckAndMutateRowRequest