1// Copyright 2020 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// Code generated by protoc-gen-go. DO NOT EDIT.
16// versions:
17// 	protoc-gen-go v1.22.0
18// 	protoc        v3.11.2
19// source: google/spanner/admin/database/v1/spanner_database_admin.proto
20
21package database
22
23import (
24	context "context"
25	reflect "reflect"
26	sync "sync"
27
28	proto "github.com/golang/protobuf/proto"
29	empty "github.com/golang/protobuf/ptypes/empty"
30	timestamp "github.com/golang/protobuf/ptypes/timestamp"
31	_ "google.golang.org/genproto/googleapis/api/annotations"
32	v1 "google.golang.org/genproto/googleapis/iam/v1"
33	longrunning "google.golang.org/genproto/googleapis/longrunning"
34	grpc "google.golang.org/grpc"
35	codes "google.golang.org/grpc/codes"
36	status "google.golang.org/grpc/status"
37	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
38	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
39)
40
41const (
42	// Verify that this generated code is sufficiently up-to-date.
43	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
44	// Verify that runtime/protoimpl is sufficiently up-to-date.
45	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
46)
47
48// This is a compile-time assertion that a sufficiently up-to-date version
49// of the legacy proto package is being used.
50const _ = proto.ProtoPackageIsVersion4
51
52// Indicates the type of the restore source.
53type RestoreSourceType int32
54
55const (
56	// No restore associated.
57	RestoreSourceType_TYPE_UNSPECIFIED RestoreSourceType = 0
58	// A backup was used as the source of the restore.
59	RestoreSourceType_BACKUP RestoreSourceType = 1
60)
61
62// Enum value maps for RestoreSourceType.
63var (
64	RestoreSourceType_name = map[int32]string{
65		0: "TYPE_UNSPECIFIED",
66		1: "BACKUP",
67	}
68	RestoreSourceType_value = map[string]int32{
69		"TYPE_UNSPECIFIED": 0,
70		"BACKUP":           1,
71	}
72)
73
74func (x RestoreSourceType) Enum() *RestoreSourceType {
75	p := new(RestoreSourceType)
76	*p = x
77	return p
78}
79
80func (x RestoreSourceType) String() string {
81	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
82}
83
84func (RestoreSourceType) Descriptor() protoreflect.EnumDescriptor {
85	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_enumTypes[0].Descriptor()
86}
87
88func (RestoreSourceType) Type() protoreflect.EnumType {
89	return &file_google_spanner_admin_database_v1_spanner_database_admin_proto_enumTypes[0]
90}
91
92func (x RestoreSourceType) Number() protoreflect.EnumNumber {
93	return protoreflect.EnumNumber(x)
94}
95
96// Deprecated: Use RestoreSourceType.Descriptor instead.
97func (RestoreSourceType) EnumDescriptor() ([]byte, []int) {
98	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{0}
99}
100
101// Indicates the current state of the database.
102type Database_State int32
103
104const (
105	// Not specified.
106	Database_STATE_UNSPECIFIED Database_State = 0
107	// The database is still being created. Operations on the database may fail
108	// with `FAILED_PRECONDITION` in this state.
109	Database_CREATING Database_State = 1
110	// The database is fully created and ready for use.
111	Database_READY Database_State = 2
112	// The database is fully created and ready for use, but is still
113	// being optimized for performance and cannot handle full load.
114	//
115	// In this state, the database still references the backup
116	// it was restore from, preventing the backup
117	// from being deleted. When optimizations are complete, the full performance
118	// of the database will be restored, and the database will transition to
119	// `READY` state.
120	Database_READY_OPTIMIZING Database_State = 3
121)
122
123// Enum value maps for Database_State.
124var (
125	Database_State_name = map[int32]string{
126		0: "STATE_UNSPECIFIED",
127		1: "CREATING",
128		2: "READY",
129		3: "READY_OPTIMIZING",
130	}
131	Database_State_value = map[string]int32{
132		"STATE_UNSPECIFIED": 0,
133		"CREATING":          1,
134		"READY":             2,
135		"READY_OPTIMIZING":  3,
136	}
137)
138
139func (x Database_State) Enum() *Database_State {
140	p := new(Database_State)
141	*p = x
142	return p
143}
144
145func (x Database_State) String() string {
146	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
147}
148
149func (Database_State) Descriptor() protoreflect.EnumDescriptor {
150	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_enumTypes[1].Descriptor()
151}
152
153func (Database_State) Type() protoreflect.EnumType {
154	return &file_google_spanner_admin_database_v1_spanner_database_admin_proto_enumTypes[1]
155}
156
157func (x Database_State) Number() protoreflect.EnumNumber {
158	return protoreflect.EnumNumber(x)
159}
160
161// Deprecated: Use Database_State.Descriptor instead.
162func (Database_State) EnumDescriptor() ([]byte, []int) {
163	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{1, 0}
164}
165
166// Information about the database restore.
167type RestoreInfo struct {
168	state         protoimpl.MessageState
169	sizeCache     protoimpl.SizeCache
170	unknownFields protoimpl.UnknownFields
171
172	// The type of the restore source.
173	SourceType RestoreSourceType `protobuf:"varint,1,opt,name=source_type,json=sourceType,proto3,enum=google.spanner.admin.database.v1.RestoreSourceType" json:"source_type,omitempty"`
174	// Information about the source used to restore the database.
175	//
176	// Types that are assignable to SourceInfo:
177	//	*RestoreInfo_BackupInfo
178	SourceInfo isRestoreInfo_SourceInfo `protobuf_oneof:"source_info"`
179}
180
181func (x *RestoreInfo) Reset() {
182	*x = RestoreInfo{}
183	if protoimpl.UnsafeEnabled {
184		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[0]
185		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
186		ms.StoreMessageInfo(mi)
187	}
188}
189
190func (x *RestoreInfo) String() string {
191	return protoimpl.X.MessageStringOf(x)
192}
193
194func (*RestoreInfo) ProtoMessage() {}
195
196func (x *RestoreInfo) ProtoReflect() protoreflect.Message {
197	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[0]
198	if protoimpl.UnsafeEnabled && x != nil {
199		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
200		if ms.LoadMessageInfo() == nil {
201			ms.StoreMessageInfo(mi)
202		}
203		return ms
204	}
205	return mi.MessageOf(x)
206}
207
208// Deprecated: Use RestoreInfo.ProtoReflect.Descriptor instead.
209func (*RestoreInfo) Descriptor() ([]byte, []int) {
210	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{0}
211}
212
213func (x *RestoreInfo) GetSourceType() RestoreSourceType {
214	if x != nil {
215		return x.SourceType
216	}
217	return RestoreSourceType_TYPE_UNSPECIFIED
218}
219
220func (m *RestoreInfo) GetSourceInfo() isRestoreInfo_SourceInfo {
221	if m != nil {
222		return m.SourceInfo
223	}
224	return nil
225}
226
227func (x *RestoreInfo) GetBackupInfo() *BackupInfo {
228	if x, ok := x.GetSourceInfo().(*RestoreInfo_BackupInfo); ok {
229		return x.BackupInfo
230	}
231	return nil
232}
233
234type isRestoreInfo_SourceInfo interface {
235	isRestoreInfo_SourceInfo()
236}
237
238type RestoreInfo_BackupInfo struct {
239	// Information about the backup used to restore the database. The backup
240	// may no longer exist.
241	BackupInfo *BackupInfo `protobuf:"bytes,2,opt,name=backup_info,json=backupInfo,proto3,oneof"`
242}
243
244func (*RestoreInfo_BackupInfo) isRestoreInfo_SourceInfo() {}
245
246// A Cloud Spanner database.
247type Database struct {
248	state         protoimpl.MessageState
249	sizeCache     protoimpl.SizeCache
250	unknownFields protoimpl.UnknownFields
251
252	// Required. The name of the database. Values are of the form
253	// `projects/<project>/instances/<instance>/databases/<database>`,
254	// where `<database>` is as specified in the `CREATE DATABASE`
255	// statement. This name can be passed to other API methods to
256	// identify the database.
257	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
258	// Output only. The current database state.
259	State Database_State `protobuf:"varint,2,opt,name=state,proto3,enum=google.spanner.admin.database.v1.Database_State" json:"state,omitempty"`
260	// Output only. If exists, the time at which the database creation started.
261	CreateTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
262	// Output only. Applicable only for restored databases. Contains information
263	// about the restore source.
264	RestoreInfo *RestoreInfo `protobuf:"bytes,4,opt,name=restore_info,json=restoreInfo,proto3" json:"restore_info,omitempty"`
265}
266
267func (x *Database) Reset() {
268	*x = Database{}
269	if protoimpl.UnsafeEnabled {
270		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[1]
271		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
272		ms.StoreMessageInfo(mi)
273	}
274}
275
276func (x *Database) String() string {
277	return protoimpl.X.MessageStringOf(x)
278}
279
280func (*Database) ProtoMessage() {}
281
282func (x *Database) ProtoReflect() protoreflect.Message {
283	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[1]
284	if protoimpl.UnsafeEnabled && x != nil {
285		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
286		if ms.LoadMessageInfo() == nil {
287			ms.StoreMessageInfo(mi)
288		}
289		return ms
290	}
291	return mi.MessageOf(x)
292}
293
294// Deprecated: Use Database.ProtoReflect.Descriptor instead.
295func (*Database) Descriptor() ([]byte, []int) {
296	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{1}
297}
298
299func (x *Database) GetName() string {
300	if x != nil {
301		return x.Name
302	}
303	return ""
304}
305
306func (x *Database) GetState() Database_State {
307	if x != nil {
308		return x.State
309	}
310	return Database_STATE_UNSPECIFIED
311}
312
313func (x *Database) GetCreateTime() *timestamp.Timestamp {
314	if x != nil {
315		return x.CreateTime
316	}
317	return nil
318}
319
320func (x *Database) GetRestoreInfo() *RestoreInfo {
321	if x != nil {
322		return x.RestoreInfo
323	}
324	return nil
325}
326
327// The request for [ListDatabases][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases].
328type ListDatabasesRequest struct {
329	state         protoimpl.MessageState
330	sizeCache     protoimpl.SizeCache
331	unknownFields protoimpl.UnknownFields
332
333	// Required. The instance whose databases should be listed.
334	// Values are of the form `projects/<project>/instances/<instance>`.
335	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
336	// Number of databases to be returned in the response. If 0 or less,
337	// defaults to the server's maximum allowed page size.
338	PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
339	// If non-empty, `page_token` should contain a
340	// [next_page_token][google.spanner.admin.database.v1.ListDatabasesResponse.next_page_token] from a
341	// previous [ListDatabasesResponse][google.spanner.admin.database.v1.ListDatabasesResponse].
342	PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
343}
344
345func (x *ListDatabasesRequest) Reset() {
346	*x = ListDatabasesRequest{}
347	if protoimpl.UnsafeEnabled {
348		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[2]
349		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
350		ms.StoreMessageInfo(mi)
351	}
352}
353
354func (x *ListDatabasesRequest) String() string {
355	return protoimpl.X.MessageStringOf(x)
356}
357
358func (*ListDatabasesRequest) ProtoMessage() {}
359
360func (x *ListDatabasesRequest) ProtoReflect() protoreflect.Message {
361	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[2]
362	if protoimpl.UnsafeEnabled && x != nil {
363		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
364		if ms.LoadMessageInfo() == nil {
365			ms.StoreMessageInfo(mi)
366		}
367		return ms
368	}
369	return mi.MessageOf(x)
370}
371
372// Deprecated: Use ListDatabasesRequest.ProtoReflect.Descriptor instead.
373func (*ListDatabasesRequest) Descriptor() ([]byte, []int) {
374	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{2}
375}
376
377func (x *ListDatabasesRequest) GetParent() string {
378	if x != nil {
379		return x.Parent
380	}
381	return ""
382}
383
384func (x *ListDatabasesRequest) GetPageSize() int32 {
385	if x != nil {
386		return x.PageSize
387	}
388	return 0
389}
390
391func (x *ListDatabasesRequest) GetPageToken() string {
392	if x != nil {
393		return x.PageToken
394	}
395	return ""
396}
397
398// The response for [ListDatabases][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases].
399type ListDatabasesResponse struct {
400	state         protoimpl.MessageState
401	sizeCache     protoimpl.SizeCache
402	unknownFields protoimpl.UnknownFields
403
404	// Databases that matched the request.
405	Databases []*Database `protobuf:"bytes,1,rep,name=databases,proto3" json:"databases,omitempty"`
406	// `next_page_token` can be sent in a subsequent
407	// [ListDatabases][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases] call to fetch more
408	// of the matching databases.
409	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
410}
411
412func (x *ListDatabasesResponse) Reset() {
413	*x = ListDatabasesResponse{}
414	if protoimpl.UnsafeEnabled {
415		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[3]
416		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
417		ms.StoreMessageInfo(mi)
418	}
419}
420
421func (x *ListDatabasesResponse) String() string {
422	return protoimpl.X.MessageStringOf(x)
423}
424
425func (*ListDatabasesResponse) ProtoMessage() {}
426
427func (x *ListDatabasesResponse) ProtoReflect() protoreflect.Message {
428	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[3]
429	if protoimpl.UnsafeEnabled && x != nil {
430		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
431		if ms.LoadMessageInfo() == nil {
432			ms.StoreMessageInfo(mi)
433		}
434		return ms
435	}
436	return mi.MessageOf(x)
437}
438
439// Deprecated: Use ListDatabasesResponse.ProtoReflect.Descriptor instead.
440func (*ListDatabasesResponse) Descriptor() ([]byte, []int) {
441	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{3}
442}
443
444func (x *ListDatabasesResponse) GetDatabases() []*Database {
445	if x != nil {
446		return x.Databases
447	}
448	return nil
449}
450
451func (x *ListDatabasesResponse) GetNextPageToken() string {
452	if x != nil {
453		return x.NextPageToken
454	}
455	return ""
456}
457
458// The request for [CreateDatabase][google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase].
459type CreateDatabaseRequest struct {
460	state         protoimpl.MessageState
461	sizeCache     protoimpl.SizeCache
462	unknownFields protoimpl.UnknownFields
463
464	// Required. The name of the instance that will serve the new database.
465	// Values are of the form `projects/<project>/instances/<instance>`.
466	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
467	// Required. A `CREATE DATABASE` statement, which specifies the ID of the
468	// new database.  The database ID must conform to the regular expression
469	// `[a-z][a-z0-9_\-]*[a-z0-9]` and be between 2 and 30 characters in length.
470	// If the database ID is a reserved word or if it contains a hyphen, the
471	// database ID must be enclosed in backticks (`` ` ``).
472	CreateStatement string `protobuf:"bytes,2,opt,name=create_statement,json=createStatement,proto3" json:"create_statement,omitempty"`
473	// Optional. A list of DDL statements to run inside the newly created
474	// database. Statements can create tables, indexes, etc. These
475	// statements execute atomically with the creation of the database:
476	// if there is an error in any statement, the database is not created.
477	ExtraStatements []string `protobuf:"bytes,3,rep,name=extra_statements,json=extraStatements,proto3" json:"extra_statements,omitempty"`
478}
479
480func (x *CreateDatabaseRequest) Reset() {
481	*x = CreateDatabaseRequest{}
482	if protoimpl.UnsafeEnabled {
483		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[4]
484		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
485		ms.StoreMessageInfo(mi)
486	}
487}
488
489func (x *CreateDatabaseRequest) String() string {
490	return protoimpl.X.MessageStringOf(x)
491}
492
493func (*CreateDatabaseRequest) ProtoMessage() {}
494
495func (x *CreateDatabaseRequest) ProtoReflect() protoreflect.Message {
496	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[4]
497	if protoimpl.UnsafeEnabled && x != nil {
498		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
499		if ms.LoadMessageInfo() == nil {
500			ms.StoreMessageInfo(mi)
501		}
502		return ms
503	}
504	return mi.MessageOf(x)
505}
506
507// Deprecated: Use CreateDatabaseRequest.ProtoReflect.Descriptor instead.
508func (*CreateDatabaseRequest) Descriptor() ([]byte, []int) {
509	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{4}
510}
511
512func (x *CreateDatabaseRequest) GetParent() string {
513	if x != nil {
514		return x.Parent
515	}
516	return ""
517}
518
519func (x *CreateDatabaseRequest) GetCreateStatement() string {
520	if x != nil {
521		return x.CreateStatement
522	}
523	return ""
524}
525
526func (x *CreateDatabaseRequest) GetExtraStatements() []string {
527	if x != nil {
528		return x.ExtraStatements
529	}
530	return nil
531}
532
533// Metadata type for the operation returned by
534// [CreateDatabase][google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase].
535type CreateDatabaseMetadata struct {
536	state         protoimpl.MessageState
537	sizeCache     protoimpl.SizeCache
538	unknownFields protoimpl.UnknownFields
539
540	// The database being created.
541	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
542}
543
544func (x *CreateDatabaseMetadata) Reset() {
545	*x = CreateDatabaseMetadata{}
546	if protoimpl.UnsafeEnabled {
547		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[5]
548		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
549		ms.StoreMessageInfo(mi)
550	}
551}
552
553func (x *CreateDatabaseMetadata) String() string {
554	return protoimpl.X.MessageStringOf(x)
555}
556
557func (*CreateDatabaseMetadata) ProtoMessage() {}
558
559func (x *CreateDatabaseMetadata) ProtoReflect() protoreflect.Message {
560	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[5]
561	if protoimpl.UnsafeEnabled && x != nil {
562		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
563		if ms.LoadMessageInfo() == nil {
564			ms.StoreMessageInfo(mi)
565		}
566		return ms
567	}
568	return mi.MessageOf(x)
569}
570
571// Deprecated: Use CreateDatabaseMetadata.ProtoReflect.Descriptor instead.
572func (*CreateDatabaseMetadata) Descriptor() ([]byte, []int) {
573	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{5}
574}
575
576func (x *CreateDatabaseMetadata) GetDatabase() string {
577	if x != nil {
578		return x.Database
579	}
580	return ""
581}
582
583// The request for [GetDatabase][google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase].
584type GetDatabaseRequest struct {
585	state         protoimpl.MessageState
586	sizeCache     protoimpl.SizeCache
587	unknownFields protoimpl.UnknownFields
588
589	// Required. The name of the requested database. Values are of the form
590	// `projects/<project>/instances/<instance>/databases/<database>`.
591	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
592}
593
594func (x *GetDatabaseRequest) Reset() {
595	*x = GetDatabaseRequest{}
596	if protoimpl.UnsafeEnabled {
597		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[6]
598		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
599		ms.StoreMessageInfo(mi)
600	}
601}
602
603func (x *GetDatabaseRequest) String() string {
604	return protoimpl.X.MessageStringOf(x)
605}
606
607func (*GetDatabaseRequest) ProtoMessage() {}
608
609func (x *GetDatabaseRequest) ProtoReflect() protoreflect.Message {
610	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[6]
611	if protoimpl.UnsafeEnabled && x != nil {
612		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
613		if ms.LoadMessageInfo() == nil {
614			ms.StoreMessageInfo(mi)
615		}
616		return ms
617	}
618	return mi.MessageOf(x)
619}
620
621// Deprecated: Use GetDatabaseRequest.ProtoReflect.Descriptor instead.
622func (*GetDatabaseRequest) Descriptor() ([]byte, []int) {
623	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{6}
624}
625
626func (x *GetDatabaseRequest) GetName() string {
627	if x != nil {
628		return x.Name
629	}
630	return ""
631}
632
633// Enqueues the given DDL statements to be applied, in order but not
634// necessarily all at once, to the database schema at some point (or
635// points) in the future. The server checks that the statements
636// are executable (syntactically valid, name tables that exist, etc.)
637// before enqueueing them, but they may still fail upon
638// later execution (e.g., if a statement from another batch of
639// statements is applied first and it conflicts in some way, or if
640// there is some data-related problem like a `NULL` value in a column to
641// which `NOT NULL` would be added). If a statement fails, all
642// subsequent statements in the batch are automatically cancelled.
643//
644// Each batch of statements is assigned a name which can be used with
645// the [Operations][google.longrunning.Operations] API to monitor
646// progress. See the
647// [operation_id][google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.operation_id] field for more
648// details.
649type UpdateDatabaseDdlRequest struct {
650	state         protoimpl.MessageState
651	sizeCache     protoimpl.SizeCache
652	unknownFields protoimpl.UnknownFields
653
654	// Required. The database to update.
655	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
656	// Required. DDL statements to be applied to the database.
657	Statements []string `protobuf:"bytes,2,rep,name=statements,proto3" json:"statements,omitempty"`
658	// If empty, the new update request is assigned an
659	// automatically-generated operation ID. Otherwise, `operation_id`
660	// is used to construct the name of the resulting
661	// [Operation][google.longrunning.Operation].
662	//
663	// Specifying an explicit operation ID simplifies determining
664	// whether the statements were executed in the event that the
665	// [UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl] call is replayed,
666	// or the return value is otherwise lost: the [database][google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.database] and
667	// `operation_id` fields can be combined to form the
668	// [name][google.longrunning.Operation.name] of the resulting
669	// [longrunning.Operation][google.longrunning.Operation]: `<database>/operations/<operation_id>`.
670	//
671	// `operation_id` should be unique within the database, and must be
672	// a valid identifier: `[a-z][a-z0-9_]*`. Note that
673	// automatically-generated operation IDs always begin with an
674	// underscore. If the named operation already exists,
675	// [UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl] returns
676	// `ALREADY_EXISTS`.
677	OperationId string `protobuf:"bytes,3,opt,name=operation_id,json=operationId,proto3" json:"operation_id,omitempty"`
678}
679
680func (x *UpdateDatabaseDdlRequest) Reset() {
681	*x = UpdateDatabaseDdlRequest{}
682	if protoimpl.UnsafeEnabled {
683		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[7]
684		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
685		ms.StoreMessageInfo(mi)
686	}
687}
688
689func (x *UpdateDatabaseDdlRequest) String() string {
690	return protoimpl.X.MessageStringOf(x)
691}
692
693func (*UpdateDatabaseDdlRequest) ProtoMessage() {}
694
695func (x *UpdateDatabaseDdlRequest) ProtoReflect() protoreflect.Message {
696	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[7]
697	if protoimpl.UnsafeEnabled && x != nil {
698		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
699		if ms.LoadMessageInfo() == nil {
700			ms.StoreMessageInfo(mi)
701		}
702		return ms
703	}
704	return mi.MessageOf(x)
705}
706
707// Deprecated: Use UpdateDatabaseDdlRequest.ProtoReflect.Descriptor instead.
708func (*UpdateDatabaseDdlRequest) Descriptor() ([]byte, []int) {
709	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{7}
710}
711
712func (x *UpdateDatabaseDdlRequest) GetDatabase() string {
713	if x != nil {
714		return x.Database
715	}
716	return ""
717}
718
719func (x *UpdateDatabaseDdlRequest) GetStatements() []string {
720	if x != nil {
721		return x.Statements
722	}
723	return nil
724}
725
726func (x *UpdateDatabaseDdlRequest) GetOperationId() string {
727	if x != nil {
728		return x.OperationId
729	}
730	return ""
731}
732
733// Metadata type for the operation returned by
734// [UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl].
735type UpdateDatabaseDdlMetadata struct {
736	state         protoimpl.MessageState
737	sizeCache     protoimpl.SizeCache
738	unknownFields protoimpl.UnknownFields
739
740	// The database being modified.
741	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
742	// For an update this list contains all the statements. For an
743	// individual statement, this list contains only that statement.
744	Statements []string `protobuf:"bytes,2,rep,name=statements,proto3" json:"statements,omitempty"`
745	// Reports the commit timestamps of all statements that have
746	// succeeded so far, where `commit_timestamps[i]` is the commit
747	// timestamp for the statement `statements[i]`.
748	CommitTimestamps []*timestamp.Timestamp `protobuf:"bytes,3,rep,name=commit_timestamps,json=commitTimestamps,proto3" json:"commit_timestamps,omitempty"`
749}
750
751func (x *UpdateDatabaseDdlMetadata) Reset() {
752	*x = UpdateDatabaseDdlMetadata{}
753	if protoimpl.UnsafeEnabled {
754		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[8]
755		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
756		ms.StoreMessageInfo(mi)
757	}
758}
759
760func (x *UpdateDatabaseDdlMetadata) String() string {
761	return protoimpl.X.MessageStringOf(x)
762}
763
764func (*UpdateDatabaseDdlMetadata) ProtoMessage() {}
765
766func (x *UpdateDatabaseDdlMetadata) ProtoReflect() protoreflect.Message {
767	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[8]
768	if protoimpl.UnsafeEnabled && x != nil {
769		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
770		if ms.LoadMessageInfo() == nil {
771			ms.StoreMessageInfo(mi)
772		}
773		return ms
774	}
775	return mi.MessageOf(x)
776}
777
778// Deprecated: Use UpdateDatabaseDdlMetadata.ProtoReflect.Descriptor instead.
779func (*UpdateDatabaseDdlMetadata) Descriptor() ([]byte, []int) {
780	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{8}
781}
782
783func (x *UpdateDatabaseDdlMetadata) GetDatabase() string {
784	if x != nil {
785		return x.Database
786	}
787	return ""
788}
789
790func (x *UpdateDatabaseDdlMetadata) GetStatements() []string {
791	if x != nil {
792		return x.Statements
793	}
794	return nil
795}
796
797func (x *UpdateDatabaseDdlMetadata) GetCommitTimestamps() []*timestamp.Timestamp {
798	if x != nil {
799		return x.CommitTimestamps
800	}
801	return nil
802}
803
804// The request for [DropDatabase][google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase].
805type DropDatabaseRequest struct {
806	state         protoimpl.MessageState
807	sizeCache     protoimpl.SizeCache
808	unknownFields protoimpl.UnknownFields
809
810	// Required. The database to be dropped.
811	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
812}
813
814func (x *DropDatabaseRequest) Reset() {
815	*x = DropDatabaseRequest{}
816	if protoimpl.UnsafeEnabled {
817		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[9]
818		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
819		ms.StoreMessageInfo(mi)
820	}
821}
822
823func (x *DropDatabaseRequest) String() string {
824	return protoimpl.X.MessageStringOf(x)
825}
826
827func (*DropDatabaseRequest) ProtoMessage() {}
828
829func (x *DropDatabaseRequest) ProtoReflect() protoreflect.Message {
830	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[9]
831	if protoimpl.UnsafeEnabled && x != nil {
832		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
833		if ms.LoadMessageInfo() == nil {
834			ms.StoreMessageInfo(mi)
835		}
836		return ms
837	}
838	return mi.MessageOf(x)
839}
840
841// Deprecated: Use DropDatabaseRequest.ProtoReflect.Descriptor instead.
842func (*DropDatabaseRequest) Descriptor() ([]byte, []int) {
843	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{9}
844}
845
846func (x *DropDatabaseRequest) GetDatabase() string {
847	if x != nil {
848		return x.Database
849	}
850	return ""
851}
852
853// The request for [GetDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl].
854type GetDatabaseDdlRequest struct {
855	state         protoimpl.MessageState
856	sizeCache     protoimpl.SizeCache
857	unknownFields protoimpl.UnknownFields
858
859	// Required. The database whose schema we wish to get.
860	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
861}
862
863func (x *GetDatabaseDdlRequest) Reset() {
864	*x = GetDatabaseDdlRequest{}
865	if protoimpl.UnsafeEnabled {
866		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[10]
867		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
868		ms.StoreMessageInfo(mi)
869	}
870}
871
872func (x *GetDatabaseDdlRequest) String() string {
873	return protoimpl.X.MessageStringOf(x)
874}
875
876func (*GetDatabaseDdlRequest) ProtoMessage() {}
877
878func (x *GetDatabaseDdlRequest) ProtoReflect() protoreflect.Message {
879	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[10]
880	if protoimpl.UnsafeEnabled && x != nil {
881		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
882		if ms.LoadMessageInfo() == nil {
883			ms.StoreMessageInfo(mi)
884		}
885		return ms
886	}
887	return mi.MessageOf(x)
888}
889
890// Deprecated: Use GetDatabaseDdlRequest.ProtoReflect.Descriptor instead.
891func (*GetDatabaseDdlRequest) Descriptor() ([]byte, []int) {
892	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{10}
893}
894
895func (x *GetDatabaseDdlRequest) GetDatabase() string {
896	if x != nil {
897		return x.Database
898	}
899	return ""
900}
901
902// The response for [GetDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl].
903type GetDatabaseDdlResponse struct {
904	state         protoimpl.MessageState
905	sizeCache     protoimpl.SizeCache
906	unknownFields protoimpl.UnknownFields
907
908	// A list of formatted DDL statements defining the schema of the database
909	// specified in the request.
910	Statements []string `protobuf:"bytes,1,rep,name=statements,proto3" json:"statements,omitempty"`
911}
912
913func (x *GetDatabaseDdlResponse) Reset() {
914	*x = GetDatabaseDdlResponse{}
915	if protoimpl.UnsafeEnabled {
916		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[11]
917		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
918		ms.StoreMessageInfo(mi)
919	}
920}
921
922func (x *GetDatabaseDdlResponse) String() string {
923	return protoimpl.X.MessageStringOf(x)
924}
925
926func (*GetDatabaseDdlResponse) ProtoMessage() {}
927
928func (x *GetDatabaseDdlResponse) ProtoReflect() protoreflect.Message {
929	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[11]
930	if protoimpl.UnsafeEnabled && x != nil {
931		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
932		if ms.LoadMessageInfo() == nil {
933			ms.StoreMessageInfo(mi)
934		}
935		return ms
936	}
937	return mi.MessageOf(x)
938}
939
940// Deprecated: Use GetDatabaseDdlResponse.ProtoReflect.Descriptor instead.
941func (*GetDatabaseDdlResponse) Descriptor() ([]byte, []int) {
942	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{11}
943}
944
945func (x *GetDatabaseDdlResponse) GetStatements() []string {
946	if x != nil {
947		return x.Statements
948	}
949	return nil
950}
951
952// The request for
953// [ListDatabaseOperations][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations].
954type ListDatabaseOperationsRequest struct {
955	state         protoimpl.MessageState
956	sizeCache     protoimpl.SizeCache
957	unknownFields protoimpl.UnknownFields
958
959	// Required. The instance of the database operations.
960	// Values are of the form `projects/<project>/instances/<instance>`.
961	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
962	// An expression that filters the list of returned operations.
963	//
964	// A filter expression consists of a field name, a
965	// comparison operator, and a value for filtering.
966	// The value must be a string, a number, or a boolean. The comparison operator
967	// must be one of: `<`, `>`, `<=`, `>=`, `!=`, `=`, or `:`.
968	// Colon `:` is the contains operator. Filter rules are not case sensitive.
969	//
970	// The following fields in the [Operation][google.longrunning.Operation]
971	// are eligible for filtering:
972	//
973	//   * `name` - The name of the long-running operation
974	//   * `done` - False if the operation is in progress, else true.
975	//   * `metadata.@type` - the type of metadata. For example, the type string
976	//      for [RestoreDatabaseMetadata][google.spanner.admin.database.v1.RestoreDatabaseMetadata] is
977	//      `type.googleapis.com/google.spanner.admin.database.v1.RestoreDatabaseMetadata`.
978	//   * `metadata.<field_name>` - any field in metadata.value.
979	//   * `error` - Error associated with the long-running operation.
980	//   * `response.@type` - the type of response.
981	//   * `response.<field_name>` - any field in response.value.
982	//
983	// You can combine multiple expressions by enclosing each expression in
984	// parentheses. By default, expressions are combined with AND logic. However,
985	// you can specify AND, OR, and NOT logic explicitly.
986	//
987	// Here are a few examples:
988	//
989	//   * `done:true` - The operation is complete.
990	//   * `(metadata.@type=type.googleapis.com/google.spanner.admin.database.v1.RestoreDatabaseMetadata) AND` <br/>
991	//     `(metadata.source_type:BACKUP) AND` <br/>
992	//     `(metadata.backup_info.backup:backup_howl) AND` <br/>
993	//     `(metadata.name:restored_howl) AND` <br/>
994	//     `(metadata.progress.start_time < \"2018-03-28T14:50:00Z\") AND` <br/>
995	//     `(error:*)` - Return operations where:
996	//     * The operation's metadata type is [RestoreDatabaseMetadata][google.spanner.admin.database.v1.RestoreDatabaseMetadata].
997	//     * The database is restored from a backup.
998	//     * The backup name contains "backup_howl".
999	//     * The restored database's name contains "restored_howl".
1000	//     * The operation started before 2018-03-28T14:50:00Z.
1001	//     * The operation resulted in an error.
1002	Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"`
1003	// Number of operations to be returned in the response. If 0 or
1004	// less, defaults to the server's maximum allowed page size.
1005	PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
1006	// If non-empty, `page_token` should contain a
1007	// [next_page_token][google.spanner.admin.database.v1.ListDatabaseOperationsResponse.next_page_token]
1008	// from a previous [ListDatabaseOperationsResponse][google.spanner.admin.database.v1.ListDatabaseOperationsResponse] to the
1009	// same `parent` and with the same `filter`.
1010	PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
1011}
1012
1013func (x *ListDatabaseOperationsRequest) Reset() {
1014	*x = ListDatabaseOperationsRequest{}
1015	if protoimpl.UnsafeEnabled {
1016		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[12]
1017		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1018		ms.StoreMessageInfo(mi)
1019	}
1020}
1021
1022func (x *ListDatabaseOperationsRequest) String() string {
1023	return protoimpl.X.MessageStringOf(x)
1024}
1025
1026func (*ListDatabaseOperationsRequest) ProtoMessage() {}
1027
1028func (x *ListDatabaseOperationsRequest) ProtoReflect() protoreflect.Message {
1029	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[12]
1030	if protoimpl.UnsafeEnabled && x != nil {
1031		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1032		if ms.LoadMessageInfo() == nil {
1033			ms.StoreMessageInfo(mi)
1034		}
1035		return ms
1036	}
1037	return mi.MessageOf(x)
1038}
1039
1040// Deprecated: Use ListDatabaseOperationsRequest.ProtoReflect.Descriptor instead.
1041func (*ListDatabaseOperationsRequest) Descriptor() ([]byte, []int) {
1042	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{12}
1043}
1044
1045func (x *ListDatabaseOperationsRequest) GetParent() string {
1046	if x != nil {
1047		return x.Parent
1048	}
1049	return ""
1050}
1051
1052func (x *ListDatabaseOperationsRequest) GetFilter() string {
1053	if x != nil {
1054		return x.Filter
1055	}
1056	return ""
1057}
1058
1059func (x *ListDatabaseOperationsRequest) GetPageSize() int32 {
1060	if x != nil {
1061		return x.PageSize
1062	}
1063	return 0
1064}
1065
1066func (x *ListDatabaseOperationsRequest) GetPageToken() string {
1067	if x != nil {
1068		return x.PageToken
1069	}
1070	return ""
1071}
1072
1073// The response for
1074// [ListDatabaseOperations][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations].
1075type ListDatabaseOperationsResponse struct {
1076	state         protoimpl.MessageState
1077	sizeCache     protoimpl.SizeCache
1078	unknownFields protoimpl.UnknownFields
1079
1080	// The list of matching database [long-running
1081	// operations][google.longrunning.Operation]. Each operation's name will be
1082	// prefixed by the database's name. The operation's
1083	// [metadata][google.longrunning.Operation.metadata] field type
1084	// `metadata.type_url` describes the type of the metadata.
1085	Operations []*longrunning.Operation `protobuf:"bytes,1,rep,name=operations,proto3" json:"operations,omitempty"`
1086	// `next_page_token` can be sent in a subsequent
1087	// [ListDatabaseOperations][google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations]
1088	// call to fetch more of the matching metadata.
1089	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
1090}
1091
1092func (x *ListDatabaseOperationsResponse) Reset() {
1093	*x = ListDatabaseOperationsResponse{}
1094	if protoimpl.UnsafeEnabled {
1095		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[13]
1096		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1097		ms.StoreMessageInfo(mi)
1098	}
1099}
1100
1101func (x *ListDatabaseOperationsResponse) String() string {
1102	return protoimpl.X.MessageStringOf(x)
1103}
1104
1105func (*ListDatabaseOperationsResponse) ProtoMessage() {}
1106
1107func (x *ListDatabaseOperationsResponse) ProtoReflect() protoreflect.Message {
1108	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[13]
1109	if protoimpl.UnsafeEnabled && x != nil {
1110		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1111		if ms.LoadMessageInfo() == nil {
1112			ms.StoreMessageInfo(mi)
1113		}
1114		return ms
1115	}
1116	return mi.MessageOf(x)
1117}
1118
1119// Deprecated: Use ListDatabaseOperationsResponse.ProtoReflect.Descriptor instead.
1120func (*ListDatabaseOperationsResponse) Descriptor() ([]byte, []int) {
1121	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{13}
1122}
1123
1124func (x *ListDatabaseOperationsResponse) GetOperations() []*longrunning.Operation {
1125	if x != nil {
1126		return x.Operations
1127	}
1128	return nil
1129}
1130
1131func (x *ListDatabaseOperationsResponse) GetNextPageToken() string {
1132	if x != nil {
1133		return x.NextPageToken
1134	}
1135	return ""
1136}
1137
1138// The request for
1139// [RestoreDatabase][google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase].
1140type RestoreDatabaseRequest struct {
1141	state         protoimpl.MessageState
1142	sizeCache     protoimpl.SizeCache
1143	unknownFields protoimpl.UnknownFields
1144
1145	// Required. The name of the instance in which to create the
1146	// restored database. This instance must be in the same project and
1147	// have the same instance configuration as the instance containing
1148	// the source backup. Values are of the form
1149	// `projects/<project>/instances/<instance>`.
1150	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
1151	// Required. The id of the database to create and restore to. This
1152	// database must not already exist. The `database_id` appended to
1153	// `parent` forms the full database name of the form
1154	// `projects/<project>/instances/<instance>/databases/<database_id>`.
1155	DatabaseId string `protobuf:"bytes,2,opt,name=database_id,json=databaseId,proto3" json:"database_id,omitempty"`
1156	// Required. The source from which to restore.
1157	//
1158	// Types that are assignable to Source:
1159	//	*RestoreDatabaseRequest_Backup
1160	Source isRestoreDatabaseRequest_Source `protobuf_oneof:"source"`
1161}
1162
1163func (x *RestoreDatabaseRequest) Reset() {
1164	*x = RestoreDatabaseRequest{}
1165	if protoimpl.UnsafeEnabled {
1166		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[14]
1167		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1168		ms.StoreMessageInfo(mi)
1169	}
1170}
1171
1172func (x *RestoreDatabaseRequest) String() string {
1173	return protoimpl.X.MessageStringOf(x)
1174}
1175
1176func (*RestoreDatabaseRequest) ProtoMessage() {}
1177
1178func (x *RestoreDatabaseRequest) ProtoReflect() protoreflect.Message {
1179	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[14]
1180	if protoimpl.UnsafeEnabled && x != nil {
1181		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1182		if ms.LoadMessageInfo() == nil {
1183			ms.StoreMessageInfo(mi)
1184		}
1185		return ms
1186	}
1187	return mi.MessageOf(x)
1188}
1189
1190// Deprecated: Use RestoreDatabaseRequest.ProtoReflect.Descriptor instead.
1191func (*RestoreDatabaseRequest) Descriptor() ([]byte, []int) {
1192	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{14}
1193}
1194
1195func (x *RestoreDatabaseRequest) GetParent() string {
1196	if x != nil {
1197		return x.Parent
1198	}
1199	return ""
1200}
1201
1202func (x *RestoreDatabaseRequest) GetDatabaseId() string {
1203	if x != nil {
1204		return x.DatabaseId
1205	}
1206	return ""
1207}
1208
1209func (m *RestoreDatabaseRequest) GetSource() isRestoreDatabaseRequest_Source {
1210	if m != nil {
1211		return m.Source
1212	}
1213	return nil
1214}
1215
1216func (x *RestoreDatabaseRequest) GetBackup() string {
1217	if x, ok := x.GetSource().(*RestoreDatabaseRequest_Backup); ok {
1218		return x.Backup
1219	}
1220	return ""
1221}
1222
1223type isRestoreDatabaseRequest_Source interface {
1224	isRestoreDatabaseRequest_Source()
1225}
1226
1227type RestoreDatabaseRequest_Backup struct {
1228	// Name of the backup from which to restore.  Values are of the form
1229	// `projects/<project>/instances/<instance>/backups/<backup>`.
1230	Backup string `protobuf:"bytes,3,opt,name=backup,proto3,oneof"`
1231}
1232
1233func (*RestoreDatabaseRequest_Backup) isRestoreDatabaseRequest_Source() {}
1234
1235// Metadata type for the long-running operation returned by
1236// [RestoreDatabase][google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase].
1237type RestoreDatabaseMetadata struct {
1238	state         protoimpl.MessageState
1239	sizeCache     protoimpl.SizeCache
1240	unknownFields protoimpl.UnknownFields
1241
1242	// Name of the database being created and restored to.
1243	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
1244	// The type of the restore source.
1245	SourceType RestoreSourceType `protobuf:"varint,2,opt,name=source_type,json=sourceType,proto3,enum=google.spanner.admin.database.v1.RestoreSourceType" json:"source_type,omitempty"`
1246	// Information about the source used to restore the database, as specified by
1247	// `source` in [RestoreDatabaseRequest][google.spanner.admin.database.v1.RestoreDatabaseRequest].
1248	//
1249	// Types that are assignable to SourceInfo:
1250	//	*RestoreDatabaseMetadata_BackupInfo
1251	SourceInfo isRestoreDatabaseMetadata_SourceInfo `protobuf_oneof:"source_info"`
1252	// The progress of the
1253	// [RestoreDatabase][google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase]
1254	// operation.
1255	Progress *OperationProgress `protobuf:"bytes,4,opt,name=progress,proto3" json:"progress,omitempty"`
1256	// The time at which cancellation of this operation was received.
1257	// [Operations.CancelOperation][google.longrunning.Operations.CancelOperation]
1258	// starts asynchronous cancellation on a long-running operation. The server
1259	// makes a best effort to cancel the operation, but success is not guaranteed.
1260	// Clients can use
1261	// [Operations.GetOperation][google.longrunning.Operations.GetOperation] or
1262	// other methods to check whether the cancellation succeeded or whether the
1263	// operation completed despite cancellation. On successful cancellation,
1264	// the operation is not deleted; instead, it becomes an operation with
1265	// an [Operation.error][google.longrunning.Operation.error] value with a
1266	// [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to `Code.CANCELLED`.
1267	CancelTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=cancel_time,json=cancelTime,proto3" json:"cancel_time,omitempty"`
1268	// If exists, the name of the long-running operation that will be used to
1269	// track the post-restore optimization process to optimize the performance of
1270	// the restored database, and remove the dependency on the restore source.
1271	// The name is of the form
1272	// `projects/<project>/instances/<instance>/databases/<database>/operations/<operation>`
1273	// where the <database> is the name of database being created and restored to.
1274	// The metadata type of the  long-running operation is
1275	// [OptimizeRestoredDatabaseMetadata][google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata]. This long-running operation will be
1276	// automatically created by the system after the RestoreDatabase long-running
1277	// operation completes successfully. This operation will not be created if the
1278	// restore was not successful.
1279	OptimizeDatabaseOperationName string `protobuf:"bytes,6,opt,name=optimize_database_operation_name,json=optimizeDatabaseOperationName,proto3" json:"optimize_database_operation_name,omitempty"`
1280}
1281
1282func (x *RestoreDatabaseMetadata) Reset() {
1283	*x = RestoreDatabaseMetadata{}
1284	if protoimpl.UnsafeEnabled {
1285		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[15]
1286		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1287		ms.StoreMessageInfo(mi)
1288	}
1289}
1290
1291func (x *RestoreDatabaseMetadata) String() string {
1292	return protoimpl.X.MessageStringOf(x)
1293}
1294
1295func (*RestoreDatabaseMetadata) ProtoMessage() {}
1296
1297func (x *RestoreDatabaseMetadata) ProtoReflect() protoreflect.Message {
1298	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[15]
1299	if protoimpl.UnsafeEnabled && x != nil {
1300		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1301		if ms.LoadMessageInfo() == nil {
1302			ms.StoreMessageInfo(mi)
1303		}
1304		return ms
1305	}
1306	return mi.MessageOf(x)
1307}
1308
1309// Deprecated: Use RestoreDatabaseMetadata.ProtoReflect.Descriptor instead.
1310func (*RestoreDatabaseMetadata) Descriptor() ([]byte, []int) {
1311	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{15}
1312}
1313
1314func (x *RestoreDatabaseMetadata) GetName() string {
1315	if x != nil {
1316		return x.Name
1317	}
1318	return ""
1319}
1320
1321func (x *RestoreDatabaseMetadata) GetSourceType() RestoreSourceType {
1322	if x != nil {
1323		return x.SourceType
1324	}
1325	return RestoreSourceType_TYPE_UNSPECIFIED
1326}
1327
1328func (m *RestoreDatabaseMetadata) GetSourceInfo() isRestoreDatabaseMetadata_SourceInfo {
1329	if m != nil {
1330		return m.SourceInfo
1331	}
1332	return nil
1333}
1334
1335func (x *RestoreDatabaseMetadata) GetBackupInfo() *BackupInfo {
1336	if x, ok := x.GetSourceInfo().(*RestoreDatabaseMetadata_BackupInfo); ok {
1337		return x.BackupInfo
1338	}
1339	return nil
1340}
1341
1342func (x *RestoreDatabaseMetadata) GetProgress() *OperationProgress {
1343	if x != nil {
1344		return x.Progress
1345	}
1346	return nil
1347}
1348
1349func (x *RestoreDatabaseMetadata) GetCancelTime() *timestamp.Timestamp {
1350	if x != nil {
1351		return x.CancelTime
1352	}
1353	return nil
1354}
1355
1356func (x *RestoreDatabaseMetadata) GetOptimizeDatabaseOperationName() string {
1357	if x != nil {
1358		return x.OptimizeDatabaseOperationName
1359	}
1360	return ""
1361}
1362
1363type isRestoreDatabaseMetadata_SourceInfo interface {
1364	isRestoreDatabaseMetadata_SourceInfo()
1365}
1366
1367type RestoreDatabaseMetadata_BackupInfo struct {
1368	// Information about the backup used to restore the database.
1369	BackupInfo *BackupInfo `protobuf:"bytes,3,opt,name=backup_info,json=backupInfo,proto3,oneof"`
1370}
1371
1372func (*RestoreDatabaseMetadata_BackupInfo) isRestoreDatabaseMetadata_SourceInfo() {}
1373
1374// Metadata type for the long-running operation used to track the progress
1375// of optimizations performed on a newly restored database. This long-running
1376// operation is automatically created by the system after the successful
1377// completion of a database restore, and cannot be cancelled.
1378type OptimizeRestoredDatabaseMetadata struct {
1379	state         protoimpl.MessageState
1380	sizeCache     protoimpl.SizeCache
1381	unknownFields protoimpl.UnknownFields
1382
1383	// Name of the restored database being optimized.
1384	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
1385	// The progress of the post-restore optimizations.
1386	Progress *OperationProgress `protobuf:"bytes,2,opt,name=progress,proto3" json:"progress,omitempty"`
1387}
1388
1389func (x *OptimizeRestoredDatabaseMetadata) Reset() {
1390	*x = OptimizeRestoredDatabaseMetadata{}
1391	if protoimpl.UnsafeEnabled {
1392		mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[16]
1393		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1394		ms.StoreMessageInfo(mi)
1395	}
1396}
1397
1398func (x *OptimizeRestoredDatabaseMetadata) String() string {
1399	return protoimpl.X.MessageStringOf(x)
1400}
1401
1402func (*OptimizeRestoredDatabaseMetadata) ProtoMessage() {}
1403
1404func (x *OptimizeRestoredDatabaseMetadata) ProtoReflect() protoreflect.Message {
1405	mi := &file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[16]
1406	if protoimpl.UnsafeEnabled && x != nil {
1407		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1408		if ms.LoadMessageInfo() == nil {
1409			ms.StoreMessageInfo(mi)
1410		}
1411		return ms
1412	}
1413	return mi.MessageOf(x)
1414}
1415
1416// Deprecated: Use OptimizeRestoredDatabaseMetadata.ProtoReflect.Descriptor instead.
1417func (*OptimizeRestoredDatabaseMetadata) Descriptor() ([]byte, []int) {
1418	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP(), []int{16}
1419}
1420
1421func (x *OptimizeRestoredDatabaseMetadata) GetName() string {
1422	if x != nil {
1423		return x.Name
1424	}
1425	return ""
1426}
1427
1428func (x *OptimizeRestoredDatabaseMetadata) GetProgress() *OperationProgress {
1429	if x != nil {
1430		return x.Progress
1431	}
1432	return nil
1433}
1434
1435var File_google_spanner_admin_database_v1_spanner_database_admin_proto protoreflect.FileDescriptor
1436
1437var file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDesc = []byte{
1438	0x0a, 0x3d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72,
1439	0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2f,
1440	0x76, 0x31, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62,
1441	0x61, 0x73, 0x65, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
1442	0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e,
1443	0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76,
1444	0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e,
1445	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
1446	0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65,
1447	0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1448	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76,
1449	0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1450	0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70,
1451	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, 0x6d,
1452	0x2f, 0x76, 0x31, 0x2f, 0x69, 0x61, 0x6d, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70,
1453	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, 0x6d,
1454	0x2f, 0x76, 0x31, 0x2f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1455	0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e,
1456	0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
1457	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
1458	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f,
1459	0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1460	0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
1461	0x6f, 0x74, 0x6f, 0x1a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x73, 0x70, 0x61, 0x6e,
1462	0x6e, 0x65, 0x72, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
1463	0x73, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x70, 0x72, 0x6f,
1464	0x74, 0x6f, 0x1a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x6e,
1465	0x65, 0x72, 0x2f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1466	0x65, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
1467	0x6f, 0x22, 0xc3, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x49, 0x6e, 0x66,
1468	0x6f, 0x12, 0x54, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65,
1469	0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1470	0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61,
1471	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72,
1472	0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x6f, 0x75,
1473	0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4f, 0x0a, 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x75,
1474	0x70, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67,
1475	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64,
1476	0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e,
1477	0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52, 0x0a, 0x62, 0x61,
1478	0x63, 0x6b, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x0d, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72,
1479	0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0xbc, 0x03, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61,
1480	0x62, 0x61, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
1481	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4b, 0x0a,
1482	0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x67,
1483	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64,
1484	0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e,
1485	0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03,
1486	0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72,
1487	0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
1488	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
1489	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03,
1490	0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x0c,
1491	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01,
1492	0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e,
1493	0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
1494	0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x49, 0x6e, 0x66,
1495	0x6f, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x49,
1496	0x6e, 0x66, 0x6f, 0x22, 0x4d, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11,
1497	0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
1498	0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10,
1499	0x01, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10,
1500	0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4d, 0x49, 0x5a, 0x49, 0x4e, 0x47,
1501	0x10, 0x03, 0x3a, 0x62, 0xea, 0x41, 0x5f, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72,
1502	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
1503	0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x3c, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
1504	0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x73,
1505	0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
1506	0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74,
1507	0x61, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x22, 0x93, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x44,
1508	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
1509	0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
1510	0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72,
1511	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
1512	0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
1513	0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20,
1514	0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a,
1515	0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28,
1516	0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x89, 0x01, 0x0a,
1517	0x15, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65,
1518	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
1519	0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1520	0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
1521	0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74,
1522	0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73,
1523	0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f,
1524	0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50,
1525	0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb8, 0x01, 0x0a, 0x15, 0x43, 0x72, 0x65,
1526	0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
1527	0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
1528	0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e,
1529	0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
1530	0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72,
1531	0x65, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74,
1532	0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
1533	0x41, 0x02, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d,
1534	0x65, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x73, 0x74, 0x61,
1535	0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0,
1536	0x41, 0x01, 0x52, 0x0f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65,
1537	0x6e, 0x74, 0x73, 0x22, 0x5a, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74,
1538	0x61, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x40, 0x0a,
1539	0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
1540	0x24, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f,
1541	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74,
1542	0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x22,
1543	0x51, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65,
1544	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
1545	0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61,
1546	0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
1547	0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x04, 0x6e, 0x61,
1548	0x6d, 0x65, 0x22, 0xa7, 0x01, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74,
1549	0x61, 0x62, 0x61, 0x73, 0x65, 0x44, 0x64, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
1550	0x43, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
1551	0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e, 0x6e,
1552	0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
1553	0x6d, 0x2f, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61,
1554	0x62, 0x61, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e,
1555	0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x73,
1556	0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x70, 0x65,
1557	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
1558	0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xc6, 0x01, 0x0a,
1559	0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44,
1560	0x64, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x40, 0x0a, 0x08, 0x64, 0x61,
1561	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x41,
1562	0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1563	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61,
1564	0x73, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a,
1565	0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09,
1566	0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x47, 0x0a, 0x11,
1567	0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
1568	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1569	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
1570	0x61, 0x6d, 0x70, 0x52, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73,
1571	0x74, 0x61, 0x6d, 0x70, 0x73, 0x22, 0x5a, 0x0a, 0x13, 0x44, 0x72, 0x6f, 0x70, 0x44, 0x61, 0x74,
1572	0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x08,
1573	0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27,
1574	0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e,
1575	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44,
1576	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1577	0x65, 0x22, 0x5c, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
1578	0x44, 0x64, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x08, 0x64, 0x61,
1579	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41,
1580	0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f,
1581	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74,
1582	0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x22,
1583	0x38, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44, 0x64,
1584	0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61,
1585	0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x73,
1586	0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x1d, 0x4c, 0x69,
1587	0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
1588	0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70,
1589	0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02,
1590	0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f,
1591	0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x73, 0x74,
1592	0x61, 0x6e, 0x63, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06,
1593	0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69,
1594	0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a,
1595	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a,
1596	0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
1597	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
1598	0x22, 0x87, 0x01, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1599	0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
1600	0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
1601	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1602	0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65,
1603	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
1604	0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f,
1605	0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78,
1606	0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xc7, 0x01, 0x0a, 0x16, 0x52,
1607	0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65,
1608	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18,
1609	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x73,
1610	0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
1611	0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x06,
1612	0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
1613	0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
1614	0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x06,
1615	0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x41,
1616	0x1f, 0x0a, 0x1d, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1617	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70,
1618	0x48, 0x00, 0x52, 0x06, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x6f,
1619	0x75, 0x72, 0x63, 0x65, 0x22, 0xba, 0x03, 0x0a, 0x17, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
1620	0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
1621	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
1622	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x54, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74,
1623	0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1624	0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
1625	0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73,
1626	0x74, 0x6f, 0x72, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a,
1627	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4f, 0x0a, 0x0b, 0x62, 0x61,
1628	0x63, 0x6b, 0x75, 0x70, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
1629	0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72,
1630	0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e,
1631	0x76, 0x31, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52,
1632	0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4f, 0x0a, 0x08, 0x70,
1633	0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e,
1634	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61,
1635	0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31,
1636	0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65,
1637	0x73, 0x73, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x3b, 0x0a, 0x0b,
1638	0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28,
1639	0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1640	0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63,
1641	0x61, 0x6e, 0x63, 0x65, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x20, 0x6f, 0x70, 0x74,
1642	0x69, 0x6d, 0x69, 0x7a, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6f,
1643	0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20,
1644	0x01, 0x28, 0x09, 0x52, 0x1d, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x44, 0x61, 0x74,
1645	0x61, 0x62, 0x61, 0x73, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61,
1646	0x6d, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66,
1647	0x6f, 0x22, 0x87, 0x01, 0x0a, 0x20, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x52, 0x65,
1648	0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x65,
1649	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
1650	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x08, 0x70, 0x72,
1651	0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67,
1652	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64,
1653	0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e,
1654	0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73,
1655	0x73, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2a, 0x35, 0x0a, 0x11, 0x52,
1656	0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65,
1657	0x12, 0x14, 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
1658	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50,
1659	0x10, 0x01, 0x32, 0xf2, 0x1e, 0x0a, 0x0d, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x41,
1660	0x64, 0x6d, 0x69, 0x6e, 0x12, 0xc0, 0x01, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74,
1661	0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1662	0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61,
1663	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61,
1664	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37,
1665	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e,
1666	0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76,
1667	0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x52,
1668	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x12,
1669	0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
1670	0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
1671	0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0xda, 0x41,
1672	0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xa4, 0x02, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61,
1673	0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f,
1674	0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69,
1675	0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72,
1676	0x65, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75,
1677	0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e,
1678	0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
1679	0x6f, 0x6e, 0x22, 0xb9, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x22, 0x2d, 0x2f, 0x76, 0x31,
1680	0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
1681	0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x7d,
1682	0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x17,
1683	0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74,
1684	0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0xca, 0x41, 0x64, 0x0a, 0x29, 0x67, 0x6f, 0x6f, 0x67,
1685	0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
1686	0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74,
1687	0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x37, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70,
1688	0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61,
1689	0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x61,
1690	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xad,
1691	0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x34,
1692	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e,
1693	0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76,
1694	0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71,
1695	0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70,
1696	0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61,
1697	0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
1698	0x22, 0x3c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x12, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e,
1699	0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69,
1700	0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62,
1701	0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x9d,
1702	0x02, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1703	0x65, 0x44, 0x64, 0x6c, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70,
1704	0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61,
1705	0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x61,
1706	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44, 0x64, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
1707	0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75,
1708	0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
1709	0xac, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3a, 0x32, 0x35, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x64,
1710	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
1711	0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64,
1712	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x64, 0x6c, 0x3a,
1713	0x01, 0x2a, 0xda, 0x41, 0x13, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2c, 0x73, 0x74,
1714	0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0xca, 0x41, 0x53, 0x0a, 0x15, 0x67, 0x6f, 0x6f,
1715	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
1716	0x74, 0x79, 0x12, 0x3a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e,
1717	0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1718	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62,
1719	0x61, 0x73, 0x65, 0x44, 0x64, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xa3,
1720	0x01, 0x0a, 0x0c, 0x44, 0x72, 0x6f, 0x70, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12,
1721	0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72,
1722	0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e,
1723	0x76, 0x31, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52,
1724	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1725	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x44,
1726	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x2a, 0x31, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x64, 0x61, 0x74,
1727	0x61, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
1728	0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74,
1729	0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x08, 0x64, 0x61, 0x74, 0x61,
1730	0x62, 0x61, 0x73, 0x65, 0x12, 0xcd, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61,
1731	0x62, 0x61, 0x73, 0x65, 0x44, 0x64, 0x6c, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1732	0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64,
1733	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x61,
1734	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44, 0x64, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
1735	0x1a, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65,
1736	0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
1737	0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x44,
1738	0x64, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x48, 0x82, 0xd3, 0xe4, 0x93,
1739	0x02, 0x37, 0x12, 0x35, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1740	0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73,
1741	0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1742	0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x64, 0x6c, 0xda, 0x41, 0x08, 0x64, 0x61, 0x74, 0x61,
1743	0x62, 0x61, 0x73, 0x65, 0x12, 0xeb, 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50,
1744	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69,
1745	0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69,
1746	0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1747	0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
1748	0x22, 0x9f, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x86, 0x01, 0x22, 0x3e, 0x2f, 0x76, 0x31, 0x2f,
1749	0x7b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
1750	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a,
1751	0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x65,
1752	0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x3a, 0x01, 0x2a, 0x5a, 0x41, 0x22,
1753	0x3c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x70,
1754	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
1755	0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x2a, 0x7d,
1756	0x3a, 0x73, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x3a, 0x01, 0x2a,
1757	0xda, 0x41, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2c, 0x70, 0x6f, 0x6c, 0x69,
1758	0x63, 0x79, 0x12, 0xe4, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c,
1759	0x69, 0x63, 0x79, 0x12, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d,
1760	0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
1761	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1762	0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x98,
1763	0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x86, 0x01, 0x22, 0x3e, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x72,
1764	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
1765	0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64,
1766	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x74, 0x49,
1767	0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x3a, 0x01, 0x2a, 0x5a, 0x41, 0x22, 0x3c, 0x2f,
1768	0x76, 0x31, 0x2f, 0x7b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x70, 0x72, 0x6f,
1769	0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
1770	0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67,
1771	0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x3a, 0x01, 0x2a, 0xda, 0x41,
1772	0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x9c, 0x02, 0x0a, 0x12, 0x54, 0x65,
1773	0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
1774	0x12, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31,
1775	0x2e, 0x54, 0x65, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69,
1776	0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x67, 0x6f, 0x6f,
1777	0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x49,
1778	0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73,
1779	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x92, 0x01, 0x22,
1780	0x44, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x70,
1781	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
1782	0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f,
1783	0x2a, 0x7d, 0x3a, 0x74, 0x65, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73,
1784	0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x01, 0x2a, 0x5a, 0x47, 0x22, 0x42, 0x2f, 0x76, 0x31, 0x2f,
1785	0x7b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
1786	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a,
1787	0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x74, 0x65, 0x73, 0x74,
1788	0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x01,
1789	0x2a, 0xda, 0x41, 0x14, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2c, 0x70, 0x65, 0x72,
1790	0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xfe, 0x01, 0x0a, 0x0c, 0x43, 0x72, 0x65,
1791	0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1792	0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
1793	0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65,
1794	0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
1795	0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75,
1796	0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
1797	0x97, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x35, 0x22, 0x2b, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70,
1798	0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
1799	0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x62, 0x61,
1800	0x63, 0x6b, 0x75, 0x70, 0x73, 0x3a, 0x06, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0xda, 0x41, 0x17,
1801	0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2c, 0x62, 0x61,
1802	0x63, 0x6b, 0x75, 0x70, 0x5f, 0x69, 0x64, 0xca, 0x41, 0x3f, 0x0a, 0x06, 0x42, 0x61, 0x63, 0x6b,
1803	0x75, 0x70, 0x12, 0x35, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e,
1804	0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1805	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75,
1806	0x70, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xa5, 0x01, 0x0a, 0x09, 0x47, 0x65,
1807	0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1808	0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64,
1809	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61,
1810	0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f,
1811	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d,
1812	0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42,
1813	0x61, 0x63, 0x6b, 0x75, 0x70, 0x22, 0x3a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x12, 0x2b, 0x2f,
1814	0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
1815	0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f,
1816	0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d,
1817	0x65, 0x12, 0xc8, 0x01, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b,
1818	0x75, 0x70, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e,
1819	0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
1820	0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b,
1821	0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1822	0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e,
1823	0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x63,
1824	0x6b, 0x75, 0x70, 0x22, 0x57, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3c, 0x32, 0x32, 0x2f, 0x76, 0x31,
1825	0x2f, 0x7b, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
1826	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
1827	0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
1828	0x06, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0xda, 0x41, 0x12, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70,
1829	0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x99, 0x01, 0x0a,
1830	0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x35, 0x2e,
1831	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61,
1832	0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31,
1833	0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71,
1834	0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
1835	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x3a, 0x82, 0xd3,
1836	0xe4, 0x93, 0x02, 0x2d, 0x2a, 0x2b, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
1837	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61,
1838	0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2f, 0x2a,
1839	0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xb8, 0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x73,
1840	0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1841	0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e,
1842	0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
1843	0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35,
1844	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e,
1845	0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76,
1846	0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73,
1847	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x12, 0x2b, 0x2f,
1848	0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
1849	0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f,
1850	0x2a, 0x7d, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72,
1851	0x65, 0x6e, 0x74, 0x12, 0xb1, 0x02, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x44,
1852	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1853	0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64,
1854	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f,
1855	0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
1856	0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72,
1857	0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
1858	0x22, 0xc4, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3a, 0x22, 0x35, 0x2f, 0x76, 0x31, 0x2f, 0x7b,
1859	0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
1860	0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64,
1861	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
1862	0x3a, 0x01, 0x2a, 0xda, 0x41, 0x19, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x64, 0x61, 0x74,
1863	0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x2c, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0xca,
1864	0x41, 0x65, 0x0a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e,
1865	0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1866	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x38, 0x67,
1867	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64,
1868	0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e,
1869	0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4d,
1870	0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xe4, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74,
1871	0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
1872	0x6e, 0x73, 0x12, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e,
1873	0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
1874	0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61,
1875	0x73, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75,
1876	0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61,
1877	0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62,
1878	0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62,
1879	0x61, 0x73, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73,
1880	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x47, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x38, 0x12, 0x36, 0x2f,
1881	0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
1882	0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f,
1883	0x2a, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61,
1884	0x74, 0x69, 0x6f, 0x6e, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xdc,
1885	0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x4f, 0x70, 0x65,
1886	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1887	0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64,
1888	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42,
1889	0x61, 0x63, 0x6b, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
1890	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1891	0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61,
1892	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x61,
1893	0x63, 0x6b, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
1894	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x45, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x36, 0x12, 0x34,
1895	0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
1896	0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73,
1897	0x2f, 0x2a, 0x7d, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
1898	0x69, 0x6f, 0x6e, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x1a, 0x78, 0xca,
1899	0x41, 0x16, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1900	0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5c, 0x68, 0x74, 0x74, 0x70, 0x73,
1901	0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
1902	0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
1903	0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a,
1904	0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
1905	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65,
1906	0x72, 0x2e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x42, 0xac, 0x02, 0x0a, 0x24, 0x63, 0x6f, 0x6d, 0x2e,
1907	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x61,
1908	0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31,
1909	0x42, 0x19, 0x53, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
1910	0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x48, 0x67,
1911	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67,
1912	0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1913	0x61, 0x70, 0x69, 0x73, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2f, 0x61, 0x64, 0x6d,
1914	0x69, 0x6e, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x64,
1915	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0xaa, 0x02, 0x26, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1916	0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x53, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x41,
1917	0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x56, 0x31,
1918	0xca, 0x02, 0x26, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c,
1919	0x53, 0x70, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x5c, 0x44, 0x61,
1920	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5c, 0x56, 0x31, 0xea, 0x41, 0x4a, 0x0a, 0x1f, 0x73, 0x70,
1921	0x61, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
1922	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x27, 0x70,
1923	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
1924	0x7d, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73,
1925	0x74, 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
1926}
1927
1928var (
1929	file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescOnce sync.Once
1930	file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescData = file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDesc
1931)
1932
1933func file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescGZIP() []byte {
1934	file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescOnce.Do(func() {
1935		file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescData)
1936	})
1937	return file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDescData
1938}
1939
1940var file_google_spanner_admin_database_v1_spanner_database_admin_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
1941var file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
1942var file_google_spanner_admin_database_v1_spanner_database_admin_proto_goTypes = []interface{}{
1943	(RestoreSourceType)(0),                   // 0: google.spanner.admin.database.v1.RestoreSourceType
1944	(Database_State)(0),                      // 1: google.spanner.admin.database.v1.Database.State
1945	(*RestoreInfo)(nil),                      // 2: google.spanner.admin.database.v1.RestoreInfo
1946	(*Database)(nil),                         // 3: google.spanner.admin.database.v1.Database
1947	(*ListDatabasesRequest)(nil),             // 4: google.spanner.admin.database.v1.ListDatabasesRequest
1948	(*ListDatabasesResponse)(nil),            // 5: google.spanner.admin.database.v1.ListDatabasesResponse
1949	(*CreateDatabaseRequest)(nil),            // 6: google.spanner.admin.database.v1.CreateDatabaseRequest
1950	(*CreateDatabaseMetadata)(nil),           // 7: google.spanner.admin.database.v1.CreateDatabaseMetadata
1951	(*GetDatabaseRequest)(nil),               // 8: google.spanner.admin.database.v1.GetDatabaseRequest
1952	(*UpdateDatabaseDdlRequest)(nil),         // 9: google.spanner.admin.database.v1.UpdateDatabaseDdlRequest
1953	(*UpdateDatabaseDdlMetadata)(nil),        // 10: google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata
1954	(*DropDatabaseRequest)(nil),              // 11: google.spanner.admin.database.v1.DropDatabaseRequest
1955	(*GetDatabaseDdlRequest)(nil),            // 12: google.spanner.admin.database.v1.GetDatabaseDdlRequest
1956	(*GetDatabaseDdlResponse)(nil),           // 13: google.spanner.admin.database.v1.GetDatabaseDdlResponse
1957	(*ListDatabaseOperationsRequest)(nil),    // 14: google.spanner.admin.database.v1.ListDatabaseOperationsRequest
1958	(*ListDatabaseOperationsResponse)(nil),   // 15: google.spanner.admin.database.v1.ListDatabaseOperationsResponse
1959	(*RestoreDatabaseRequest)(nil),           // 16: google.spanner.admin.database.v1.RestoreDatabaseRequest
1960	(*RestoreDatabaseMetadata)(nil),          // 17: google.spanner.admin.database.v1.RestoreDatabaseMetadata
1961	(*OptimizeRestoredDatabaseMetadata)(nil), // 18: google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata
1962	(*BackupInfo)(nil),                       // 19: google.spanner.admin.database.v1.BackupInfo
1963	(*timestamp.Timestamp)(nil),              // 20: google.protobuf.Timestamp
1964	(*longrunning.Operation)(nil),            // 21: google.longrunning.Operation
1965	(*OperationProgress)(nil),                // 22: google.spanner.admin.database.v1.OperationProgress
1966	(*v1.SetIamPolicyRequest)(nil),           // 23: google.iam.v1.SetIamPolicyRequest
1967	(*v1.GetIamPolicyRequest)(nil),           // 24: google.iam.v1.GetIamPolicyRequest
1968	(*v1.TestIamPermissionsRequest)(nil),     // 25: google.iam.v1.TestIamPermissionsRequest
1969	(*CreateBackupRequest)(nil),              // 26: google.spanner.admin.database.v1.CreateBackupRequest
1970	(*GetBackupRequest)(nil),                 // 27: google.spanner.admin.database.v1.GetBackupRequest
1971	(*UpdateBackupRequest)(nil),              // 28: google.spanner.admin.database.v1.UpdateBackupRequest
1972	(*DeleteBackupRequest)(nil),              // 29: google.spanner.admin.database.v1.DeleteBackupRequest
1973	(*ListBackupsRequest)(nil),               // 30: google.spanner.admin.database.v1.ListBackupsRequest
1974	(*ListBackupOperationsRequest)(nil),      // 31: google.spanner.admin.database.v1.ListBackupOperationsRequest
1975	(*empty.Empty)(nil),                      // 32: google.protobuf.Empty
1976	(*v1.Policy)(nil),                        // 33: google.iam.v1.Policy
1977	(*v1.TestIamPermissionsResponse)(nil),    // 34: google.iam.v1.TestIamPermissionsResponse
1978	(*Backup)(nil),                           // 35: google.spanner.admin.database.v1.Backup
1979	(*ListBackupsResponse)(nil),              // 36: google.spanner.admin.database.v1.ListBackupsResponse
1980	(*ListBackupOperationsResponse)(nil),     // 37: google.spanner.admin.database.v1.ListBackupOperationsResponse
1981}
1982var file_google_spanner_admin_database_v1_spanner_database_admin_proto_depIdxs = []int32{
1983	0,  // 0: google.spanner.admin.database.v1.RestoreInfo.source_type:type_name -> google.spanner.admin.database.v1.RestoreSourceType
1984	19, // 1: google.spanner.admin.database.v1.RestoreInfo.backup_info:type_name -> google.spanner.admin.database.v1.BackupInfo
1985	1,  // 2: google.spanner.admin.database.v1.Database.state:type_name -> google.spanner.admin.database.v1.Database.State
1986	20, // 3: google.spanner.admin.database.v1.Database.create_time:type_name -> google.protobuf.Timestamp
1987	2,  // 4: google.spanner.admin.database.v1.Database.restore_info:type_name -> google.spanner.admin.database.v1.RestoreInfo
1988	3,  // 5: google.spanner.admin.database.v1.ListDatabasesResponse.databases:type_name -> google.spanner.admin.database.v1.Database
1989	20, // 6: google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.commit_timestamps:type_name -> google.protobuf.Timestamp
1990	21, // 7: google.spanner.admin.database.v1.ListDatabaseOperationsResponse.operations:type_name -> google.longrunning.Operation
1991	0,  // 8: google.spanner.admin.database.v1.RestoreDatabaseMetadata.source_type:type_name -> google.spanner.admin.database.v1.RestoreSourceType
1992	19, // 9: google.spanner.admin.database.v1.RestoreDatabaseMetadata.backup_info:type_name -> google.spanner.admin.database.v1.BackupInfo
1993	22, // 10: google.spanner.admin.database.v1.RestoreDatabaseMetadata.progress:type_name -> google.spanner.admin.database.v1.OperationProgress
1994	20, // 11: google.spanner.admin.database.v1.RestoreDatabaseMetadata.cancel_time:type_name -> google.protobuf.Timestamp
1995	22, // 12: google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata.progress:type_name -> google.spanner.admin.database.v1.OperationProgress
1996	4,  // 13: google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases:input_type -> google.spanner.admin.database.v1.ListDatabasesRequest
1997	6,  // 14: google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase:input_type -> google.spanner.admin.database.v1.CreateDatabaseRequest
1998	8,  // 15: google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase:input_type -> google.spanner.admin.database.v1.GetDatabaseRequest
1999	9,  // 16: google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl:input_type -> google.spanner.admin.database.v1.UpdateDatabaseDdlRequest
2000	11, // 17: google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase:input_type -> google.spanner.admin.database.v1.DropDatabaseRequest
2001	12, // 18: google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl:input_type -> google.spanner.admin.database.v1.GetDatabaseDdlRequest
2002	23, // 19: google.spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy:input_type -> google.iam.v1.SetIamPolicyRequest
2003	24, // 20: google.spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy:input_type -> google.iam.v1.GetIamPolicyRequest
2004	25, // 21: google.spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions:input_type -> google.iam.v1.TestIamPermissionsRequest
2005	26, // 22: google.spanner.admin.database.v1.DatabaseAdmin.CreateBackup:input_type -> google.spanner.admin.database.v1.CreateBackupRequest
2006	27, // 23: google.spanner.admin.database.v1.DatabaseAdmin.GetBackup:input_type -> google.spanner.admin.database.v1.GetBackupRequest
2007	28, // 24: google.spanner.admin.database.v1.DatabaseAdmin.UpdateBackup:input_type -> google.spanner.admin.database.v1.UpdateBackupRequest
2008	29, // 25: google.spanner.admin.database.v1.DatabaseAdmin.DeleteBackup:input_type -> google.spanner.admin.database.v1.DeleteBackupRequest
2009	30, // 26: google.spanner.admin.database.v1.DatabaseAdmin.ListBackups:input_type -> google.spanner.admin.database.v1.ListBackupsRequest
2010	16, // 27: google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase:input_type -> google.spanner.admin.database.v1.RestoreDatabaseRequest
2011	14, // 28: google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations:input_type -> google.spanner.admin.database.v1.ListDatabaseOperationsRequest
2012	31, // 29: google.spanner.admin.database.v1.DatabaseAdmin.ListBackupOperations:input_type -> google.spanner.admin.database.v1.ListBackupOperationsRequest
2013	5,  // 30: google.spanner.admin.database.v1.DatabaseAdmin.ListDatabases:output_type -> google.spanner.admin.database.v1.ListDatabasesResponse
2014	21, // 31: google.spanner.admin.database.v1.DatabaseAdmin.CreateDatabase:output_type -> google.longrunning.Operation
2015	3,  // 32: google.spanner.admin.database.v1.DatabaseAdmin.GetDatabase:output_type -> google.spanner.admin.database.v1.Database
2016	21, // 33: google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl:output_type -> google.longrunning.Operation
2017	32, // 34: google.spanner.admin.database.v1.DatabaseAdmin.DropDatabase:output_type -> google.protobuf.Empty
2018	13, // 35: google.spanner.admin.database.v1.DatabaseAdmin.GetDatabaseDdl:output_type -> google.spanner.admin.database.v1.GetDatabaseDdlResponse
2019	33, // 36: google.spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy:output_type -> google.iam.v1.Policy
2020	33, // 37: google.spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy:output_type -> google.iam.v1.Policy
2021	34, // 38: google.spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions:output_type -> google.iam.v1.TestIamPermissionsResponse
2022	21, // 39: google.spanner.admin.database.v1.DatabaseAdmin.CreateBackup:output_type -> google.longrunning.Operation
2023	35, // 40: google.spanner.admin.database.v1.DatabaseAdmin.GetBackup:output_type -> google.spanner.admin.database.v1.Backup
2024	35, // 41: google.spanner.admin.database.v1.DatabaseAdmin.UpdateBackup:output_type -> google.spanner.admin.database.v1.Backup
2025	32, // 42: google.spanner.admin.database.v1.DatabaseAdmin.DeleteBackup:output_type -> google.protobuf.Empty
2026	36, // 43: google.spanner.admin.database.v1.DatabaseAdmin.ListBackups:output_type -> google.spanner.admin.database.v1.ListBackupsResponse
2027	21, // 44: google.spanner.admin.database.v1.DatabaseAdmin.RestoreDatabase:output_type -> google.longrunning.Operation
2028	15, // 45: google.spanner.admin.database.v1.DatabaseAdmin.ListDatabaseOperations:output_type -> google.spanner.admin.database.v1.ListDatabaseOperationsResponse
2029	37, // 46: google.spanner.admin.database.v1.DatabaseAdmin.ListBackupOperations:output_type -> google.spanner.admin.database.v1.ListBackupOperationsResponse
2030	30, // [30:47] is the sub-list for method output_type
2031	13, // [13:30] is the sub-list for method input_type
2032	13, // [13:13] is the sub-list for extension type_name
2033	13, // [13:13] is the sub-list for extension extendee
2034	0,  // [0:13] is the sub-list for field type_name
2035}
2036
2037func init() { file_google_spanner_admin_database_v1_spanner_database_admin_proto_init() }
2038func file_google_spanner_admin_database_v1_spanner_database_admin_proto_init() {
2039	if File_google_spanner_admin_database_v1_spanner_database_admin_proto != nil {
2040		return
2041	}
2042	file_google_spanner_admin_database_v1_backup_proto_init()
2043	file_google_spanner_admin_database_v1_common_proto_init()
2044	if !protoimpl.UnsafeEnabled {
2045		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
2046			switch v := v.(*RestoreInfo); i {
2047			case 0:
2048				return &v.state
2049			case 1:
2050				return &v.sizeCache
2051			case 2:
2052				return &v.unknownFields
2053			default:
2054				return nil
2055			}
2056		}
2057		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
2058			switch v := v.(*Database); i {
2059			case 0:
2060				return &v.state
2061			case 1:
2062				return &v.sizeCache
2063			case 2:
2064				return &v.unknownFields
2065			default:
2066				return nil
2067			}
2068		}
2069		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
2070			switch v := v.(*ListDatabasesRequest); i {
2071			case 0:
2072				return &v.state
2073			case 1:
2074				return &v.sizeCache
2075			case 2:
2076				return &v.unknownFields
2077			default:
2078				return nil
2079			}
2080		}
2081		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
2082			switch v := v.(*ListDatabasesResponse); i {
2083			case 0:
2084				return &v.state
2085			case 1:
2086				return &v.sizeCache
2087			case 2:
2088				return &v.unknownFields
2089			default:
2090				return nil
2091			}
2092		}
2093		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
2094			switch v := v.(*CreateDatabaseRequest); i {
2095			case 0:
2096				return &v.state
2097			case 1:
2098				return &v.sizeCache
2099			case 2:
2100				return &v.unknownFields
2101			default:
2102				return nil
2103			}
2104		}
2105		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
2106			switch v := v.(*CreateDatabaseMetadata); i {
2107			case 0:
2108				return &v.state
2109			case 1:
2110				return &v.sizeCache
2111			case 2:
2112				return &v.unknownFields
2113			default:
2114				return nil
2115			}
2116		}
2117		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
2118			switch v := v.(*GetDatabaseRequest); i {
2119			case 0:
2120				return &v.state
2121			case 1:
2122				return &v.sizeCache
2123			case 2:
2124				return &v.unknownFields
2125			default:
2126				return nil
2127			}
2128		}
2129		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
2130			switch v := v.(*UpdateDatabaseDdlRequest); i {
2131			case 0:
2132				return &v.state
2133			case 1:
2134				return &v.sizeCache
2135			case 2:
2136				return &v.unknownFields
2137			default:
2138				return nil
2139			}
2140		}
2141		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
2142			switch v := v.(*UpdateDatabaseDdlMetadata); i {
2143			case 0:
2144				return &v.state
2145			case 1:
2146				return &v.sizeCache
2147			case 2:
2148				return &v.unknownFields
2149			default:
2150				return nil
2151			}
2152		}
2153		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
2154			switch v := v.(*DropDatabaseRequest); i {
2155			case 0:
2156				return &v.state
2157			case 1:
2158				return &v.sizeCache
2159			case 2:
2160				return &v.unknownFields
2161			default:
2162				return nil
2163			}
2164		}
2165		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
2166			switch v := v.(*GetDatabaseDdlRequest); i {
2167			case 0:
2168				return &v.state
2169			case 1:
2170				return &v.sizeCache
2171			case 2:
2172				return &v.unknownFields
2173			default:
2174				return nil
2175			}
2176		}
2177		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
2178			switch v := v.(*GetDatabaseDdlResponse); i {
2179			case 0:
2180				return &v.state
2181			case 1:
2182				return &v.sizeCache
2183			case 2:
2184				return &v.unknownFields
2185			default:
2186				return nil
2187			}
2188		}
2189		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
2190			switch v := v.(*ListDatabaseOperationsRequest); i {
2191			case 0:
2192				return &v.state
2193			case 1:
2194				return &v.sizeCache
2195			case 2:
2196				return &v.unknownFields
2197			default:
2198				return nil
2199			}
2200		}
2201		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
2202			switch v := v.(*ListDatabaseOperationsResponse); i {
2203			case 0:
2204				return &v.state
2205			case 1:
2206				return &v.sizeCache
2207			case 2:
2208				return &v.unknownFields
2209			default:
2210				return nil
2211			}
2212		}
2213		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
2214			switch v := v.(*RestoreDatabaseRequest); i {
2215			case 0:
2216				return &v.state
2217			case 1:
2218				return &v.sizeCache
2219			case 2:
2220				return &v.unknownFields
2221			default:
2222				return nil
2223			}
2224		}
2225		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
2226			switch v := v.(*RestoreDatabaseMetadata); i {
2227			case 0:
2228				return &v.state
2229			case 1:
2230				return &v.sizeCache
2231			case 2:
2232				return &v.unknownFields
2233			default:
2234				return nil
2235			}
2236		}
2237		file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
2238			switch v := v.(*OptimizeRestoredDatabaseMetadata); i {
2239			case 0:
2240				return &v.state
2241			case 1:
2242				return &v.sizeCache
2243			case 2:
2244				return &v.unknownFields
2245			default:
2246				return nil
2247			}
2248		}
2249	}
2250	file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[0].OneofWrappers = []interface{}{
2251		(*RestoreInfo_BackupInfo)(nil),
2252	}
2253	file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[14].OneofWrappers = []interface{}{
2254		(*RestoreDatabaseRequest_Backup)(nil),
2255	}
2256	file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes[15].OneofWrappers = []interface{}{
2257		(*RestoreDatabaseMetadata_BackupInfo)(nil),
2258	}
2259	type x struct{}
2260	out := protoimpl.TypeBuilder{
2261		File: protoimpl.DescBuilder{
2262			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
2263			RawDescriptor: file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDesc,
2264			NumEnums:      2,
2265			NumMessages:   17,
2266			NumExtensions: 0,
2267			NumServices:   1,
2268		},
2269		GoTypes:           file_google_spanner_admin_database_v1_spanner_database_admin_proto_goTypes,
2270		DependencyIndexes: file_google_spanner_admin_database_v1_spanner_database_admin_proto_depIdxs,
2271		EnumInfos:         file_google_spanner_admin_database_v1_spanner_database_admin_proto_enumTypes,
2272		MessageInfos:      file_google_spanner_admin_database_v1_spanner_database_admin_proto_msgTypes,
2273	}.Build()
2274	File_google_spanner_admin_database_v1_spanner_database_admin_proto = out.File
2275	file_google_spanner_admin_database_v1_spanner_database_admin_proto_rawDesc = nil
2276	file_google_spanner_admin_database_v1_spanner_database_admin_proto_goTypes = nil
2277	file_google_spanner_admin_database_v1_spanner_database_admin_proto_depIdxs = nil
2278}
2279
2280// Reference imports to suppress errors if they are not otherwise used.
2281var _ context.Context
2282var _ grpc.ClientConnInterface
2283
2284// This is a compile-time assertion to ensure that this generated file
2285// is compatible with the grpc package it is being compiled against.
2286const _ = grpc.SupportPackageIsVersion6
2287
2288// DatabaseAdminClient is the client API for DatabaseAdmin service.
2289//
2290// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
2291type DatabaseAdminClient interface {
2292	// Lists Cloud Spanner databases.
2293	ListDatabases(ctx context.Context, in *ListDatabasesRequest, opts ...grpc.CallOption) (*ListDatabasesResponse, error)
2294	// Creates a new Cloud Spanner database and starts to prepare it for serving.
2295	// The returned [long-running operation][google.longrunning.Operation] will
2296	// have a name of the format `<database_name>/operations/<operation_id>` and
2297	// can be used to track preparation of the database. The
2298	// [metadata][google.longrunning.Operation.metadata] field type is
2299	// [CreateDatabaseMetadata][google.spanner.admin.database.v1.CreateDatabaseMetadata]. The
2300	// [response][google.longrunning.Operation.response] field type is
2301	// [Database][google.spanner.admin.database.v1.Database], if successful.
2302	CreateDatabase(ctx context.Context, in *CreateDatabaseRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
2303	// Gets the state of a Cloud Spanner database.
2304	GetDatabase(ctx context.Context, in *GetDatabaseRequest, opts ...grpc.CallOption) (*Database, error)
2305	// Updates the schema of a Cloud Spanner database by
2306	// creating/altering/dropping tables, columns, indexes, etc. The returned
2307	// [long-running operation][google.longrunning.Operation] will have a name of
2308	// the format `<database_name>/operations/<operation_id>` and can be used to
2309	// track execution of the schema change(s). The
2310	// [metadata][google.longrunning.Operation.metadata] field type is
2311	// [UpdateDatabaseDdlMetadata][google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata].  The operation has no response.
2312	UpdateDatabaseDdl(ctx context.Context, in *UpdateDatabaseDdlRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
2313	// Drops (aka deletes) a Cloud Spanner database.
2314	// Completed backups for the database will be retained according to their
2315	// `expire_time`.
2316	DropDatabase(ctx context.Context, in *DropDatabaseRequest, opts ...grpc.CallOption) (*empty.Empty, error)
2317	// Returns the schema of a Cloud Spanner database as a list of formatted
2318	// DDL statements. This method does not show pending schema updates, those may
2319	// be queried using the [Operations][google.longrunning.Operations] API.
2320	GetDatabaseDdl(ctx context.Context, in *GetDatabaseDdlRequest, opts ...grpc.CallOption) (*GetDatabaseDdlResponse, error)
2321	// Sets the access control policy on a database or backup resource.
2322	// Replaces any existing policy.
2323	//
2324	// Authorization requires `spanner.databases.setIamPolicy`
2325	// permission on [resource][google.iam.v1.SetIamPolicyRequest.resource].
2326	// For backups, authorization requires `spanner.backups.setIamPolicy`
2327	// permission on [resource][google.iam.v1.SetIamPolicyRequest.resource].
2328	SetIamPolicy(ctx context.Context, in *v1.SetIamPolicyRequest, opts ...grpc.CallOption) (*v1.Policy, error)
2329	// Gets the access control policy for a database or backup resource.
2330	// Returns an empty policy if a database or backup exists but does not have a
2331	// policy set.
2332	//
2333	// Authorization requires `spanner.databases.getIamPolicy` permission on
2334	// [resource][google.iam.v1.GetIamPolicyRequest.resource].
2335	// For backups, authorization requires `spanner.backups.getIamPolicy`
2336	// permission on [resource][google.iam.v1.GetIamPolicyRequest.resource].
2337	GetIamPolicy(ctx context.Context, in *v1.GetIamPolicyRequest, opts ...grpc.CallOption) (*v1.Policy, error)
2338	// Returns permissions that the caller has on the specified database or backup
2339	// resource.
2340	//
2341	// Attempting this RPC on a non-existent Cloud Spanner database will
2342	// result in a NOT_FOUND error if the user has
2343	// `spanner.databases.list` permission on the containing Cloud
2344	// Spanner instance. Otherwise returns an empty set of permissions.
2345	// Calling this method on a backup that does not exist will
2346	// result in a NOT_FOUND error if the user has
2347	// `spanner.backups.list` permission on the containing instance.
2348	TestIamPermissions(ctx context.Context, in *v1.TestIamPermissionsRequest, opts ...grpc.CallOption) (*v1.TestIamPermissionsResponse, error)
2349	// Starts creating a new Cloud Spanner Backup.
2350	// The returned backup [long-running operation][google.longrunning.Operation]
2351	// will have a name of the format
2352	// `projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id>`
2353	// and can be used to track creation of the backup. The
2354	// [metadata][google.longrunning.Operation.metadata] field type is
2355	// [CreateBackupMetadata][google.spanner.admin.database.v1.CreateBackupMetadata]. The
2356	// [response][google.longrunning.Operation.response] field type is
2357	// [Backup][google.spanner.admin.database.v1.Backup], if successful. Cancelling the returned operation will stop the
2358	// creation and delete the backup.
2359	// There can be only one pending backup creation per database. Backup creation
2360	// of different databases can run concurrently.
2361	CreateBackup(ctx context.Context, in *CreateBackupRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
2362	// Gets metadata on a pending or completed [Backup][google.spanner.admin.database.v1.Backup].
2363	GetBackup(ctx context.Context, in *GetBackupRequest, opts ...grpc.CallOption) (*Backup, error)
2364	// Updates a pending or completed [Backup][google.spanner.admin.database.v1.Backup].
2365	UpdateBackup(ctx context.Context, in *UpdateBackupRequest, opts ...grpc.CallOption) (*Backup, error)
2366	// Deletes a pending or completed [Backup][google.spanner.admin.database.v1.Backup].
2367	DeleteBackup(ctx context.Context, in *DeleteBackupRequest, opts ...grpc.CallOption) (*empty.Empty, error)
2368	// Lists completed and pending backups.
2369	// Backups returned are ordered by `create_time` in descending order,
2370	// starting from the most recent `create_time`.
2371	ListBackups(ctx context.Context, in *ListBackupsRequest, opts ...grpc.CallOption) (*ListBackupsResponse, error)
2372	// Create a new database by restoring from a completed backup. The new
2373	// database must be in the same project and in an instance with the same
2374	// instance configuration as the instance containing
2375	// the backup. The returned database [long-running
2376	// operation][google.longrunning.Operation] has a name of the format
2377	// `projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id>`,
2378	// and can be used to track the progress of the operation, and to cancel it.
2379	// The [metadata][google.longrunning.Operation.metadata] field type is
2380	// [RestoreDatabaseMetadata][google.spanner.admin.database.v1.RestoreDatabaseMetadata].
2381	// The [response][google.longrunning.Operation.response] type
2382	// is [Database][google.spanner.admin.database.v1.Database], if
2383	// successful. Cancelling the returned operation will stop the restore and
2384	// delete the database.
2385	// There can be only one database being restored into an instance at a time.
2386	// Once the restore operation completes, a new restore operation can be
2387	// initiated, without waiting for the optimize operation associated with the
2388	// first restore to complete.
2389	RestoreDatabase(ctx context.Context, in *RestoreDatabaseRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
2390	// Lists database [longrunning-operations][google.longrunning.Operation].
2391	// A database operation has a name of the form
2392	// `projects/<project>/instances/<instance>/databases/<database>/operations/<operation>`.
2393	// The long-running operation
2394	// [metadata][google.longrunning.Operation.metadata] field type
2395	// `metadata.type_url` describes the type of the metadata. Operations returned
2396	// include those that have completed/failed/canceled within the last 7 days,
2397	// and pending operations.
2398	ListDatabaseOperations(ctx context.Context, in *ListDatabaseOperationsRequest, opts ...grpc.CallOption) (*ListDatabaseOperationsResponse, error)
2399	// Lists the backup [long-running operations][google.longrunning.Operation] in
2400	// the given instance. A backup operation has a name of the form
2401	// `projects/<project>/instances/<instance>/backups/<backup>/operations/<operation>`.
2402	// The long-running operation
2403	// [metadata][google.longrunning.Operation.metadata] field type
2404	// `metadata.type_url` describes the type of the metadata. Operations returned
2405	// include those that have completed/failed/canceled within the last 7 days,
2406	// and pending operations. Operations returned are ordered by
2407	// `operation.metadata.value.progress.start_time` in descending order starting
2408	// from the most recently started operation.
2409	ListBackupOperations(ctx context.Context, in *ListBackupOperationsRequest, opts ...grpc.CallOption) (*ListBackupOperationsResponse, error)
2410}
2411
2412type databaseAdminClient struct {
2413	cc grpc.ClientConnInterface
2414}
2415
2416func NewDatabaseAdminClient(cc grpc.ClientConnInterface) DatabaseAdminClient {
2417	return &databaseAdminClient{cc}
2418}
2419
2420func (c *databaseAdminClient) ListDatabases(ctx context.Context, in *ListDatabasesRequest, opts ...grpc.CallOption) (*ListDatabasesResponse, error) {
2421	out := new(ListDatabasesResponse)
2422	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/ListDatabases", in, out, opts...)
2423	if err != nil {
2424		return nil, err
2425	}
2426	return out, nil
2427}
2428
2429func (c *databaseAdminClient) CreateDatabase(ctx context.Context, in *CreateDatabaseRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
2430	out := new(longrunning.Operation)
2431	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/CreateDatabase", in, out, opts...)
2432	if err != nil {
2433		return nil, err
2434	}
2435	return out, nil
2436}
2437
2438func (c *databaseAdminClient) GetDatabase(ctx context.Context, in *GetDatabaseRequest, opts ...grpc.CallOption) (*Database, error) {
2439	out := new(Database)
2440	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/GetDatabase", in, out, opts...)
2441	if err != nil {
2442		return nil, err
2443	}
2444	return out, nil
2445}
2446
2447func (c *databaseAdminClient) UpdateDatabaseDdl(ctx context.Context, in *UpdateDatabaseDdlRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
2448	out := new(longrunning.Operation)
2449	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/UpdateDatabaseDdl", in, out, opts...)
2450	if err != nil {
2451		return nil, err
2452	}
2453	return out, nil
2454}
2455
2456func (c *databaseAdminClient) DropDatabase(ctx context.Context, in *DropDatabaseRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
2457	out := new(empty.Empty)
2458	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/DropDatabase", in, out, opts...)
2459	if err != nil {
2460		return nil, err
2461	}
2462	return out, nil
2463}
2464
2465func (c *databaseAdminClient) GetDatabaseDdl(ctx context.Context, in *GetDatabaseDdlRequest, opts ...grpc.CallOption) (*GetDatabaseDdlResponse, error) {
2466	out := new(GetDatabaseDdlResponse)
2467	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/GetDatabaseDdl", in, out, opts...)
2468	if err != nil {
2469		return nil, err
2470	}
2471	return out, nil
2472}
2473
2474func (c *databaseAdminClient) SetIamPolicy(ctx context.Context, in *v1.SetIamPolicyRequest, opts ...grpc.CallOption) (*v1.Policy, error) {
2475	out := new(v1.Policy)
2476	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/SetIamPolicy", in, out, opts...)
2477	if err != nil {
2478		return nil, err
2479	}
2480	return out, nil
2481}
2482
2483func (c *databaseAdminClient) GetIamPolicy(ctx context.Context, in *v1.GetIamPolicyRequest, opts ...grpc.CallOption) (*v1.Policy, error) {
2484	out := new(v1.Policy)
2485	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/GetIamPolicy", in, out, opts...)
2486	if err != nil {
2487		return nil, err
2488	}
2489	return out, nil
2490}
2491
2492func (c *databaseAdminClient) TestIamPermissions(ctx context.Context, in *v1.TestIamPermissionsRequest, opts ...grpc.CallOption) (*v1.TestIamPermissionsResponse, error) {
2493	out := new(v1.TestIamPermissionsResponse)
2494	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/TestIamPermissions", in, out, opts...)
2495	if err != nil {
2496		return nil, err
2497	}
2498	return out, nil
2499}
2500
2501func (c *databaseAdminClient) CreateBackup(ctx context.Context, in *CreateBackupRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
2502	out := new(longrunning.Operation)
2503	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/CreateBackup", in, out, opts...)
2504	if err != nil {
2505		return nil, err
2506	}
2507	return out, nil
2508}
2509
2510func (c *databaseAdminClient) GetBackup(ctx context.Context, in *GetBackupRequest, opts ...grpc.CallOption) (*Backup, error) {
2511	out := new(Backup)
2512	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/GetBackup", in, out, opts...)
2513	if err != nil {
2514		return nil, err
2515	}
2516	return out, nil
2517}
2518
2519func (c *databaseAdminClient) UpdateBackup(ctx context.Context, in *UpdateBackupRequest, opts ...grpc.CallOption) (*Backup, error) {
2520	out := new(Backup)
2521	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/UpdateBackup", in, out, opts...)
2522	if err != nil {
2523		return nil, err
2524	}
2525	return out, nil
2526}
2527
2528func (c *databaseAdminClient) DeleteBackup(ctx context.Context, in *DeleteBackupRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
2529	out := new(empty.Empty)
2530	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/DeleteBackup", in, out, opts...)
2531	if err != nil {
2532		return nil, err
2533	}
2534	return out, nil
2535}
2536
2537func (c *databaseAdminClient) ListBackups(ctx context.Context, in *ListBackupsRequest, opts ...grpc.CallOption) (*ListBackupsResponse, error) {
2538	out := new(ListBackupsResponse)
2539	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/ListBackups", in, out, opts...)
2540	if err != nil {
2541		return nil, err
2542	}
2543	return out, nil
2544}
2545
2546func (c *databaseAdminClient) RestoreDatabase(ctx context.Context, in *RestoreDatabaseRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
2547	out := new(longrunning.Operation)
2548	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/RestoreDatabase", in, out, opts...)
2549	if err != nil {
2550		return nil, err
2551	}
2552	return out, nil
2553}
2554
2555func (c *databaseAdminClient) ListDatabaseOperations(ctx context.Context, in *ListDatabaseOperationsRequest, opts ...grpc.CallOption) (*ListDatabaseOperationsResponse, error) {
2556	out := new(ListDatabaseOperationsResponse)
2557	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/ListDatabaseOperations", in, out, opts...)
2558	if err != nil {
2559		return nil, err
2560	}
2561	return out, nil
2562}
2563
2564func (c *databaseAdminClient) ListBackupOperations(ctx context.Context, in *ListBackupOperationsRequest, opts ...grpc.CallOption) (*ListBackupOperationsResponse, error) {
2565	out := new(ListBackupOperationsResponse)
2566	err := c.cc.Invoke(ctx, "/google.spanner.admin.database.v1.DatabaseAdmin/ListBackupOperations", in, out, opts...)
2567	if err != nil {
2568		return nil, err
2569	}
2570	return out, nil
2571}
2572
2573// DatabaseAdminServer is the server API for DatabaseAdmin service.
2574type DatabaseAdminServer interface {
2575	// Lists Cloud Spanner databases.
2576	ListDatabases(context.Context, *ListDatabasesRequest) (*ListDatabasesResponse, error)
2577	// Creates a new Cloud Spanner database and starts to prepare it for serving.
2578	// The returned [long-running operation][google.longrunning.Operation] will
2579	// have a name of the format `<database_name>/operations/<operation_id>` and
2580	// can be used to track preparation of the database. The
2581	// [metadata][google.longrunning.Operation.metadata] field type is
2582	// [CreateDatabaseMetadata][google.spanner.admin.database.v1.CreateDatabaseMetadata]. The
2583	// [response][google.longrunning.Operation.response] field type is
2584	// [Database][google.spanner.admin.database.v1.Database], if successful.
2585	CreateDatabase(context.Context, *CreateDatabaseRequest) (*longrunning.Operation, error)
2586	// Gets the state of a Cloud Spanner database.
2587	GetDatabase(context.Context, *GetDatabaseRequest) (*Database, error)
2588	// Updates the schema of a Cloud Spanner database by
2589	// creating/altering/dropping tables, columns, indexes, etc. The returned
2590	// [long-running operation][google.longrunning.Operation] will have a name of
2591	// the format `<database_name>/operations/<operation_id>` and can be used to
2592	// track execution of the schema change(s). The
2593	// [metadata][google.longrunning.Operation.metadata] field type is
2594	// [UpdateDatabaseDdlMetadata][google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata].  The operation has no response.
2595	UpdateDatabaseDdl(context.Context, *UpdateDatabaseDdlRequest) (*longrunning.Operation, error)
2596	// Drops (aka deletes) a Cloud Spanner database.
2597	// Completed backups for the database will be retained according to their
2598	// `expire_time`.
2599	DropDatabase(context.Context, *DropDatabaseRequest) (*empty.Empty, error)
2600	// Returns the schema of a Cloud Spanner database as a list of formatted
2601	// DDL statements. This method does not show pending schema updates, those may
2602	// be queried using the [Operations][google.longrunning.Operations] API.
2603	GetDatabaseDdl(context.Context, *GetDatabaseDdlRequest) (*GetDatabaseDdlResponse, error)
2604	// Sets the access control policy on a database or backup resource.
2605	// Replaces any existing policy.
2606	//
2607	// Authorization requires `spanner.databases.setIamPolicy`
2608	// permission on [resource][google.iam.v1.SetIamPolicyRequest.resource].
2609	// For backups, authorization requires `spanner.backups.setIamPolicy`
2610	// permission on [resource][google.iam.v1.SetIamPolicyRequest.resource].
2611	SetIamPolicy(context.Context, *v1.SetIamPolicyRequest) (*v1.Policy, error)
2612	// Gets the access control policy for a database or backup resource.
2613	// Returns an empty policy if a database or backup exists but does not have a
2614	// policy set.
2615	//
2616	// Authorization requires `spanner.databases.getIamPolicy` permission on
2617	// [resource][google.iam.v1.GetIamPolicyRequest.resource].
2618	// For backups, authorization requires `spanner.backups.getIamPolicy`
2619	// permission on [resource][google.iam.v1.GetIamPolicyRequest.resource].
2620	GetIamPolicy(context.Context, *v1.GetIamPolicyRequest) (*v1.Policy, error)
2621	// Returns permissions that the caller has on the specified database or backup
2622	// resource.
2623	//
2624	// Attempting this RPC on a non-existent Cloud Spanner database will
2625	// result in a NOT_FOUND error if the user has
2626	// `spanner.databases.list` permission on the containing Cloud
2627	// Spanner instance. Otherwise returns an empty set of permissions.
2628	// Calling this method on a backup that does not exist will
2629	// result in a NOT_FOUND error if the user has
2630	// `spanner.backups.list` permission on the containing instance.
2631	TestIamPermissions(context.Context, *v1.TestIamPermissionsRequest) (*v1.TestIamPermissionsResponse, error)
2632	// Starts creating a new Cloud Spanner Backup.
2633	// The returned backup [long-running operation][google.longrunning.Operation]
2634	// will have a name of the format
2635	// `projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id>`
2636	// and can be used to track creation of the backup. The
2637	// [metadata][google.longrunning.Operation.metadata] field type is
2638	// [CreateBackupMetadata][google.spanner.admin.database.v1.CreateBackupMetadata]. The
2639	// [response][google.longrunning.Operation.response] field type is
2640	// [Backup][google.spanner.admin.database.v1.Backup], if successful. Cancelling the returned operation will stop the
2641	// creation and delete the backup.
2642	// There can be only one pending backup creation per database. Backup creation
2643	// of different databases can run concurrently.
2644	CreateBackup(context.Context, *CreateBackupRequest) (*longrunning.Operation, error)
2645	// Gets metadata on a pending or completed [Backup][google.spanner.admin.database.v1.Backup].
2646	GetBackup(context.Context, *GetBackupRequest) (*Backup, error)
2647	// Updates a pending or completed [Backup][google.spanner.admin.database.v1.Backup].
2648	UpdateBackup(context.Context, *UpdateBackupRequest) (*Backup, error)
2649	// Deletes a pending or completed [Backup][google.spanner.admin.database.v1.Backup].
2650	DeleteBackup(context.Context, *DeleteBackupRequest) (*empty.Empty, error)
2651	// Lists completed and pending backups.
2652	// Backups returned are ordered by `create_time` in descending order,
2653	// starting from the most recent `create_time`.
2654	ListBackups(context.Context, *ListBackupsRequest) (*ListBackupsResponse, error)
2655	// Create a new database by restoring from a completed backup. The new
2656	// database must be in the same project and in an instance with the same
2657	// instance configuration as the instance containing
2658	// the backup. The returned database [long-running
2659	// operation][google.longrunning.Operation] has a name of the format
2660	// `projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id>`,
2661	// and can be used to track the progress of the operation, and to cancel it.
2662	// The [metadata][google.longrunning.Operation.metadata] field type is
2663	// [RestoreDatabaseMetadata][google.spanner.admin.database.v1.RestoreDatabaseMetadata].
2664	// The [response][google.longrunning.Operation.response] type
2665	// is [Database][google.spanner.admin.database.v1.Database], if
2666	// successful. Cancelling the returned operation will stop the restore and
2667	// delete the database.
2668	// There can be only one database being restored into an instance at a time.
2669	// Once the restore operation completes, a new restore operation can be
2670	// initiated, without waiting for the optimize operation associated with the
2671	// first restore to complete.
2672	RestoreDatabase(context.Context, *RestoreDatabaseRequest) (*longrunning.Operation, error)
2673	// Lists database [longrunning-operations][google.longrunning.Operation].
2674	// A database operation has a name of the form
2675	// `projects/<project>/instances/<instance>/databases/<database>/operations/<operation>`.
2676	// The long-running operation
2677	// [metadata][google.longrunning.Operation.metadata] field type
2678	// `metadata.type_url` describes the type of the metadata. Operations returned
2679	// include those that have completed/failed/canceled within the last 7 days,
2680	// and pending operations.
2681	ListDatabaseOperations(context.Context, *ListDatabaseOperationsRequest) (*ListDatabaseOperationsResponse, error)
2682	// Lists the backup [long-running operations][google.longrunning.Operation] in
2683	// the given instance. A backup operation has a name of the form
2684	// `projects/<project>/instances/<instance>/backups/<backup>/operations/<operation>`.
2685	// The long-running operation
2686	// [metadata][google.longrunning.Operation.metadata] field type
2687	// `metadata.type_url` describes the type of the metadata. Operations returned
2688	// include those that have completed/failed/canceled within the last 7 days,
2689	// and pending operations. Operations returned are ordered by
2690	// `operation.metadata.value.progress.start_time` in descending order starting
2691	// from the most recently started operation.
2692	ListBackupOperations(context.Context, *ListBackupOperationsRequest) (*ListBackupOperationsResponse, error)
2693}
2694
2695// UnimplementedDatabaseAdminServer can be embedded to have forward compatible implementations.
2696type UnimplementedDatabaseAdminServer struct {
2697}
2698
2699func (*UnimplementedDatabaseAdminServer) ListDatabases(context.Context, *ListDatabasesRequest) (*ListDatabasesResponse, error) {
2700	return nil, status.Errorf(codes.Unimplemented, "method ListDatabases not implemented")
2701}
2702func (*UnimplementedDatabaseAdminServer) CreateDatabase(context.Context, *CreateDatabaseRequest) (*longrunning.Operation, error) {
2703	return nil, status.Errorf(codes.Unimplemented, "method CreateDatabase not implemented")
2704}
2705func (*UnimplementedDatabaseAdminServer) GetDatabase(context.Context, *GetDatabaseRequest) (*Database, error) {
2706	return nil, status.Errorf(codes.Unimplemented, "method GetDatabase not implemented")
2707}
2708func (*UnimplementedDatabaseAdminServer) UpdateDatabaseDdl(context.Context, *UpdateDatabaseDdlRequest) (*longrunning.Operation, error) {
2709	return nil, status.Errorf(codes.Unimplemented, "method UpdateDatabaseDdl not implemented")
2710}
2711func (*UnimplementedDatabaseAdminServer) DropDatabase(context.Context, *DropDatabaseRequest) (*empty.Empty, error) {
2712	return nil, status.Errorf(codes.Unimplemented, "method DropDatabase not implemented")
2713}
2714func (*UnimplementedDatabaseAdminServer) GetDatabaseDdl(context.Context, *GetDatabaseDdlRequest) (*GetDatabaseDdlResponse, error) {
2715	return nil, status.Errorf(codes.Unimplemented, "method GetDatabaseDdl not implemented")
2716}
2717func (*UnimplementedDatabaseAdminServer) SetIamPolicy(context.Context, *v1.SetIamPolicyRequest) (*v1.Policy, error) {
2718	return nil, status.Errorf(codes.Unimplemented, "method SetIamPolicy not implemented")
2719}
2720func (*UnimplementedDatabaseAdminServer) GetIamPolicy(context.Context, *v1.GetIamPolicyRequest) (*v1.Policy, error) {
2721	return nil, status.Errorf(codes.Unimplemented, "method GetIamPolicy not implemented")
2722}
2723func (*UnimplementedDatabaseAdminServer) TestIamPermissions(context.Context, *v1.TestIamPermissionsRequest) (*v1.TestIamPermissionsResponse, error) {
2724	return nil, status.Errorf(codes.Unimplemented, "method TestIamPermissions not implemented")
2725}
2726func (*UnimplementedDatabaseAdminServer) CreateBackup(context.Context, *CreateBackupRequest) (*longrunning.Operation, error) {
2727	return nil, status.Errorf(codes.Unimplemented, "method CreateBackup not implemented")
2728}
2729func (*UnimplementedDatabaseAdminServer) GetBackup(context.Context, *GetBackupRequest) (*Backup, error) {
2730	return nil, status.Errorf(codes.Unimplemented, "method GetBackup not implemented")
2731}
2732func (*UnimplementedDatabaseAdminServer) UpdateBackup(context.Context, *UpdateBackupRequest) (*Backup, error) {
2733	return nil, status.Errorf(codes.Unimplemented, "method UpdateBackup not implemented")
2734}
2735func (*UnimplementedDatabaseAdminServer) DeleteBackup(context.Context, *DeleteBackupRequest) (*empty.Empty, error) {
2736	return nil, status.Errorf(codes.Unimplemented, "method DeleteBackup not implemented")
2737}
2738func (*UnimplementedDatabaseAdminServer) ListBackups(context.Context, *ListBackupsRequest) (*ListBackupsResponse, error) {
2739	return nil, status.Errorf(codes.Unimplemented, "method ListBackups not implemented")
2740}
2741func (*UnimplementedDatabaseAdminServer) RestoreDatabase(context.Context, *RestoreDatabaseRequest) (*longrunning.Operation, error) {
2742	return nil, status.Errorf(codes.Unimplemented, "method RestoreDatabase not implemented")
2743}
2744func (*UnimplementedDatabaseAdminServer) ListDatabaseOperations(context.Context, *ListDatabaseOperationsRequest) (*ListDatabaseOperationsResponse, error) {
2745	return nil, status.Errorf(codes.Unimplemented, "method ListDatabaseOperations not implemented")
2746}
2747func (*UnimplementedDatabaseAdminServer) ListBackupOperations(context.Context, *ListBackupOperationsRequest) (*ListBackupOperationsResponse, error) {
2748	return nil, status.Errorf(codes.Unimplemented, "method ListBackupOperations not implemented")
2749}
2750
2751func RegisterDatabaseAdminServer(s *grpc.Server, srv DatabaseAdminServer) {
2752	s.RegisterService(&_DatabaseAdmin_serviceDesc, srv)
2753}
2754
2755func _DatabaseAdmin_ListDatabases_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2756	in := new(ListDatabasesRequest)
2757	if err := dec(in); err != nil {
2758		return nil, err
2759	}
2760	if interceptor == nil {
2761		return srv.(DatabaseAdminServer).ListDatabases(ctx, in)
2762	}
2763	info := &grpc.UnaryServerInfo{
2764		Server:     srv,
2765		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/ListDatabases",
2766	}
2767	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2768		return srv.(DatabaseAdminServer).ListDatabases(ctx, req.(*ListDatabasesRequest))
2769	}
2770	return interceptor(ctx, in, info, handler)
2771}
2772
2773func _DatabaseAdmin_CreateDatabase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2774	in := new(CreateDatabaseRequest)
2775	if err := dec(in); err != nil {
2776		return nil, err
2777	}
2778	if interceptor == nil {
2779		return srv.(DatabaseAdminServer).CreateDatabase(ctx, in)
2780	}
2781	info := &grpc.UnaryServerInfo{
2782		Server:     srv,
2783		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/CreateDatabase",
2784	}
2785	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2786		return srv.(DatabaseAdminServer).CreateDatabase(ctx, req.(*CreateDatabaseRequest))
2787	}
2788	return interceptor(ctx, in, info, handler)
2789}
2790
2791func _DatabaseAdmin_GetDatabase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2792	in := new(GetDatabaseRequest)
2793	if err := dec(in); err != nil {
2794		return nil, err
2795	}
2796	if interceptor == nil {
2797		return srv.(DatabaseAdminServer).GetDatabase(ctx, in)
2798	}
2799	info := &grpc.UnaryServerInfo{
2800		Server:     srv,
2801		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/GetDatabase",
2802	}
2803	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2804		return srv.(DatabaseAdminServer).GetDatabase(ctx, req.(*GetDatabaseRequest))
2805	}
2806	return interceptor(ctx, in, info, handler)
2807}
2808
2809func _DatabaseAdmin_UpdateDatabaseDdl_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2810	in := new(UpdateDatabaseDdlRequest)
2811	if err := dec(in); err != nil {
2812		return nil, err
2813	}
2814	if interceptor == nil {
2815		return srv.(DatabaseAdminServer).UpdateDatabaseDdl(ctx, in)
2816	}
2817	info := &grpc.UnaryServerInfo{
2818		Server:     srv,
2819		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/UpdateDatabaseDdl",
2820	}
2821	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2822		return srv.(DatabaseAdminServer).UpdateDatabaseDdl(ctx, req.(*UpdateDatabaseDdlRequest))
2823	}
2824	return interceptor(ctx, in, info, handler)
2825}
2826
2827func _DatabaseAdmin_DropDatabase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2828	in := new(DropDatabaseRequest)
2829	if err := dec(in); err != nil {
2830		return nil, err
2831	}
2832	if interceptor == nil {
2833		return srv.(DatabaseAdminServer).DropDatabase(ctx, in)
2834	}
2835	info := &grpc.UnaryServerInfo{
2836		Server:     srv,
2837		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/DropDatabase",
2838	}
2839	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2840		return srv.(DatabaseAdminServer).DropDatabase(ctx, req.(*DropDatabaseRequest))
2841	}
2842	return interceptor(ctx, in, info, handler)
2843}
2844
2845func _DatabaseAdmin_GetDatabaseDdl_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2846	in := new(GetDatabaseDdlRequest)
2847	if err := dec(in); err != nil {
2848		return nil, err
2849	}
2850	if interceptor == nil {
2851		return srv.(DatabaseAdminServer).GetDatabaseDdl(ctx, in)
2852	}
2853	info := &grpc.UnaryServerInfo{
2854		Server:     srv,
2855		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/GetDatabaseDdl",
2856	}
2857	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2858		return srv.(DatabaseAdminServer).GetDatabaseDdl(ctx, req.(*GetDatabaseDdlRequest))
2859	}
2860	return interceptor(ctx, in, info, handler)
2861}
2862
2863func _DatabaseAdmin_SetIamPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2864	in := new(v1.SetIamPolicyRequest)
2865	if err := dec(in); err != nil {
2866		return nil, err
2867	}
2868	if interceptor == nil {
2869		return srv.(DatabaseAdminServer).SetIamPolicy(ctx, in)
2870	}
2871	info := &grpc.UnaryServerInfo{
2872		Server:     srv,
2873		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/SetIamPolicy",
2874	}
2875	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2876		return srv.(DatabaseAdminServer).SetIamPolicy(ctx, req.(*v1.SetIamPolicyRequest))
2877	}
2878	return interceptor(ctx, in, info, handler)
2879}
2880
2881func _DatabaseAdmin_GetIamPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2882	in := new(v1.GetIamPolicyRequest)
2883	if err := dec(in); err != nil {
2884		return nil, err
2885	}
2886	if interceptor == nil {
2887		return srv.(DatabaseAdminServer).GetIamPolicy(ctx, in)
2888	}
2889	info := &grpc.UnaryServerInfo{
2890		Server:     srv,
2891		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/GetIamPolicy",
2892	}
2893	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2894		return srv.(DatabaseAdminServer).GetIamPolicy(ctx, req.(*v1.GetIamPolicyRequest))
2895	}
2896	return interceptor(ctx, in, info, handler)
2897}
2898
2899func _DatabaseAdmin_TestIamPermissions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2900	in := new(v1.TestIamPermissionsRequest)
2901	if err := dec(in); err != nil {
2902		return nil, err
2903	}
2904	if interceptor == nil {
2905		return srv.(DatabaseAdminServer).TestIamPermissions(ctx, in)
2906	}
2907	info := &grpc.UnaryServerInfo{
2908		Server:     srv,
2909		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/TestIamPermissions",
2910	}
2911	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2912		return srv.(DatabaseAdminServer).TestIamPermissions(ctx, req.(*v1.TestIamPermissionsRequest))
2913	}
2914	return interceptor(ctx, in, info, handler)
2915}
2916
2917func _DatabaseAdmin_CreateBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2918	in := new(CreateBackupRequest)
2919	if err := dec(in); err != nil {
2920		return nil, err
2921	}
2922	if interceptor == nil {
2923		return srv.(DatabaseAdminServer).CreateBackup(ctx, in)
2924	}
2925	info := &grpc.UnaryServerInfo{
2926		Server:     srv,
2927		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/CreateBackup",
2928	}
2929	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2930		return srv.(DatabaseAdminServer).CreateBackup(ctx, req.(*CreateBackupRequest))
2931	}
2932	return interceptor(ctx, in, info, handler)
2933}
2934
2935func _DatabaseAdmin_GetBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2936	in := new(GetBackupRequest)
2937	if err := dec(in); err != nil {
2938		return nil, err
2939	}
2940	if interceptor == nil {
2941		return srv.(DatabaseAdminServer).GetBackup(ctx, in)
2942	}
2943	info := &grpc.UnaryServerInfo{
2944		Server:     srv,
2945		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/GetBackup",
2946	}
2947	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2948		return srv.(DatabaseAdminServer).GetBackup(ctx, req.(*GetBackupRequest))
2949	}
2950	return interceptor(ctx, in, info, handler)
2951}
2952
2953func _DatabaseAdmin_UpdateBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2954	in := new(UpdateBackupRequest)
2955	if err := dec(in); err != nil {
2956		return nil, err
2957	}
2958	if interceptor == nil {
2959		return srv.(DatabaseAdminServer).UpdateBackup(ctx, in)
2960	}
2961	info := &grpc.UnaryServerInfo{
2962		Server:     srv,
2963		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/UpdateBackup",
2964	}
2965	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2966		return srv.(DatabaseAdminServer).UpdateBackup(ctx, req.(*UpdateBackupRequest))
2967	}
2968	return interceptor(ctx, in, info, handler)
2969}
2970
2971func _DatabaseAdmin_DeleteBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2972	in := new(DeleteBackupRequest)
2973	if err := dec(in); err != nil {
2974		return nil, err
2975	}
2976	if interceptor == nil {
2977		return srv.(DatabaseAdminServer).DeleteBackup(ctx, in)
2978	}
2979	info := &grpc.UnaryServerInfo{
2980		Server:     srv,
2981		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/DeleteBackup",
2982	}
2983	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
2984		return srv.(DatabaseAdminServer).DeleteBackup(ctx, req.(*DeleteBackupRequest))
2985	}
2986	return interceptor(ctx, in, info, handler)
2987}
2988
2989func _DatabaseAdmin_ListBackups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
2990	in := new(ListBackupsRequest)
2991	if err := dec(in); err != nil {
2992		return nil, err
2993	}
2994	if interceptor == nil {
2995		return srv.(DatabaseAdminServer).ListBackups(ctx, in)
2996	}
2997	info := &grpc.UnaryServerInfo{
2998		Server:     srv,
2999		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/ListBackups",
3000	}
3001	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
3002		return srv.(DatabaseAdminServer).ListBackups(ctx, req.(*ListBackupsRequest))
3003	}
3004	return interceptor(ctx, in, info, handler)
3005}
3006
3007func _DatabaseAdmin_RestoreDatabase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
3008	in := new(RestoreDatabaseRequest)
3009	if err := dec(in); err != nil {
3010		return nil, err
3011	}
3012	if interceptor == nil {
3013		return srv.(DatabaseAdminServer).RestoreDatabase(ctx, in)
3014	}
3015	info := &grpc.UnaryServerInfo{
3016		Server:     srv,
3017		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/RestoreDatabase",
3018	}
3019	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
3020		return srv.(DatabaseAdminServer).RestoreDatabase(ctx, req.(*RestoreDatabaseRequest))
3021	}
3022	return interceptor(ctx, in, info, handler)
3023}
3024
3025func _DatabaseAdmin_ListDatabaseOperations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
3026	in := new(ListDatabaseOperationsRequest)
3027	if err := dec(in); err != nil {
3028		return nil, err
3029	}
3030	if interceptor == nil {
3031		return srv.(DatabaseAdminServer).ListDatabaseOperations(ctx, in)
3032	}
3033	info := &grpc.UnaryServerInfo{
3034		Server:     srv,
3035		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/ListDatabaseOperations",
3036	}
3037	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
3038		return srv.(DatabaseAdminServer).ListDatabaseOperations(ctx, req.(*ListDatabaseOperationsRequest))
3039	}
3040	return interceptor(ctx, in, info, handler)
3041}
3042
3043func _DatabaseAdmin_ListBackupOperations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
3044	in := new(ListBackupOperationsRequest)
3045	if err := dec(in); err != nil {
3046		return nil, err
3047	}
3048	if interceptor == nil {
3049		return srv.(DatabaseAdminServer).ListBackupOperations(ctx, in)
3050	}
3051	info := &grpc.UnaryServerInfo{
3052		Server:     srv,
3053		FullMethod: "/google.spanner.admin.database.v1.DatabaseAdmin/ListBackupOperations",
3054	}
3055	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
3056		return srv.(DatabaseAdminServer).ListBackupOperations(ctx, req.(*ListBackupOperationsRequest))
3057	}
3058	return interceptor(ctx, in, info, handler)
3059}
3060
3061var _DatabaseAdmin_serviceDesc = grpc.ServiceDesc{
3062	ServiceName: "google.spanner.admin.database.v1.DatabaseAdmin",
3063	HandlerType: (*DatabaseAdminServer)(nil),
3064	Methods: []grpc.MethodDesc{
3065		{
3066			MethodName: "ListDatabases",
3067			Handler:    _DatabaseAdmin_ListDatabases_Handler,
3068		},
3069		{
3070			MethodName: "CreateDatabase",
3071			Handler:    _DatabaseAdmin_CreateDatabase_Handler,
3072		},
3073		{
3074			MethodName: "GetDatabase",
3075			Handler:    _DatabaseAdmin_GetDatabase_Handler,
3076		},
3077		{
3078			MethodName: "UpdateDatabaseDdl",
3079			Handler:    _DatabaseAdmin_UpdateDatabaseDdl_Handler,
3080		},
3081		{
3082			MethodName: "DropDatabase",
3083			Handler:    _DatabaseAdmin_DropDatabase_Handler,
3084		},
3085		{
3086			MethodName: "GetDatabaseDdl",
3087			Handler:    _DatabaseAdmin_GetDatabaseDdl_Handler,
3088		},
3089		{
3090			MethodName: "SetIamPolicy",
3091			Handler:    _DatabaseAdmin_SetIamPolicy_Handler,
3092		},
3093		{
3094			MethodName: "GetIamPolicy",
3095			Handler:    _DatabaseAdmin_GetIamPolicy_Handler,
3096		},
3097		{
3098			MethodName: "TestIamPermissions",
3099			Handler:    _DatabaseAdmin_TestIamPermissions_Handler,
3100		},
3101		{
3102			MethodName: "CreateBackup",
3103			Handler:    _DatabaseAdmin_CreateBackup_Handler,
3104		},
3105		{
3106			MethodName: "GetBackup",
3107			Handler:    _DatabaseAdmin_GetBackup_Handler,
3108		},
3109		{
3110			MethodName: "UpdateBackup",
3111			Handler:    _DatabaseAdmin_UpdateBackup_Handler,
3112		},
3113		{
3114			MethodName: "DeleteBackup",
3115			Handler:    _DatabaseAdmin_DeleteBackup_Handler,
3116		},
3117		{
3118			MethodName: "ListBackups",
3119			Handler:    _DatabaseAdmin_ListBackups_Handler,
3120		},
3121		{
3122			MethodName: "RestoreDatabase",
3123			Handler:    _DatabaseAdmin_RestoreDatabase_Handler,
3124		},
3125		{
3126			MethodName: "ListDatabaseOperations",
3127			Handler:    _DatabaseAdmin_ListDatabaseOperations_Handler,
3128		},
3129		{
3130			MethodName: "ListBackupOperations",
3131			Handler:    _DatabaseAdmin_ListBackupOperations_Handler,
3132		},
3133	},
3134	Streams:  []grpc.StreamDesc{},
3135	Metadata: "google/spanner/admin/database/v1/spanner_database_admin.proto",
3136}
3137