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