# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: google/cloud/spanner_v1/proto/mutation.proto
import sys
_b = sys.version_info[0] < 3 and (lambda x: x) or (lambda x: x.encode("latin1"))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)
_sym_db = _symbol_database.Default()
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
from google.cloud.spanner_v1.proto import (
keys_pb2 as google_dot_cloud_dot_spanner__v1_dot_proto_dot_keys__pb2,
)
DESCRIPTOR = _descriptor.FileDescriptor(
name="google/cloud/spanner_v1/proto/mutation.proto",
package="google.spanner.v1",
syntax="proto3",
serialized_options=_b(
"\n\025com.google.spanner.v1B\rMutationProtoP\001Z8google.golang.org/genproto/googleapis/spanner/v1;spanner\252\002\027Google.Cloud.Spanner.V1\312\002\027Google\\Cloud\\Spanner\\V1"
),
serialized_pb=_b(
'\n,google/cloud/spanner_v1/proto/mutation.proto\x12\x11google.spanner.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a(google/cloud/spanner_v1/proto/keys.proto"\xc6\x03\n\x08Mutation\x12\x33\n\x06insert\x18\x01 \x01(\x0b\x32!.google.spanner.v1.Mutation.WriteH\x00\x12\x33\n\x06update\x18\x02 \x01(\x0b\x32!.google.spanner.v1.Mutation.WriteH\x00\x12=\n\x10insert_or_update\x18\x03 \x01(\x0b\x32!.google.spanner.v1.Mutation.WriteH\x00\x12\x34\n\x07replace\x18\x04 \x01(\x0b\x32!.google.spanner.v1.Mutation.WriteH\x00\x12\x34\n\x06\x64\x65lete\x18\x05 \x01(\x0b\x32".google.spanner.v1.Mutation.DeleteH\x00\x1aS\n\x05Write\x12\r\n\x05table\x18\x01 \x01(\t\x12\x0f\n\x07\x63olumns\x18\x02 \x03(\t\x12*\n\x06values\x18\x03 \x03(\x0b\x32\x1a.google.protobuf.ListValue\x1a\x43\n\x06\x44\x65lete\x12\r\n\x05table\x18\x01 \x01(\t\x12*\n\x07key_set\x18\x02 \x01(\x0b\x32\x19.google.spanner.v1.KeySetB\x0b\n\toperationB\x96\x01\n\x15\x63om.google.spanner.v1B\rMutationProtoP\x01Z8google.golang.org/genproto/googleapis/spanner/v1;spanner\xaa\x02\x17Google.Cloud.Spanner.V1\xca\x02\x17Google\\Cloud\\Spanner\\V1b\x06proto3'
),
dependencies=[
google_dot_api_dot_annotations__pb2.DESCRIPTOR,
google_dot_protobuf_dot_struct__pb2.DESCRIPTOR,
google_dot_cloud_dot_spanner__v1_dot_proto_dot_keys__pb2.DESCRIPTOR,
],
)
_MUTATION_WRITE = _descriptor.Descriptor(
name="Write",
full_name="google.spanner.v1.Mutation.Write",
filename=None,
file=DESCRIPTOR,
containing_type=None,
fields=[
_descriptor.FieldDescriptor(
name="table",
full_name="google.spanner.v1.Mutation.Write.table",
index=0,
number=1,
type=9,
cpp_type=9,
label=1,
has_default_value=False,
default_value=_b("").decode("utf-8"),
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
name="columns",
full_name="google.spanner.v1.Mutation.Write.columns",
index=1,
number=2,
type=9,
cpp_type=9,
label=3,
has_default_value=False,
default_value=[],
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
name="values",
full_name="google.spanner.v1.Mutation.Write.values",
index=2,
number=3,
type=11,
cpp_type=10,
label=3,
has_default_value=False,
default_value=[],
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
],
extensions=[],
nested_types=[],
enum_types=[],
serialized_options=None,
is_extendable=False,
syntax="proto3",
extension_ranges=[],
oneofs=[],
serialized_start=459,
serialized_end=542,
)
_MUTATION_DELETE = _descriptor.Descriptor(
name="Delete",
full_name="google.spanner.v1.Mutation.Delete",
filename=None,
file=DESCRIPTOR,
containing_type=None,
fields=[
_descriptor.FieldDescriptor(
name="table",
full_name="google.spanner.v1.Mutation.Delete.table",
index=0,
number=1,
type=9,
cpp_type=9,
label=1,
has_default_value=False,
default_value=_b("").decode("utf-8"),
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
name="key_set",
full_name="google.spanner.v1.Mutation.Delete.key_set",
index=1,
number=2,
type=11,
cpp_type=10,
label=1,
has_default_value=False,
default_value=None,
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
],
extensions=[],
nested_types=[],
enum_types=[],
serialized_options=None,
is_extendable=False,
syntax="proto3",
extension_ranges=[],
oneofs=[],
serialized_start=544,
serialized_end=611,
)
_MUTATION = _descriptor.Descriptor(
name="Mutation",
full_name="google.spanner.v1.Mutation",
filename=None,
file=DESCRIPTOR,
containing_type=None,
fields=[
_descriptor.FieldDescriptor(
name="insert",
full_name="google.spanner.v1.Mutation.insert",
index=0,
number=1,
type=11,
cpp_type=10,
label=1,
has_default_value=False,
default_value=None,
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
name="update",
full_name="google.spanner.v1.Mutation.update",
index=1,
number=2,
type=11,
cpp_type=10,
label=1,
has_default_value=False,
default_value=None,
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
name="insert_or_update",
full_name="google.spanner.v1.Mutation.insert_or_update",
index=2,
number=3,
type=11,
cpp_type=10,
label=1,
has_default_value=False,
default_value=None,
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
name="replace",
full_name="google.spanner.v1.Mutation.replace",
index=3,
number=4,
type=11,
cpp_type=10,
label=1,
has_default_value=False,
default_value=None,
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
name="delete",
full_name="google.spanner.v1.Mutation.delete",
index=4,
number=5,
type=11,
cpp_type=10,
label=1,
has_default_value=False,
default_value=None,
message_type=None,
enum_type=None,
containing_type=None,
is_extension=False,
extension_scope=None,
serialized_options=None,
file=DESCRIPTOR,
),
],
extensions=[],
nested_types=[_MUTATION_WRITE, _MUTATION_DELETE],
enum_types=[],
serialized_options=None,
is_extendable=False,
syntax="proto3",
extension_ranges=[],
oneofs=[
_descriptor.OneofDescriptor(
name="operation",
full_name="google.spanner.v1.Mutation.operation",
index=0,
containing_type=None,
fields=[],
)
],
serialized_start=170,
serialized_end=624,
)
_MUTATION_WRITE.fields_by_name[
"values"
].message_type = google_dot_protobuf_dot_struct__pb2._LISTVALUE
_MUTATION_WRITE.containing_type = _MUTATION
_MUTATION_DELETE.fields_by_name[
"key_set"
].message_type = google_dot_cloud_dot_spanner__v1_dot_proto_dot_keys__pb2._KEYSET
_MUTATION_DELETE.containing_type = _MUTATION
_MUTATION.fields_by_name["insert"].message_type = _MUTATION_WRITE
_MUTATION.fields_by_name["update"].message_type = _MUTATION_WRITE
_MUTATION.fields_by_name["insert_or_update"].message_type = _MUTATION_WRITE
_MUTATION.fields_by_name["replace"].message_type = _MUTATION_WRITE
_MUTATION.fields_by_name["delete"].message_type = _MUTATION_DELETE
_MUTATION.oneofs_by_name["operation"].fields.append(_MUTATION.fields_by_name["insert"])
_MUTATION.fields_by_name["insert"].containing_oneof = _MUTATION.oneofs_by_name[
"operation"
]
_MUTATION.oneofs_by_name["operation"].fields.append(_MUTATION.fields_by_name["update"])
_MUTATION.fields_by_name["update"].containing_oneof = _MUTATION.oneofs_by_name[
"operation"
]
_MUTATION.oneofs_by_name["operation"].fields.append(
_MUTATION.fields_by_name["insert_or_update"]
)
_MUTATION.fields_by_name[
"insert_or_update"
].containing_oneof = _MUTATION.oneofs_by_name["operation"]
_MUTATION.oneofs_by_name["operation"].fields.append(_MUTATION.fields_by_name["replace"])
_MUTATION.fields_by_name["replace"].containing_oneof = _MUTATION.oneofs_by_name[
"operation"
]
_MUTATION.oneofs_by_name["operation"].fields.append(_MUTATION.fields_by_name["delete"])
_MUTATION.fields_by_name["delete"].containing_oneof = _MUTATION.oneofs_by_name[
"operation"
]
DESCRIPTOR.message_types_by_name["Mutation"] = _MUTATION
_sym_db.RegisterFileDescriptor(DESCRIPTOR)
Mutation = _reflection.GeneratedProtocolMessageType(
"Mutation",
(_message.Message,),
dict(
Write=_reflection.GeneratedProtocolMessageType(
"Write",
(_message.Message,),
dict(
DESCRIPTOR=_MUTATION_WRITE,
__module__="google.cloud.spanner_v1.proto.mutation_pb2",
__doc__="""Arguments to [insert][google.spanner.v1.Mutation.insert],
[update][google.spanner.v1.Mutation.update],
[insert\_or\_update][google.spanner.v1.Mutation.insert\_or\_update], and
[replace][google.spanner.v1.Mutation.replace] operations.
Attributes:
table:
Required. The table whose rows will be written.
columns:
The names of the columns in
[table][google.spanner.v1.Mutation.Write.table] to be written.
The list of columns must contain enough columns to allow Cloud
Spanner to derive values for all primary key columns in the
row(s) to be modified.
values:
The values to be written. ``values`` can contain more than one
list of values. If it does, then multiple rows are written,
one for each entry in ``values``. Each list in ``values`` must
have exactly as many entries as there are entries in
[columns][google.spanner.v1.Mutation.Write.columns] above.
Sending multiple lists is equivalent to sending multiple
``Mutation``\ s, each containing one ``values`` entry and
repeating [table][google.spanner.v1.Mutation.Write.table] and
[columns][google.spanner.v1.Mutation.Write.columns].
Individual values in each list are encoded as described
[here][google.spanner.v1.TypeCode].
""",
# @@protoc_insertion_point(class_scope:google.spanner.v1.Mutation.Write)
),
),
Delete=_reflection.GeneratedProtocolMessageType(
"Delete",
(_message.Message,),
dict(
DESCRIPTOR=_MUTATION_DELETE,
__module__="google.cloud.spanner_v1.proto.mutation_pb2",
__doc__="""Arguments to [delete][google.spanner.v1.Mutation.delete] operations.
Attributes:
table:
Required. The table whose rows will be deleted.
key_set:
Required. The primary keys of the rows within
[table][google.spanner.v1.Mutation.Delete.table] to delete.
Delete is idempotent. The transaction will succeed even if
some or all rows do not exist.
""",
# @@protoc_insertion_point(class_scope:google.spanner.v1.Mutation.Delete)
),
),
DESCRIPTOR=_MUTATION,
__module__="google.cloud.spanner_v1.proto.mutation_pb2",
__doc__="""A modification to one or more Cloud Spanner rows. Mutations can be
applied to a Cloud Spanner database by sending them in a
[Commit][google.spanner.v1.Spanner.Commit] call.
Attributes:
operation:
Required. The operation to perform.
insert:
Insert new rows in a table. If any of the rows already exist,
the write or transaction fails with error ``ALREADY_EXISTS``.
update:
Update existing rows in a table. If any of the rows does not
already exist, the transaction fails with error ``NOT_FOUND``.
insert_or_update:
Like [insert][google.spanner.v1.Mutation.insert], except that
if the row already exists, then its column values are
overwritten with the ones provided. Any column values not
explicitly written are preserved.
replace:
Like [insert][google.spanner.v1.Mutation.insert], except that
if the row already exists, it is deleted, and the column
values provided are inserted instead. Unlike [insert\_or\_upda
te][google.spanner.v1.Mutation.insert\_or\_update], this means
any values not explicitly written become ``NULL``.
delete:
Delete rows from a table. Succeeds whether or not the named
rows were present.
""",
# @@protoc_insertion_point(class_scope:google.spanner.v1.Mutation)
),
)
_sym_db.RegisterMessage(Mutation)
_sym_db.RegisterMessage(Mutation.Write)
_sym_db.RegisterMessage(Mutation.Delete)
DESCRIPTOR._options = None
# @@protoc_insertion_point(module_scope)