Class ConditionalRowMutation
- java.lang.Object
-
- com.google.cloud.bigtable.data.v2.models.ConditionalRowMutation
-
- All Implemented Interfaces:
Serializable
public final class ConditionalRowMutation extends Object implements Serializable
Mutates a row atomically based on the output of a condition filter.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ConditionalRowMutationcondition(Filters.Filter condition)The filter to be applied to the contents of the specified row.static ConditionalRowMutationcreate(String tableId, com.google.protobuf.ByteString rowKey)Creates a new instance of the mutation builder.static ConditionalRowMutationcreate(String tableId, String rowKey)Creates a new instance of the mutation builder.static ConditionalRowMutationfromProto(CheckAndMutateRowRequest request)Wraps the protobufCheckAndMutateRowRequest.ConditionalRowMutationotherwise(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.ConditionalRowMutationthen(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.CheckAndMutateRowRequesttoProto(com.google.cloud.bigtable.data.v2.internal.RequestContext requestContext)Creates the underlyingCheckAndMutateRowRequestprotobuf.
-
-
-
Method Detail
-
create
public static ConditionalRowMutation create(String tableId, String rowKey)
Creates a new instance of the mutation builder.
-
create
public static ConditionalRowMutation create(String tableId, com.google.protobuf.ByteString rowKey)
Creates a new instance of the mutation builder.
-
condition
public ConditionalRowMutation condition(@Nonnull 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 viathen(Mutation)orotherwise(Mutation)will be executed. If unset, checks that the row contains any values at all.Unlike
then(Mutation)andotherwise(Mutation), only a single condition can be set. However that filter can be aFilters.chain()orFilters.interleave(), which can wrap multiple other filters.WARNING:
Filters.condition(Filter)is not supported.
-
then
public ConditionalRowMutation then(@Nonnull 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
mutationcan 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 ifotherwise(Mutation)is empty, and at most 100000.
-
otherwise
public ConditionalRowMutation otherwise(@Nonnull 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
mutationcan 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 ifthen(Mutation)is empty, and at most 100000.
-
toProto
@InternalApi public CheckAndMutateRowRequest toProto(com.google.cloud.bigtable.data.v2.internal.RequestContext requestContext)
Creates the underlyingCheckAndMutateRowRequestprotobuf.This method is considered an internal implementation detail and not meant to be used by applications.
-
fromProto
@BetaApi public static ConditionalRowMutation fromProto(@Nonnull CheckAndMutateRowRequest request)
Wraps the protobufCheckAndMutateRowRequest.WARNING: Please note that the table_name will be overwritten by the configuration in the BigtableDataClient.
-
-