public final class Mutation implements Serializable
Represents an individual table modification to be applied to Cloud Spanner.
The types of mutation that can be created are defined by Op. To construct a mutation,
use one of the builder methods. For example, to create a mutation that will insert a value of "x"
into "C1" and a value of "y" into "C2" of table "T", write the following code:
Mutation m = Mutation.newInsertBuilder("T")
.set("C1").to("x")
.set("C2").to("y")
.build();
Mutations are applied to a database by performing a standalone write or buffering them as part of
a transaction. TODO(user): Add links/code samples once the corresponding APIs are available.
Mutation
instances are immutable.
Methods
asMap()
public Map<String,Value> asMap()
For all types except Op#DELETE, constructs a map from column name to value. This is
mainly intended as a convenience for testing; direct access via #getColumns() and
#getValues() is more efficient.
Returns
delete(String table, Key key)
public static Mutation delete(String table, Key key)
Returns a mutation that will delete the row with primary key key
. Exactly equivalent to
delete(table, KeySet.singleKey(key))
.
Parameters
Returns
delete(String table, KeySet keySet)
public static Mutation delete(String table, KeySet keySet)
Returns a mutation that will delete all rows with primary keys covered by keySet
.
Parameters
Returns
equals(Object o)
public boolean equals(Object o)
Parameter
Returns
Overrides
getColumns()
public Iterable<String> getColumns()
For all types except Op#DELETE, returns the columns that this mutation will affect.
Returns
getKeySet()
public KeySet getKeySet()
For Op#DELETE mutations, returns the key set that defines the rows to be deleted.
Returns
getOperation()
public Mutation.Op getOperation()
Returns the type of operation that this mutation will perform.
Returns
getTable()
Returns the name of the table that this mutation will affect.
Returns
getValues()
public Iterable<Value> getValues()
For all types except Op#DELETE, returns the values that this mutation will write. The
number of elements returned is always the same as the number returned by #getColumns(),
and the i
th value corresponds to the i
th column.
Returns
hashCode()
Returns
Overrides
newInsertBuilder(String table)
public static Mutation.WriteBuilder newInsertBuilder(String table)
Returns a builder that can be used to construct an Op#INSERT mutation against
table
; see the INSERT
documentation for mutation semantics.
Parameter
Returns
newInsertOrUpdateBuilder(String table)
public static Mutation.WriteBuilder newInsertOrUpdateBuilder(String table)
Returns a builder that can be used to construct an Op#INSERT_OR_UPDATE mutation against
table
; see the INSERT_OR_UPDATE
documentation for mutation semantics.
Parameter
Returns
newReplaceBuilder(String table)
public static Mutation.WriteBuilder newReplaceBuilder(String table)
Returns a builder that can be used to construct an Op#REPLACE mutation against
table
; see the REPLACE
documentation for mutation semantics.
Parameter
Returns
newUpdateBuilder(String table)
public static Mutation.WriteBuilder newUpdateBuilder(String table)
Returns a builder that can be used to construct an Op#UPDATE mutation against
table
; see the UPDATE
documentation for mutation semantics.
Parameter
Returns
toString()
Returns
Overrides