# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/spanner/admin/database_v1/proto/spanner_database_admin.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.api import client_pb2 as google_dot_api_dot_client__pb2
from google.api import field_behavior_pb2 as google_dot_api_dot_field__behavior__pb2
from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
from google.iam.v1 import iam_policy_pb2 as google_dot_iam_dot_v1_dot_iam__policy__pb2
from google.iam.v1 import policy_pb2 as google_dot_iam_dot_v1_dot_policy__pb2
from google.longrunning import (
    operations_pb2 as google_dot_longrunning_dot_operations__pb2,
)
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
    name="google/cloud/spanner/admin/database_v1/proto/spanner_database_admin.proto",
    package="google.spanner.admin.database.v1",
    syntax="proto3",
    serialized_options=_b(
        "\n$com.google.spanner.admin.database.v1B\031SpannerDatabaseAdminProtoP\001ZHgoogle.golang.org/genproto/googleapis/spanner/admin/database/v1;database\252\002&Google.Cloud.Spanner.Admin.Database.V1\312\002&Google\\Cloud\\Spanner\\Admin\\Database\\V1\352AJ\n\037spanner.googleapis.com/Instance\022'projects/{project}/instances/{instance}"
    ),
    serialized_pb=_b(
        '\nIgoogle/cloud/spanner/admin/database_v1/proto/spanner_database_admin.proto\x12 google.spanner.admin.database.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/iam/v1/iam_policy.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xf6\x01\n\x08\x44\x61tabase\x12\x0c\n\x04name\x18\x01 \x01(\t\x12?\n\x05state\x18\x02 \x01(\x0e\x32\x30.google.spanner.admin.database.v1.Database.State"7\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\t\n\x05READY\x10\x02:b\xea\x41_\n\x1fspanner.googleapis.com/Database\x12<projects/{project}/instances/{instance}/databases/{database}"v\n\x14ListDatabasesRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x11\n\tpage_size\x18\x03 \x01(\x05\x12\x12\n\npage_token\x18\x04 \x01(\t"o\n\x15ListDatabasesResponse\x12=\n\tdatabases\x18\x01 \x03(\x0b\x32*.google.spanner.admin.database.v1.Database\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t"\x89\x01\n\x15\x43reateDatabaseRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Instance\x12\x1d\n\x10\x63reate_statement\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x10\x65xtra_statements\x18\x03 \x03(\t"P\n\x16\x43reateDatabaseMetadata\x12\x36\n\x08\x64\x61tabase\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database"K\n\x12GetDatabaseRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database"\x84\x01\n\x18UpdateDatabaseDdlRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x17\n\nstatements\x18\x02 \x03(\tB\x03\xe0\x41\x02\x12\x14\n\x0coperation_id\x18\x03 \x01(\t"\x9e\x01\n\x19UpdateDatabaseDdlMetadata\x12\x36\n\x08\x64\x61tabase\x18\x01 \x01(\tB$\xfa\x41!\n\x1fspanner.googleapis.com/Database\x12\x12\n\nstatements\x18\x02 \x03(\t\x12\x35\n\x11\x63ommit_timestamps\x18\x03 \x03(\x0b\x32\x1a.google.protobuf.Timestamp"P\n\x13\x44ropDatabaseRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database"R\n\x15GetDatabaseDdlRequest\x12\x39\n\x08\x64\x61tabase\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fspanner.googleapis.com/Database",\n\x16GetDatabaseDdlResponse\x12\x12\n\nstatements\x18\x01 \x03(\t2\xad\x11\n\rDatabaseAdmin\x12\xc0\x01\n\rListDatabases\x12\x36.google.spanner.admin.database.v1.ListDatabasesRequest\x1a\x37.google.spanner.admin.database.v1.ListDatabasesResponse">\x82\xd3\xe4\x93\x02/\x12-/v1/{parent=projects/*/instances/*}/databases\xda\x41\x06parent\x12\xa4\x02\n\x0e\x43reateDatabase\x12\x37.google.spanner.admin.database.v1.CreateDatabaseRequest\x1a\x1d.google.longrunning.Operation"\xb9\x01\x82\xd3\xe4\x93\x02\x32"-/v1/{parent=projects/*/instances/*}/databases:\x01*\xda\x41\x17parent,create_statement\xca\x41\x64\n)google.spanner.admin.database.v1.Database\x12\x37google.spanner.admin.database.v1.CreateDatabaseMetadata\x12\xad\x01\n\x0bGetDatabase\x12\x34.google.spanner.admin.database.v1.GetDatabaseRequest\x1a*.google.spanner.admin.database.v1.Database"<\x82\xd3\xe4\x93\x02/\x12-/v1/{name=projects/*/instances/*/databases/*}\xda\x41\x04name\x12\x9d\x02\n\x11UpdateDatabaseDdl\x12:.google.spanner.admin.database.v1.UpdateDatabaseDdlRequest\x1a\x1d.google.longrunning.Operation"\xac\x01\x82\xd3\xe4\x93\x02:25/v1/{database=projects/*/instances/*/databases/*}/ddl:\x01*\xda\x41\x13\x64\x61tabase,statements\xca\x41S\n\x15google.protobuf.Empty\x12:google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata\x12\xa3\x01\n\x0c\x44ropDatabase\x12\x35.google.spanner.admin.database.v1.DropDatabaseRequest\x1a\x16.google.protobuf.Empty"D\x82\xd3\xe4\x93\x02\x33*1/v1/{database=projects/*/instances/*/databases/*}\xda\x41\x08\x64\x61tabase\x12\xcd\x01\n\x0eGetDatabaseDdl\x12\x37.google.spanner.admin.database.v1.GetDatabaseDdlRequest\x1a\x38.google.spanner.admin.database.v1.GetDatabaseDdlResponse"H\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{database=projects/*/instances/*/databases/*}/ddl\xda\x41\x08\x64\x61tabase\x12\xeb\x01\n\x0cSetIamPolicy\x12".google.iam.v1.SetIamPolicyRequest\x1a\x15.google.iam.v1.Policy"\x9f\x01\x82\xd3\xe4\x93\x02\x86\x01">/v1/{resource=projects/*/instances/*/databases/*}:setIamPolicy:\x01*ZA"</v1/{resource=projects/*/instances/*/backups/*}:setIamPolicy:\x01*\xda\x41\x0fresource,policy\x12\xe4\x01\n\x0cGetIamPolicy\x12".google.iam.v1.GetIamPolicyRequest\x1a\x15.google.iam.v1.Policy"\x98\x01\x82\xd3\xe4\x93\x02\x86\x01">/v1/{resource=projects/*/instances/*/databases/*}:getIamPolicy:\x01*ZA"</v1/{resource=projects/*/instances/*/backups/*}:getIamPolicy:\x01*\xda\x41\x08resource\x12\x9c\x02\n\x12TestIamPermissions\x12(.google.iam.v1.TestIamPermissionsRequest\x1a).google.iam.v1.TestIamPermissionsResponse"\xb0\x01\x82\xd3\xe4\x93\x02\x92\x01"D/v1/{resource=projects/*/instances/*/databases/*}:testIamPermissions:\x01*ZG"B/v1/{resource=projects/*/instances/*/backups/*}:testIamPermissions:\x01*\xda\x41\x14resource,permissions\x1ax\xca\x41\x16spanner.googleapis.com\xd2\x41\\https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/spanner.adminB\xac\x02\n$com.google.spanner.admin.database.v1B\x19SpannerDatabaseAdminProtoP\x01ZHgoogle.golang.org/genproto/googleapis/spanner/admin/database/v1;database\xaa\x02&Google.Cloud.Spanner.Admin.Database.V1\xca\x02&Google\\Cloud\\Spanner\\Admin\\Database\\V1\xea\x41J\n\x1fspanner.googleapis.com/Instance\x12\'projects/{project}/instances/{instance}b\x06proto3'
    ),
    dependencies=[
        google_dot_api_dot_annotations__pb2.DESCRIPTOR,
        google_dot_api_dot_client__pb2.DESCRIPTOR,
        google_dot_api_dot_field__behavior__pb2.DESCRIPTOR,
        google_dot_api_dot_resource__pb2.DESCRIPTOR,
        google_dot_iam_dot_v1_dot_iam__policy__pb2.DESCRIPTOR,
        google_dot_iam_dot_v1_dot_policy__pb2.DESCRIPTOR,
        google_dot_longrunning_dot_operations__pb2.DESCRIPTOR,
        google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,
        google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,
    ],
)


_DATABASE_STATE = _descriptor.EnumDescriptor(
    name="State",
    full_name="google.spanner.admin.database.v1.Database.State",
    filename=None,
    file=DESCRIPTOR,
    values=[
        _descriptor.EnumValueDescriptor(
            name="STATE_UNSPECIFIED",
            index=0,
            number=0,
            serialized_options=None,
            type=None,
        ),
        _descriptor.EnumValueDescriptor(
            name="CREATING", index=1, number=1, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="READY", index=2, number=2, serialized_options=None, type=None
        ),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=477,
    serialized_end=532,
)
_sym_db.RegisterEnumDescriptor(_DATABASE_STATE)


_DATABASE = _descriptor.Descriptor(
    name="Database",
    full_name="google.spanner.admin.database.v1.Database",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.spanner.admin.database.v1.Database.name",
            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="state",
            full_name="google.spanner.admin.database.v1.Database.state",
            index=1,
            number=2,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            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=[_DATABASE_STATE],
    serialized_options=_b(
        "\352A_\n\037spanner.googleapis.com/Database\022<projects/{project}/instances/{instance}/databases/{database}"
    ),
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=386,
    serialized_end=632,
)


_LISTDATABASESREQUEST = _descriptor.Descriptor(
    name="ListDatabasesRequest",
    full_name="google.spanner.admin.database.v1.ListDatabasesRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.spanner.admin.database.v1.ListDatabasesRequest.parent",
            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=_b(
                "\340A\002\372A!\n\037spanner.googleapis.com/Instance"
            ),
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="page_size",
            full_name="google.spanner.admin.database.v1.ListDatabasesRequest.page_size",
            index=1,
            number=3,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="page_token",
            full_name="google.spanner.admin.database.v1.ListDatabasesRequest.page_token",
            index=2,
            number=4,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=634,
    serialized_end=752,
)


_LISTDATABASESRESPONSE = _descriptor.Descriptor(
    name="ListDatabasesResponse",
    full_name="google.spanner.admin.database.v1.ListDatabasesResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="databases",
            full_name="google.spanner.admin.database.v1.ListDatabasesResponse.databases",
            index=0,
            number=1,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="next_page_token",
            full_name="google.spanner.admin.database.v1.ListDatabasesResponse.next_page_token",
            index=1,
            number=2,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=754,
    serialized_end=865,
)


_CREATEDATABASEREQUEST = _descriptor.Descriptor(
    name="CreateDatabaseRequest",
    full_name="google.spanner.admin.database.v1.CreateDatabaseRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.spanner.admin.database.v1.CreateDatabaseRequest.parent",
            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=_b(
                "\340A\002\372A!\n\037spanner.googleapis.com/Instance"
            ),
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="create_statement",
            full_name="google.spanner.admin.database.v1.CreateDatabaseRequest.create_statement",
            index=1,
            number=2,
            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=_b("\340A\002"),
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="extra_statements",
            full_name="google.spanner.admin.database.v1.CreateDatabaseRequest.extra_statements",
            index=2,
            number=3,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=868,
    serialized_end=1005,
)


_CREATEDATABASEMETADATA = _descriptor.Descriptor(
    name="CreateDatabaseMetadata",
    full_name="google.spanner.admin.database.v1.CreateDatabaseMetadata",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.spanner.admin.database.v1.CreateDatabaseMetadata.database",
            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=_b("\372A!\n\037spanner.googleapis.com/Database"),
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1007,
    serialized_end=1087,
)


_GETDATABASEREQUEST = _descriptor.Descriptor(
    name="GetDatabaseRequest",
    full_name="google.spanner.admin.database.v1.GetDatabaseRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.spanner.admin.database.v1.GetDatabaseRequest.name",
            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=_b(
                "\340A\002\372A!\n\037spanner.googleapis.com/Database"
            ),
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1089,
    serialized_end=1164,
)


_UPDATEDATABASEDDLREQUEST = _descriptor.Descriptor(
    name="UpdateDatabaseDdlRequest",
    full_name="google.spanner.admin.database.v1.UpdateDatabaseDdlRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.database",
            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=_b(
                "\340A\002\372A!\n\037spanner.googleapis.com/Database"
            ),
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="statements",
            full_name="google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.statements",
            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=_b("\340A\002"),
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="operation_id",
            full_name="google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.operation_id",
            index=2,
            number=3,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1167,
    serialized_end=1299,
)


_UPDATEDATABASEDDLMETADATA = _descriptor.Descriptor(
    name="UpdateDatabaseDdlMetadata",
    full_name="google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.database",
            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=_b("\372A!\n\037spanner.googleapis.com/Database"),
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="statements",
            full_name="google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.statements",
            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="commit_timestamps",
            full_name="google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.commit_timestamps",
            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=1302,
    serialized_end=1460,
)


_DROPDATABASEREQUEST = _descriptor.Descriptor(
    name="DropDatabaseRequest",
    full_name="google.spanner.admin.database.v1.DropDatabaseRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.spanner.admin.database.v1.DropDatabaseRequest.database",
            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=_b(
                "\340A\002\372A!\n\037spanner.googleapis.com/Database"
            ),
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1462,
    serialized_end=1542,
)


_GETDATABASEDDLREQUEST = _descriptor.Descriptor(
    name="GetDatabaseDdlRequest",
    full_name="google.spanner.admin.database.v1.GetDatabaseDdlRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.spanner.admin.database.v1.GetDatabaseDdlRequest.database",
            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=_b(
                "\340A\002\372A!\n\037spanner.googleapis.com/Database"
            ),
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1544,
    serialized_end=1626,
)


_GETDATABASEDDLRESPONSE = _descriptor.Descriptor(
    name="GetDatabaseDdlResponse",
    full_name="google.spanner.admin.database.v1.GetDatabaseDdlResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="statements",
            full_name="google.spanner.admin.database.v1.GetDatabaseDdlResponse.statements",
            index=0,
            number=1,
            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,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1628,
    serialized_end=1672,
)

_DATABASE.fields_by_name["state"].enum_type = _DATABASE_STATE
_DATABASE_STATE.containing_type = _DATABASE
_LISTDATABASESRESPONSE.fields_by_name["databases"].message_type = _DATABASE
_UPDATEDATABASEDDLMETADATA.fields_by_name[
    "commit_timestamps"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
DESCRIPTOR.message_types_by_name["Database"] = _DATABASE
DESCRIPTOR.message_types_by_name["ListDatabasesRequest"] = _LISTDATABASESREQUEST
DESCRIPTOR.message_types_by_name["ListDatabasesResponse"] = _LISTDATABASESRESPONSE
DESCRIPTOR.message_types_by_name["CreateDatabaseRequest"] = _CREATEDATABASEREQUEST
DESCRIPTOR.message_types_by_name["CreateDatabaseMetadata"] = _CREATEDATABASEMETADATA
DESCRIPTOR.message_types_by_name["GetDatabaseRequest"] = _GETDATABASEREQUEST
DESCRIPTOR.message_types_by_name["UpdateDatabaseDdlRequest"] = _UPDATEDATABASEDDLREQUEST
DESCRIPTOR.message_types_by_name[
    "UpdateDatabaseDdlMetadata"
] = _UPDATEDATABASEDDLMETADATA
DESCRIPTOR.message_types_by_name["DropDatabaseRequest"] = _DROPDATABASEREQUEST
DESCRIPTOR.message_types_by_name["GetDatabaseDdlRequest"] = _GETDATABASEDDLREQUEST
DESCRIPTOR.message_types_by_name["GetDatabaseDdlResponse"] = _GETDATABASEDDLRESPONSE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Database = _reflection.GeneratedProtocolMessageType(
    "Database",
    (_message.Message,),
    dict(
        DESCRIPTOR=_DATABASE,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""A Cloud Spanner database.
  
  
  Attributes:
      name:
          Required. The name of the database. Values are of the form ``p
          rojects/<project>/instances/<instance>/databases/<database>``,
          where ``<database>`` is as specified in the ``CREATE
          DATABASE`` statement. This name can be passed to other API
          methods to identify the database.
      state:
          Output only. The current database state.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.Database)
    ),
)
_sym_db.RegisterMessage(Database)

ListDatabasesRequest = _reflection.GeneratedProtocolMessageType(
    "ListDatabasesRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTDATABASESREQUEST,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""The request for
  [ListDatabases][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases].
  
  
  Attributes:
      parent:
          Required. The instance whose databases should be listed.
          Values are of the form
          ``projects/<project>/instances/<instance>``.
      page_size:
          Number of databases to be returned in the response. If 0 or
          less, defaults to the server's maximum allowed page size.
      page_token:
          If non-empty, ``page_token`` should contain a [next\_page\_tok
          en][google.spanner.admin.database.v1.ListDatabasesResponse.nex
          t\_page\_token] from a previous [ListDatabasesResponse][google
          .spanner.admin.database.v1.ListDatabasesResponse].
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.ListDatabasesRequest)
    ),
)
_sym_db.RegisterMessage(ListDatabasesRequest)

ListDatabasesResponse = _reflection.GeneratedProtocolMessageType(
    "ListDatabasesResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTDATABASESRESPONSE,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""The response for
  [ListDatabases][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases].
  
  
  Attributes:
      databases:
          Databases that matched the request.
      next_page_token:
          ``next_page_token`` can be sent in a subsequent [ListDatabases
          ][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases
          ] call to fetch more of the matching databases.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.ListDatabasesResponse)
    ),
)
_sym_db.RegisterMessage(ListDatabasesResponse)

CreateDatabaseRequest = _reflection.GeneratedProtocolMessageType(
    "CreateDatabaseRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_CREATEDATABASEREQUEST,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""The request for
  [CreateDatabase][google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase].
  
  
  Attributes:
      parent:
          Required. The name of the instance that will serve the new
          database. Values are of the form
          ``projects/<project>/instances/<instance>``.
      create_statement:
          Required. A ``CREATE DATABASE`` statement, which specifies the
          ID of the new database. The database ID must conform to the
          regular expression ``[a-z][a-z0-9_\-]*[a-z0-9]`` and be
          between 2 and 30 characters in length. If the database ID is a
          reserved word or if it contains a hyphen, the database ID must
          be enclosed in backticks (`````).
      extra_statements:
          An optional list of DDL statements to run inside the newly
          created database. Statements can create tables, indexes, etc.
          These statements execute atomically with the creation of the
          database: if there is an error in any statement, the database
          is not created.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.CreateDatabaseRequest)
    ),
)
_sym_db.RegisterMessage(CreateDatabaseRequest)

CreateDatabaseMetadata = _reflection.GeneratedProtocolMessageType(
    "CreateDatabaseMetadata",
    (_message.Message,),
    dict(
        DESCRIPTOR=_CREATEDATABASEMETADATA,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""Metadata type for the operation returned by
  [CreateDatabase][google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase].
  
  
  Attributes:
      database:
          The database being created.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.CreateDatabaseMetadata)
    ),
)
_sym_db.RegisterMessage(CreateDatabaseMetadata)

GetDatabaseRequest = _reflection.GeneratedProtocolMessageType(
    "GetDatabaseRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_GETDATABASEREQUEST,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""The request for
  [GetDatabase][google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase].
  
  
  Attributes:
      name:
          Required. The name of the requested database. Values are of
          the form ``projects/<project>/instances/<instance>/databases/<
          database>``.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.GetDatabaseRequest)
    ),
)
_sym_db.RegisterMessage(GetDatabaseRequest)

UpdateDatabaseDdlRequest = _reflection.GeneratedProtocolMessageType(
    "UpdateDatabaseDdlRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_UPDATEDATABASEDDLREQUEST,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""Enqueues the given DDL statements to be applied, in order but not
  necessarily all at once, to the database schema at some point (or
  points) in the future. The server checks that the statements are
  executable (syntactically valid, name tables that exist, etc.) before
  enqueueing them, but they may still fail upon later execution (e.g., if
  a statement from another batch of statements is applied first and it
  conflicts in some way, or if there is some data-related problem like a
  ``NULL`` value in a column to which ``NOT NULL`` would be added). If a
  statement fails, all subsequent statements in the batch are
  automatically cancelled.
  
  Each batch of statements is assigned a name which can be used with the
  [Operations][google.longrunning.Operations] API to monitor progress. See
  the
  [operation\_id][google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.operation\_id]
  field for more details.
  
  
  Attributes:
      database:
          Required. The database to update.
      statements:
          Required. DDL statements to be applied to the database.
      operation_id:
          If empty, the new update request is assigned an automatically-
          generated operation ID. Otherwise, ``operation_id`` is used to
          construct the name of the resulting
          [Operation][google.longrunning.Operation].  Specifying an
          explicit operation ID simplifies determining whether the
          statements were executed in the event that the [UpdateDatabase
          Ddl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateData
          baseDdl] call is replayed, or the return value is otherwise
          lost: the [database][google.spanner.admin.database.v1.UpdateDa
          tabaseDdlRequest.database] and ``operation_id`` fields can be
          combined to form the [name][google.longrunning.Operation.name]
          of the resulting
          [longrunning.Operation][google.longrunning.Operation]:
          ``<database>/operations/<operation_id>``.  ``operation_id``
          should be unique within the database, and must be a valid
          identifier: ``[a-z][a-z0-9_]*``. Note that automatically-
          generated operation IDs always begin with an underscore. If
          the named operation already exists, [UpdateDatabaseDdl][google
          .spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl]
          returns ``ALREADY_EXISTS``.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.UpdateDatabaseDdlRequest)
    ),
)
_sym_db.RegisterMessage(UpdateDatabaseDdlRequest)

UpdateDatabaseDdlMetadata = _reflection.GeneratedProtocolMessageType(
    "UpdateDatabaseDdlMetadata",
    (_message.Message,),
    dict(
        DESCRIPTOR=_UPDATEDATABASEDDLMETADATA,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""Metadata type for the operation returned by
  [UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl].
  
  
  Attributes:
      database:
          The database being modified.
      statements:
          For an update this list contains all the statements. For an
          individual statement, this list contains only that statement.
      commit_timestamps:
          Reports the commit timestamps of all statements that have
          succeeded so far, where ``commit_timestamps[i]`` is the commit
          timestamp for the statement ``statements[i]``.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata)
    ),
)
_sym_db.RegisterMessage(UpdateDatabaseDdlMetadata)

DropDatabaseRequest = _reflection.GeneratedProtocolMessageType(
    "DropDatabaseRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_DROPDATABASEREQUEST,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""The request for
  [DropDatabase][google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase].
  
  
  Attributes:
      database:
          Required. The database to be dropped.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.DropDatabaseRequest)
    ),
)
_sym_db.RegisterMessage(DropDatabaseRequest)

GetDatabaseDdlRequest = _reflection.GeneratedProtocolMessageType(
    "GetDatabaseDdlRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_GETDATABASEDDLREQUEST,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""The request for
  [GetDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl].
  
  
  Attributes:
      database:
          Required. The database whose schema we wish to get.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.GetDatabaseDdlRequest)
    ),
)
_sym_db.RegisterMessage(GetDatabaseDdlRequest)

GetDatabaseDdlResponse = _reflection.GeneratedProtocolMessageType(
    "GetDatabaseDdlResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_GETDATABASEDDLRESPONSE,
        __module__="google.cloud.spanner.admin.database_v1.proto.spanner_database_admin_pb2",
        __doc__="""The response for
  [GetDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl].
  
  
  Attributes:
      statements:
          A list of formatted DDL statements defining the schema of the
          database specified in the request.
  """,
        # @@protoc_insertion_point(class_scope:google.spanner.admin.database.v1.GetDatabaseDdlResponse)
    ),
)
_sym_db.RegisterMessage(GetDatabaseDdlResponse)


DESCRIPTOR._options = None
_DATABASE._options = None
_LISTDATABASESREQUEST.fields_by_name["parent"]._options = None
_CREATEDATABASEREQUEST.fields_by_name["parent"]._options = None
_CREATEDATABASEREQUEST.fields_by_name["create_statement"]._options = None
_CREATEDATABASEMETADATA.fields_by_name["database"]._options = None
_GETDATABASEREQUEST.fields_by_name["name"]._options = None
_UPDATEDATABASEDDLREQUEST.fields_by_name["database"]._options = None
_UPDATEDATABASEDDLREQUEST.fields_by_name["statements"]._options = None
_UPDATEDATABASEDDLMETADATA.fields_by_name["database"]._options = None
_DROPDATABASEREQUEST.fields_by_name["database"]._options = None
_GETDATABASEDDLREQUEST.fields_by_name["database"]._options = None

_DATABASEADMIN = _descriptor.ServiceDescriptor(
    name="DatabaseAdmin",
    full_name="google.spanner.admin.database.v1.DatabaseAdmin",
    file=DESCRIPTOR,
    index=0,
    serialized_options=_b(
        "\312A\026spanner.googleapis.com\322A\\https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/spanner.admin"
    ),
    serialized_start=1675,
    serialized_end=3896,
    methods=[
        _descriptor.MethodDescriptor(
            name="ListDatabases",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases",
            index=0,
            containing_service=None,
            input_type=_LISTDATABASESREQUEST,
            output_type=_LISTDATABASESRESPONSE,
            serialized_options=_b(
                "\202\323\344\223\002/\022-/v1/{parent=projects/*/instances/*}/databases\332A\006parent"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="CreateDatabase",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase",
            index=1,
            containing_service=None,
            input_type=_CREATEDATABASEREQUEST,
            output_type=google_dot_longrunning_dot_operations__pb2._OPERATION,
            serialized_options=_b(
                '\202\323\344\223\0022"-/v1/{parent=projects/*/instances/*}/databases:\001*\332A\027parent,create_statement\312Ad\n)google.spanner.admin.database.v1.Database\0227google.spanner.admin.database.v1.CreateDatabaseMetadata'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="GetDatabase",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase",
            index=2,
            containing_service=None,
            input_type=_GETDATABASEREQUEST,
            output_type=_DATABASE,
            serialized_options=_b(
                "\202\323\344\223\002/\022-/v1/{name=projects/*/instances/*/databases/*}\332A\004name"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="UpdateDatabaseDdl",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl",
            index=3,
            containing_service=None,
            input_type=_UPDATEDATABASEDDLREQUEST,
            output_type=google_dot_longrunning_dot_operations__pb2._OPERATION,
            serialized_options=_b(
                "\202\323\344\223\002:25/v1/{database=projects/*/instances/*/databases/*}/ddl:\001*\332A\023database,statements\312AS\n\025google.protobuf.Empty\022:google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="DropDatabase",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase",
            index=4,
            containing_service=None,
            input_type=_DROPDATABASEREQUEST,
            output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
            serialized_options=_b(
                "\202\323\344\223\0023*1/v1/{database=projects/*/instances/*/databases/*}\332A\010database"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="GetDatabaseDdl",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl",
            index=5,
            containing_service=None,
            input_type=_GETDATABASEDDLREQUEST,
            output_type=_GETDATABASEDDLRESPONSE,
            serialized_options=_b(
                "\202\323\344\223\0027\0225/v1/{database=projects/*/instances/*/databases/*}/ddl\332A\010database"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="SetIamPolicy",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy",
            index=6,
            containing_service=None,
            input_type=google_dot_iam_dot_v1_dot_iam__policy__pb2._SETIAMPOLICYREQUEST,
            output_type=google_dot_iam_dot_v1_dot_policy__pb2._POLICY,
            serialized_options=_b(
                '\202\323\344\223\002\206\001">/v1/{resource=projects/*/instances/*/databases/*}:setIamPolicy:\001*ZA"</v1/{resource=projects/*/instances/*/backups/*}:setIamPolicy:\001*\332A\017resource,policy'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="GetIamPolicy",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy",
            index=7,
            containing_service=None,
            input_type=google_dot_iam_dot_v1_dot_iam__policy__pb2._GETIAMPOLICYREQUEST,
            output_type=google_dot_iam_dot_v1_dot_policy__pb2._POLICY,
            serialized_options=_b(
                '\202\323\344\223\002\206\001">/v1/{resource=projects/*/instances/*/databases/*}:getIamPolicy:\001*ZA"</v1/{resource=projects/*/instances/*/backups/*}:getIamPolicy:\001*\332A\010resource'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="TestIamPermissions",
            full_name="google.spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions",
            index=8,
            containing_service=None,
            input_type=google_dot_iam_dot_v1_dot_iam__policy__pb2._TESTIAMPERMISSIONSREQUEST,
            output_type=google_dot_iam_dot_v1_dot_iam__policy__pb2._TESTIAMPERMISSIONSRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002\222\001"D/v1/{resource=projects/*/instances/*/databases/*}:testIamPermissions:\001*ZG"B/v1/{resource=projects/*/instances/*/backups/*}:testIamPermissions:\001*\332A\024resource,permissions'
            ),
        ),
    ],
)
_sym_db.RegisterServiceDescriptor(_DATABASEADMIN)

DESCRIPTOR.services_by_name["DatabaseAdmin"] = _DATABASEADMIN

# @@protoc_insertion_point(module_scope)
