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.25.0 18// protoc v3.13.0 19// source: google/cloud/retail/v2beta/import_config.proto 20 21package retail 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 proto "github.com/golang/protobuf/proto" 28 _ "google.golang.org/genproto/googleapis/api/annotations" 29 status "google.golang.org/genproto/googleapis/rpc/status" 30 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 31 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 32 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 33 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 34) 35 36const ( 37 // Verify that this generated code is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 39 // Verify that runtime/protoimpl is sufficiently up-to-date. 40 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 41) 42 43// This is a compile-time assertion that a sufficiently up-to-date version 44// of the legacy proto package is being used. 45const _ = proto.ProtoPackageIsVersion4 46 47// Google Cloud Storage location for input content. 48// format. 49type GcsSource struct { 50 state protoimpl.MessageState 51 sizeCache protoimpl.SizeCache 52 unknownFields protoimpl.UnknownFields 53 54 // Required. Google Cloud Storage URIs to input files. URI can be up to 55 // 2000 characters long. URIs can match the full object path (for example, 56 // gs://bucket/directory/object.json) or a pattern matching one or more 57 // files, such as gs://bucket/directory/*.json. A request can 58 // contain at most 100 files, and each file can be up to 2 GB. See 59 // [Importing product information](/recommendations-ai/docs/upload-catalog) 60 // for the expected file format and setup instructions. 61 InputUris []string `protobuf:"bytes,1,rep,name=input_uris,json=inputUris,proto3" json:"input_uris,omitempty"` 62 // The schema to use when parsing the data from the source. 63 // 64 // Supported values for product imports: 65 // 66 // * `product` (default): One JSON 67 // [Product][google.cloud.retail.v2beta.Product] per line. Each product must 68 // have a valid [Product.id][google.cloud.retail.v2beta.Product.id]. 69 // * `product_merchant_center`: See [Importing catalog data from Merchant 70 // Center](/retail/recommendations-ai/docs/upload-catalog#mc). 71 // 72 // Supported values for user events imports: 73 // 74 // * `user_event` (default): One JSON 75 // [UserEvent][google.cloud.retail.v2beta.UserEvent] per line. 76 // * `user_event_ga360`: Using 77 // https://support.google.com/analytics/answer/3437719?hl=en. 78 DataSchema string `protobuf:"bytes,2,opt,name=data_schema,json=dataSchema,proto3" json:"data_schema,omitempty"` 79} 80 81func (x *GcsSource) Reset() { 82 *x = GcsSource{} 83 if protoimpl.UnsafeEnabled { 84 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[0] 85 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 86 ms.StoreMessageInfo(mi) 87 } 88} 89 90func (x *GcsSource) String() string { 91 return protoimpl.X.MessageStringOf(x) 92} 93 94func (*GcsSource) ProtoMessage() {} 95 96func (x *GcsSource) ProtoReflect() protoreflect.Message { 97 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[0] 98 if protoimpl.UnsafeEnabled && x != nil { 99 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 100 if ms.LoadMessageInfo() == nil { 101 ms.StoreMessageInfo(mi) 102 } 103 return ms 104 } 105 return mi.MessageOf(x) 106} 107 108// Deprecated: Use GcsSource.ProtoReflect.Descriptor instead. 109func (*GcsSource) Descriptor() ([]byte, []int) { 110 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{0} 111} 112 113func (x *GcsSource) GetInputUris() []string { 114 if x != nil { 115 return x.InputUris 116 } 117 return nil 118} 119 120func (x *GcsSource) GetDataSchema() string { 121 if x != nil { 122 return x.DataSchema 123 } 124 return "" 125} 126 127// BigQuery source import data from. 128type BigQuerySource struct { 129 state protoimpl.MessageState 130 sizeCache protoimpl.SizeCache 131 unknownFields protoimpl.UnknownFields 132 133 // The project id (can be project # or id) that the BigQuery source is in with 134 // a length limit of 128 characters. If not specified, inherits the project 135 // id from the parent request. 136 ProjectId string `protobuf:"bytes,5,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` 137 // Required. The BigQuery data set to copy the data from with a length limit 138 // of 1,024 characters. 139 DatasetId string `protobuf:"bytes,1,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"` 140 // Required. The BigQuery table to copy the data from with a length limit of 141 // 1,024 characters. 142 TableId string `protobuf:"bytes,2,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"` 143 // Intermediate Cloud Storage directory used for the import with a length 144 // limit of 2,000 characters. Can be specified if one wants to have the 145 // BigQuery export to a specific Cloud Storage directory. 146 GcsStagingDir string `protobuf:"bytes,3,opt,name=gcs_staging_dir,json=gcsStagingDir,proto3" json:"gcs_staging_dir,omitempty"` 147 // The schema to use when parsing the data from the source. 148 // 149 // Supported values for product imports: 150 // 151 // * `product` (default): One JSON 152 // [Product][google.cloud.retail.v2beta.Product] per line. Each product must 153 // have a valid [Product.id][google.cloud.retail.v2beta.Product.id]. 154 // * `product_merchant_center`: See [Importing catalog data from Merchant 155 // Center](/retail/recommendations-ai/docs/upload-catalog#mc). 156 // 157 // Supported values for user events imports: 158 // 159 // * `user_event` (default): One JSON 160 // [UserEvent][google.cloud.retail.v2beta.UserEvent] per line. 161 // * `user_event_ga360`: Using 162 // https://support.google.com/analytics/answer/3437719?hl=en. 163 DataSchema string `protobuf:"bytes,4,opt,name=data_schema,json=dataSchema,proto3" json:"data_schema,omitempty"` 164} 165 166func (x *BigQuerySource) Reset() { 167 *x = BigQuerySource{} 168 if protoimpl.UnsafeEnabled { 169 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[1] 170 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 171 ms.StoreMessageInfo(mi) 172 } 173} 174 175func (x *BigQuerySource) String() string { 176 return protoimpl.X.MessageStringOf(x) 177} 178 179func (*BigQuerySource) ProtoMessage() {} 180 181func (x *BigQuerySource) ProtoReflect() protoreflect.Message { 182 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[1] 183 if protoimpl.UnsafeEnabled && x != nil { 184 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 185 if ms.LoadMessageInfo() == nil { 186 ms.StoreMessageInfo(mi) 187 } 188 return ms 189 } 190 return mi.MessageOf(x) 191} 192 193// Deprecated: Use BigQuerySource.ProtoReflect.Descriptor instead. 194func (*BigQuerySource) Descriptor() ([]byte, []int) { 195 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{1} 196} 197 198func (x *BigQuerySource) GetProjectId() string { 199 if x != nil { 200 return x.ProjectId 201 } 202 return "" 203} 204 205func (x *BigQuerySource) GetDatasetId() string { 206 if x != nil { 207 return x.DatasetId 208 } 209 return "" 210} 211 212func (x *BigQuerySource) GetTableId() string { 213 if x != nil { 214 return x.TableId 215 } 216 return "" 217} 218 219func (x *BigQuerySource) GetGcsStagingDir() string { 220 if x != nil { 221 return x.GcsStagingDir 222 } 223 return "" 224} 225 226func (x *BigQuerySource) GetDataSchema() string { 227 if x != nil { 228 return x.DataSchema 229 } 230 return "" 231} 232 233// The inline source for the input config for ImportProducts method. 234type ProductInlineSource struct { 235 state protoimpl.MessageState 236 sizeCache protoimpl.SizeCache 237 unknownFields protoimpl.UnknownFields 238 239 // Required. A list of products to update/create. Each product must have a 240 // valid [Product.id][google.cloud.retail.v2beta.Product.id]. Recommended max 241 // of 10k items. 242 Products []*Product `protobuf:"bytes,1,rep,name=products,proto3" json:"products,omitempty"` 243} 244 245func (x *ProductInlineSource) Reset() { 246 *x = ProductInlineSource{} 247 if protoimpl.UnsafeEnabled { 248 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[2] 249 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 250 ms.StoreMessageInfo(mi) 251 } 252} 253 254func (x *ProductInlineSource) String() string { 255 return protoimpl.X.MessageStringOf(x) 256} 257 258func (*ProductInlineSource) ProtoMessage() {} 259 260func (x *ProductInlineSource) ProtoReflect() protoreflect.Message { 261 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[2] 262 if protoimpl.UnsafeEnabled && x != nil { 263 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 264 if ms.LoadMessageInfo() == nil { 265 ms.StoreMessageInfo(mi) 266 } 267 return ms 268 } 269 return mi.MessageOf(x) 270} 271 272// Deprecated: Use ProductInlineSource.ProtoReflect.Descriptor instead. 273func (*ProductInlineSource) Descriptor() ([]byte, []int) { 274 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{2} 275} 276 277func (x *ProductInlineSource) GetProducts() []*Product { 278 if x != nil { 279 return x.Products 280 } 281 return nil 282} 283 284// The inline source for the input config for ImportUserEvents method. 285type UserEventInlineSource struct { 286 state protoimpl.MessageState 287 sizeCache protoimpl.SizeCache 288 unknownFields protoimpl.UnknownFields 289 290 // Required. A list of user events to import. Recommended max of 10k items. 291 UserEvents []*UserEvent `protobuf:"bytes,1,rep,name=user_events,json=userEvents,proto3" json:"user_events,omitempty"` 292} 293 294func (x *UserEventInlineSource) Reset() { 295 *x = UserEventInlineSource{} 296 if protoimpl.UnsafeEnabled { 297 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[3] 298 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 299 ms.StoreMessageInfo(mi) 300 } 301} 302 303func (x *UserEventInlineSource) String() string { 304 return protoimpl.X.MessageStringOf(x) 305} 306 307func (*UserEventInlineSource) ProtoMessage() {} 308 309func (x *UserEventInlineSource) ProtoReflect() protoreflect.Message { 310 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[3] 311 if protoimpl.UnsafeEnabled && x != nil { 312 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 313 if ms.LoadMessageInfo() == nil { 314 ms.StoreMessageInfo(mi) 315 } 316 return ms 317 } 318 return mi.MessageOf(x) 319} 320 321// Deprecated: Use UserEventInlineSource.ProtoReflect.Descriptor instead. 322func (*UserEventInlineSource) Descriptor() ([]byte, []int) { 323 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{3} 324} 325 326func (x *UserEventInlineSource) GetUserEvents() []*UserEvent { 327 if x != nil { 328 return x.UserEvents 329 } 330 return nil 331} 332 333// Configuration of destination for Import related errors. 334type ImportErrorsConfig struct { 335 state protoimpl.MessageState 336 sizeCache protoimpl.SizeCache 337 unknownFields protoimpl.UnknownFields 338 339 // Required. Errors destination. 340 // 341 // Types that are assignable to Destination: 342 // *ImportErrorsConfig_GcsPrefix 343 Destination isImportErrorsConfig_Destination `protobuf_oneof:"destination"` 344} 345 346func (x *ImportErrorsConfig) Reset() { 347 *x = ImportErrorsConfig{} 348 if protoimpl.UnsafeEnabled { 349 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[4] 350 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 351 ms.StoreMessageInfo(mi) 352 } 353} 354 355func (x *ImportErrorsConfig) String() string { 356 return protoimpl.X.MessageStringOf(x) 357} 358 359func (*ImportErrorsConfig) ProtoMessage() {} 360 361func (x *ImportErrorsConfig) ProtoReflect() protoreflect.Message { 362 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[4] 363 if protoimpl.UnsafeEnabled && x != nil { 364 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 365 if ms.LoadMessageInfo() == nil { 366 ms.StoreMessageInfo(mi) 367 } 368 return ms 369 } 370 return mi.MessageOf(x) 371} 372 373// Deprecated: Use ImportErrorsConfig.ProtoReflect.Descriptor instead. 374func (*ImportErrorsConfig) Descriptor() ([]byte, []int) { 375 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{4} 376} 377 378func (m *ImportErrorsConfig) GetDestination() isImportErrorsConfig_Destination { 379 if m != nil { 380 return m.Destination 381 } 382 return nil 383} 384 385func (x *ImportErrorsConfig) GetGcsPrefix() string { 386 if x, ok := x.GetDestination().(*ImportErrorsConfig_GcsPrefix); ok { 387 return x.GcsPrefix 388 } 389 return "" 390} 391 392type isImportErrorsConfig_Destination interface { 393 isImportErrorsConfig_Destination() 394} 395 396type ImportErrorsConfig_GcsPrefix struct { 397 // Google Cloud Storage path for import errors. This must be an empty, 398 // existing Cloud Storage bucket. Import errors will be written to a file in 399 // this bucket, one per line, as a JSON-encoded 400 // `google.rpc.Status` message. 401 GcsPrefix string `protobuf:"bytes,1,opt,name=gcs_prefix,json=gcsPrefix,proto3,oneof"` 402} 403 404func (*ImportErrorsConfig_GcsPrefix) isImportErrorsConfig_Destination() {} 405 406// Request message for Import methods. 407type ImportProductsRequest struct { 408 state protoimpl.MessageState 409 sizeCache protoimpl.SizeCache 410 unknownFields protoimpl.UnknownFields 411 412 // Required. 413 // "projects/1234/locations/global/catalogs/default_catalog/branches/default_branch" 414 // 415 // If no updateMask is specified, requires products.create permission. 416 // If updateMask is specified, requires products.update permission. 417 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 418 // Required. The desired input location of the data. 419 InputConfig *ProductInputConfig `protobuf:"bytes,2,opt,name=input_config,json=inputConfig,proto3" json:"input_config,omitempty"` 420 // The desired location of errors incurred during the Import. 421 ErrorsConfig *ImportErrorsConfig `protobuf:"bytes,3,opt,name=errors_config,json=errorsConfig,proto3" json:"errors_config,omitempty"` 422 // Indicates which fields in the provided imported 'products' to update. If 423 // not set, will by default update all fields. 424 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,4,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 425} 426 427func (x *ImportProductsRequest) Reset() { 428 *x = ImportProductsRequest{} 429 if protoimpl.UnsafeEnabled { 430 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[5] 431 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 432 ms.StoreMessageInfo(mi) 433 } 434} 435 436func (x *ImportProductsRequest) String() string { 437 return protoimpl.X.MessageStringOf(x) 438} 439 440func (*ImportProductsRequest) ProtoMessage() {} 441 442func (x *ImportProductsRequest) ProtoReflect() protoreflect.Message { 443 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[5] 444 if protoimpl.UnsafeEnabled && x != nil { 445 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 446 if ms.LoadMessageInfo() == nil { 447 ms.StoreMessageInfo(mi) 448 } 449 return ms 450 } 451 return mi.MessageOf(x) 452} 453 454// Deprecated: Use ImportProductsRequest.ProtoReflect.Descriptor instead. 455func (*ImportProductsRequest) Descriptor() ([]byte, []int) { 456 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{5} 457} 458 459func (x *ImportProductsRequest) GetParent() string { 460 if x != nil { 461 return x.Parent 462 } 463 return "" 464} 465 466func (x *ImportProductsRequest) GetInputConfig() *ProductInputConfig { 467 if x != nil { 468 return x.InputConfig 469 } 470 return nil 471} 472 473func (x *ImportProductsRequest) GetErrorsConfig() *ImportErrorsConfig { 474 if x != nil { 475 return x.ErrorsConfig 476 } 477 return nil 478} 479 480func (x *ImportProductsRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 481 if x != nil { 482 return x.UpdateMask 483 } 484 return nil 485} 486 487// Request message for the ImportUserEvents request. 488type ImportUserEventsRequest struct { 489 state protoimpl.MessageState 490 sizeCache protoimpl.SizeCache 491 unknownFields protoimpl.UnknownFields 492 493 // Required. "projects/1234/locations/global/catalogs/default_catalog" 494 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 495 // Required. The desired input location of the data. 496 InputConfig *UserEventInputConfig `protobuf:"bytes,2,opt,name=input_config,json=inputConfig,proto3" json:"input_config,omitempty"` 497 // The desired location of errors incurred during the Import. Cannot be set 498 // for inline user event imports. 499 ErrorsConfig *ImportErrorsConfig `protobuf:"bytes,3,opt,name=errors_config,json=errorsConfig,proto3" json:"errors_config,omitempty"` 500} 501 502func (x *ImportUserEventsRequest) Reset() { 503 *x = ImportUserEventsRequest{} 504 if protoimpl.UnsafeEnabled { 505 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[6] 506 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 507 ms.StoreMessageInfo(mi) 508 } 509} 510 511func (x *ImportUserEventsRequest) String() string { 512 return protoimpl.X.MessageStringOf(x) 513} 514 515func (*ImportUserEventsRequest) ProtoMessage() {} 516 517func (x *ImportUserEventsRequest) ProtoReflect() protoreflect.Message { 518 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[6] 519 if protoimpl.UnsafeEnabled && x != nil { 520 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 521 if ms.LoadMessageInfo() == nil { 522 ms.StoreMessageInfo(mi) 523 } 524 return ms 525 } 526 return mi.MessageOf(x) 527} 528 529// Deprecated: Use ImportUserEventsRequest.ProtoReflect.Descriptor instead. 530func (*ImportUserEventsRequest) Descriptor() ([]byte, []int) { 531 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{6} 532} 533 534func (x *ImportUserEventsRequest) GetParent() string { 535 if x != nil { 536 return x.Parent 537 } 538 return "" 539} 540 541func (x *ImportUserEventsRequest) GetInputConfig() *UserEventInputConfig { 542 if x != nil { 543 return x.InputConfig 544 } 545 return nil 546} 547 548func (x *ImportUserEventsRequest) GetErrorsConfig() *ImportErrorsConfig { 549 if x != nil { 550 return x.ErrorsConfig 551 } 552 return nil 553} 554 555// The input config source for products. 556type ProductInputConfig struct { 557 state protoimpl.MessageState 558 sizeCache protoimpl.SizeCache 559 unknownFields protoimpl.UnknownFields 560 561 // Required. The source of the input. 562 // 563 // Types that are assignable to Source: 564 // *ProductInputConfig_ProductInlineSource 565 // *ProductInputConfig_GcsSource 566 // *ProductInputConfig_BigQuerySource 567 Source isProductInputConfig_Source `protobuf_oneof:"source"` 568} 569 570func (x *ProductInputConfig) Reset() { 571 *x = ProductInputConfig{} 572 if protoimpl.UnsafeEnabled { 573 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[7] 574 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 575 ms.StoreMessageInfo(mi) 576 } 577} 578 579func (x *ProductInputConfig) String() string { 580 return protoimpl.X.MessageStringOf(x) 581} 582 583func (*ProductInputConfig) ProtoMessage() {} 584 585func (x *ProductInputConfig) ProtoReflect() protoreflect.Message { 586 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[7] 587 if protoimpl.UnsafeEnabled && x != nil { 588 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 589 if ms.LoadMessageInfo() == nil { 590 ms.StoreMessageInfo(mi) 591 } 592 return ms 593 } 594 return mi.MessageOf(x) 595} 596 597// Deprecated: Use ProductInputConfig.ProtoReflect.Descriptor instead. 598func (*ProductInputConfig) Descriptor() ([]byte, []int) { 599 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{7} 600} 601 602func (m *ProductInputConfig) GetSource() isProductInputConfig_Source { 603 if m != nil { 604 return m.Source 605 } 606 return nil 607} 608 609func (x *ProductInputConfig) GetProductInlineSource() *ProductInlineSource { 610 if x, ok := x.GetSource().(*ProductInputConfig_ProductInlineSource); ok { 611 return x.ProductInlineSource 612 } 613 return nil 614} 615 616func (x *ProductInputConfig) GetGcsSource() *GcsSource { 617 if x, ok := x.GetSource().(*ProductInputConfig_GcsSource); ok { 618 return x.GcsSource 619 } 620 return nil 621} 622 623func (x *ProductInputConfig) GetBigQuerySource() *BigQuerySource { 624 if x, ok := x.GetSource().(*ProductInputConfig_BigQuerySource); ok { 625 return x.BigQuerySource 626 } 627 return nil 628} 629 630type isProductInputConfig_Source interface { 631 isProductInputConfig_Source() 632} 633 634type ProductInputConfig_ProductInlineSource struct { 635 // The Inline source for the input content for products. 636 ProductInlineSource *ProductInlineSource `protobuf:"bytes,1,opt,name=product_inline_source,json=productInlineSource,proto3,oneof"` 637} 638 639type ProductInputConfig_GcsSource struct { 640 // Google Cloud Storage location for the input content. 641 GcsSource *GcsSource `protobuf:"bytes,2,opt,name=gcs_source,json=gcsSource,proto3,oneof"` 642} 643 644type ProductInputConfig_BigQuerySource struct { 645 // BigQuery input source. 646 BigQuerySource *BigQuerySource `protobuf:"bytes,3,opt,name=big_query_source,json=bigQuerySource,proto3,oneof"` 647} 648 649func (*ProductInputConfig_ProductInlineSource) isProductInputConfig_Source() {} 650 651func (*ProductInputConfig_GcsSource) isProductInputConfig_Source() {} 652 653func (*ProductInputConfig_BigQuerySource) isProductInputConfig_Source() {} 654 655// The input config source for user events. 656type UserEventInputConfig struct { 657 state protoimpl.MessageState 658 sizeCache protoimpl.SizeCache 659 unknownFields protoimpl.UnknownFields 660 661 // The source of the input. 662 // 663 // Types that are assignable to Source: 664 // *UserEventInputConfig_UserEventInlineSource 665 // *UserEventInputConfig_GcsSource 666 // *UserEventInputConfig_BigQuerySource 667 Source isUserEventInputConfig_Source `protobuf_oneof:"source"` 668} 669 670func (x *UserEventInputConfig) Reset() { 671 *x = UserEventInputConfig{} 672 if protoimpl.UnsafeEnabled { 673 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[8] 674 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 675 ms.StoreMessageInfo(mi) 676 } 677} 678 679func (x *UserEventInputConfig) String() string { 680 return protoimpl.X.MessageStringOf(x) 681} 682 683func (*UserEventInputConfig) ProtoMessage() {} 684 685func (x *UserEventInputConfig) ProtoReflect() protoreflect.Message { 686 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[8] 687 if protoimpl.UnsafeEnabled && x != nil { 688 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 689 if ms.LoadMessageInfo() == nil { 690 ms.StoreMessageInfo(mi) 691 } 692 return ms 693 } 694 return mi.MessageOf(x) 695} 696 697// Deprecated: Use UserEventInputConfig.ProtoReflect.Descriptor instead. 698func (*UserEventInputConfig) Descriptor() ([]byte, []int) { 699 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{8} 700} 701 702func (m *UserEventInputConfig) GetSource() isUserEventInputConfig_Source { 703 if m != nil { 704 return m.Source 705 } 706 return nil 707} 708 709func (x *UserEventInputConfig) GetUserEventInlineSource() *UserEventInlineSource { 710 if x, ok := x.GetSource().(*UserEventInputConfig_UserEventInlineSource); ok { 711 return x.UserEventInlineSource 712 } 713 return nil 714} 715 716func (x *UserEventInputConfig) GetGcsSource() *GcsSource { 717 if x, ok := x.GetSource().(*UserEventInputConfig_GcsSource); ok { 718 return x.GcsSource 719 } 720 return nil 721} 722 723func (x *UserEventInputConfig) GetBigQuerySource() *BigQuerySource { 724 if x, ok := x.GetSource().(*UserEventInputConfig_BigQuerySource); ok { 725 return x.BigQuerySource 726 } 727 return nil 728} 729 730type isUserEventInputConfig_Source interface { 731 isUserEventInputConfig_Source() 732} 733 734type UserEventInputConfig_UserEventInlineSource struct { 735 // Required. The Inline source for the input content for UserEvents. 736 UserEventInlineSource *UserEventInlineSource `protobuf:"bytes,1,opt,name=user_event_inline_source,json=userEventInlineSource,proto3,oneof"` 737} 738 739type UserEventInputConfig_GcsSource struct { 740 // Required. Google Cloud Storage location for the input content. 741 GcsSource *GcsSource `protobuf:"bytes,2,opt,name=gcs_source,json=gcsSource,proto3,oneof"` 742} 743 744type UserEventInputConfig_BigQuerySource struct { 745 // Required. BigQuery input source. 746 BigQuerySource *BigQuerySource `protobuf:"bytes,3,opt,name=big_query_source,json=bigQuerySource,proto3,oneof"` 747} 748 749func (*UserEventInputConfig_UserEventInlineSource) isUserEventInputConfig_Source() {} 750 751func (*UserEventInputConfig_GcsSource) isUserEventInputConfig_Source() {} 752 753func (*UserEventInputConfig_BigQuerySource) isUserEventInputConfig_Source() {} 754 755// Metadata related to the progress of the Import operation. This will be 756// returned by the google.longrunning.Operation.metadata field. 757type ImportMetadata struct { 758 state protoimpl.MessageState 759 sizeCache protoimpl.SizeCache 760 unknownFields protoimpl.UnknownFields 761 762 // Operation create time. 763 CreateTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 764 // Operation last update time. If the operation is done, this is also the 765 // finish time. 766 UpdateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` 767 // Count of entries that were processed successfully. 768 SuccessCount int64 `protobuf:"varint,3,opt,name=success_count,json=successCount,proto3" json:"success_count,omitempty"` 769 // Count of entries that encountered errors while processing. 770 FailureCount int64 `protobuf:"varint,4,opt,name=failure_count,json=failureCount,proto3" json:"failure_count,omitempty"` 771} 772 773func (x *ImportMetadata) Reset() { 774 *x = ImportMetadata{} 775 if protoimpl.UnsafeEnabled { 776 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[9] 777 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 778 ms.StoreMessageInfo(mi) 779 } 780} 781 782func (x *ImportMetadata) String() string { 783 return protoimpl.X.MessageStringOf(x) 784} 785 786func (*ImportMetadata) ProtoMessage() {} 787 788func (x *ImportMetadata) ProtoReflect() protoreflect.Message { 789 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[9] 790 if protoimpl.UnsafeEnabled && x != nil { 791 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 792 if ms.LoadMessageInfo() == nil { 793 ms.StoreMessageInfo(mi) 794 } 795 return ms 796 } 797 return mi.MessageOf(x) 798} 799 800// Deprecated: Use ImportMetadata.ProtoReflect.Descriptor instead. 801func (*ImportMetadata) Descriptor() ([]byte, []int) { 802 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{9} 803} 804 805func (x *ImportMetadata) GetCreateTime() *timestamppb.Timestamp { 806 if x != nil { 807 return x.CreateTime 808 } 809 return nil 810} 811 812func (x *ImportMetadata) GetUpdateTime() *timestamppb.Timestamp { 813 if x != nil { 814 return x.UpdateTime 815 } 816 return nil 817} 818 819func (x *ImportMetadata) GetSuccessCount() int64 { 820 if x != nil { 821 return x.SuccessCount 822 } 823 return 0 824} 825 826func (x *ImportMetadata) GetFailureCount() int64 { 827 if x != nil { 828 return x.FailureCount 829 } 830 return 0 831} 832 833// Response of the 834// [ImportProductsRequest][google.cloud.retail.v2beta.ImportProductsRequest]. If 835// the long running operation is done, then this message is returned by the 836// google.longrunning.Operations.response field if the operation was successful. 837type ImportProductsResponse struct { 838 state protoimpl.MessageState 839 sizeCache protoimpl.SizeCache 840 unknownFields protoimpl.UnknownFields 841 842 // A sample of errors encountered while processing the request. 843 ErrorSamples []*status.Status `protobuf:"bytes,1,rep,name=error_samples,json=errorSamples,proto3" json:"error_samples,omitempty"` 844 // Echoes the destination for the complete errors in the request if set. 845 ErrorsConfig *ImportErrorsConfig `protobuf:"bytes,2,opt,name=errors_config,json=errorsConfig,proto3" json:"errors_config,omitempty"` 846} 847 848func (x *ImportProductsResponse) Reset() { 849 *x = ImportProductsResponse{} 850 if protoimpl.UnsafeEnabled { 851 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[10] 852 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 853 ms.StoreMessageInfo(mi) 854 } 855} 856 857func (x *ImportProductsResponse) String() string { 858 return protoimpl.X.MessageStringOf(x) 859} 860 861func (*ImportProductsResponse) ProtoMessage() {} 862 863func (x *ImportProductsResponse) ProtoReflect() protoreflect.Message { 864 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[10] 865 if protoimpl.UnsafeEnabled && x != nil { 866 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 867 if ms.LoadMessageInfo() == nil { 868 ms.StoreMessageInfo(mi) 869 } 870 return ms 871 } 872 return mi.MessageOf(x) 873} 874 875// Deprecated: Use ImportProductsResponse.ProtoReflect.Descriptor instead. 876func (*ImportProductsResponse) Descriptor() ([]byte, []int) { 877 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{10} 878} 879 880func (x *ImportProductsResponse) GetErrorSamples() []*status.Status { 881 if x != nil { 882 return x.ErrorSamples 883 } 884 return nil 885} 886 887func (x *ImportProductsResponse) GetErrorsConfig() *ImportErrorsConfig { 888 if x != nil { 889 return x.ErrorsConfig 890 } 891 return nil 892} 893 894// Response of the ImportUserEventsRequest. If the long running 895// operation was successful, then this message is returned by the 896// google.longrunning.Operations.response field if the operation was successful. 897type ImportUserEventsResponse struct { 898 state protoimpl.MessageState 899 sizeCache protoimpl.SizeCache 900 unknownFields protoimpl.UnknownFields 901 902 // A sample of errors encountered while processing the request. 903 ErrorSamples []*status.Status `protobuf:"bytes,1,rep,name=error_samples,json=errorSamples,proto3" json:"error_samples,omitempty"` 904 // Echoes the destination for the complete errors if this field was set in 905 // the request. 906 ErrorsConfig *ImportErrorsConfig `protobuf:"bytes,2,opt,name=errors_config,json=errorsConfig,proto3" json:"errors_config,omitempty"` 907 // Aggregated statistics of user event import status. 908 ImportSummary *UserEventImportSummary `protobuf:"bytes,3,opt,name=import_summary,json=importSummary,proto3" json:"import_summary,omitempty"` 909} 910 911func (x *ImportUserEventsResponse) Reset() { 912 *x = ImportUserEventsResponse{} 913 if protoimpl.UnsafeEnabled { 914 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[11] 915 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 916 ms.StoreMessageInfo(mi) 917 } 918} 919 920func (x *ImportUserEventsResponse) String() string { 921 return protoimpl.X.MessageStringOf(x) 922} 923 924func (*ImportUserEventsResponse) ProtoMessage() {} 925 926func (x *ImportUserEventsResponse) ProtoReflect() protoreflect.Message { 927 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[11] 928 if protoimpl.UnsafeEnabled && x != nil { 929 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 930 if ms.LoadMessageInfo() == nil { 931 ms.StoreMessageInfo(mi) 932 } 933 return ms 934 } 935 return mi.MessageOf(x) 936} 937 938// Deprecated: Use ImportUserEventsResponse.ProtoReflect.Descriptor instead. 939func (*ImportUserEventsResponse) Descriptor() ([]byte, []int) { 940 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{11} 941} 942 943func (x *ImportUserEventsResponse) GetErrorSamples() []*status.Status { 944 if x != nil { 945 return x.ErrorSamples 946 } 947 return nil 948} 949 950func (x *ImportUserEventsResponse) GetErrorsConfig() *ImportErrorsConfig { 951 if x != nil { 952 return x.ErrorsConfig 953 } 954 return nil 955} 956 957func (x *ImportUserEventsResponse) GetImportSummary() *UserEventImportSummary { 958 if x != nil { 959 return x.ImportSummary 960 } 961 return nil 962} 963 964// A summary of import result. The UserEventImportSummary summarizes 965// the import status for user events. 966type UserEventImportSummary struct { 967 state protoimpl.MessageState 968 sizeCache protoimpl.SizeCache 969 unknownFields protoimpl.UnknownFields 970 971 // Count of user events imported with complete existing catalog information. 972 JoinedEventsCount int64 `protobuf:"varint,1,opt,name=joined_events_count,json=joinedEventsCount,proto3" json:"joined_events_count,omitempty"` 973 // Count of user events imported, but with catalog information not found 974 // in the imported catalog. 975 UnjoinedEventsCount int64 `protobuf:"varint,2,opt,name=unjoined_events_count,json=unjoinedEventsCount,proto3" json:"unjoined_events_count,omitempty"` 976} 977 978func (x *UserEventImportSummary) Reset() { 979 *x = UserEventImportSummary{} 980 if protoimpl.UnsafeEnabled { 981 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[12] 982 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 983 ms.StoreMessageInfo(mi) 984 } 985} 986 987func (x *UserEventImportSummary) String() string { 988 return protoimpl.X.MessageStringOf(x) 989} 990 991func (*UserEventImportSummary) ProtoMessage() {} 992 993func (x *UserEventImportSummary) ProtoReflect() protoreflect.Message { 994 mi := &file_google_cloud_retail_v2beta_import_config_proto_msgTypes[12] 995 if protoimpl.UnsafeEnabled && x != nil { 996 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 997 if ms.LoadMessageInfo() == nil { 998 ms.StoreMessageInfo(mi) 999 } 1000 return ms 1001 } 1002 return mi.MessageOf(x) 1003} 1004 1005// Deprecated: Use UserEventImportSummary.ProtoReflect.Descriptor instead. 1006func (*UserEventImportSummary) Descriptor() ([]byte, []int) { 1007 return file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP(), []int{12} 1008} 1009 1010func (x *UserEventImportSummary) GetJoinedEventsCount() int64 { 1011 if x != nil { 1012 return x.JoinedEventsCount 1013 } 1014 return 0 1015} 1016 1017func (x *UserEventImportSummary) GetUnjoinedEventsCount() int64 { 1018 if x != nil { 1019 return x.UnjoinedEventsCount 1020 } 1021 return 0 1022} 1023 1024var File_google_cloud_retail_v2beta_import_config_proto protoreflect.FileDescriptor 1025 1026var file_google_cloud_retail_v2beta_import_config_proto_rawDesc = []byte{ 1027 0x0a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x72, 1028 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x69, 0x6d, 0x70, 1029 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1030 0x12, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 1031 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x1a, 0x1c, 0x67, 0x6f, 1032 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 1033 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 1034 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 1035 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x67, 0x6f, 0x6f, 1036 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 1037 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x2e, 1038 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 1039 0x6f, 0x75, 0x64, 0x2f, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 1040 0x61, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 1041 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1042 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 1043 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 1044 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 1045 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 1046 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x50, 1047 0x0a, 0x09, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x69, 1048 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 1049 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x55, 0x72, 0x69, 0x73, 0x12, 1050 0x1f, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 1051 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 1052 0x22, 0xbc, 0x01, 0x0a, 0x0e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 1053 0x72, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 1054 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 1055 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 1056 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x64, 0x61, 0x74, 1057 0x61, 0x73, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 1058 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x74, 1059 0x61, 0x62, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x67, 0x63, 0x73, 0x5f, 0x73, 0x74, 1060 0x61, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 1061 0x0d, 0x67, 0x63, 0x73, 0x53, 0x74, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x12, 0x1f, 1062 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x04, 0x20, 1063 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 1064 0x5b, 0x0a, 0x13, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 1065 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x44, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 1066 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1067 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 1068 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x42, 0x03, 0xe0, 1069 0x41, 0x02, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x73, 0x22, 0x64, 0x0a, 0x15, 1070 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 1071 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x76, 1072 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 1073 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 1074 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 1075 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 1076 0x74, 0x73, 0x22, 0x44, 0x0a, 0x12, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x72, 0x72, 0x6f, 1077 0x72, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1f, 0x0a, 0x0a, 0x67, 0x63, 0x73, 0x5f, 1078 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 1079 0x67, 0x63, 0x73, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x42, 0x0d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 1080 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x02, 0x0a, 0x15, 0x49, 0x6d, 0x70, 1081 0x6f, 0x72, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 1082 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 1083 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 1084 0x56, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 1085 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 1086 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 1087 0x74, 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 1088 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 1089 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x53, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 1090 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 1091 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 1092 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 1093 0x72, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 1094 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3b, 0x0a, 0x0b, 1095 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 1096 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1097 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 1098 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xe5, 0x01, 0x0a, 0x17, 0x49, 0x6d, 1099 0x70, 0x6f, 0x72, 0x74, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 1100 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 1101 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 1102 0x6e, 0x74, 0x12, 0x58, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 1103 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1104 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 1105 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 1106 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 1107 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x53, 0x0a, 0x0d, 1108 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 1109 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1110 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 1111 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x43, 0x6f, 0x6e, 1112 0x66, 0x69, 0x67, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 1113 0x67, 0x22, 0xa5, 0x02, 0x0a, 0x12, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x70, 1114 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x65, 0x0a, 0x15, 0x70, 0x72, 0x6f, 0x64, 1115 0x75, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 1116 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1117 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 1118 0x62, 0x65, 0x74, 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x6c, 0x69, 1119 0x6e, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x13, 0x70, 0x72, 0x6f, 0x64, 1120 0x75, 0x63, 0x74, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 1121 0x46, 0x0a, 0x0a, 0x67, 0x63, 0x73, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 1122 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1123 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 1124 0x2e, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x09, 0x67, 0x63, 1125 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x56, 0x0a, 0x10, 0x62, 0x69, 0x67, 0x5f, 0x71, 1126 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 1127 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 1128 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x42, 1129 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 1130 0x0e, 0x62, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 1131 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xbd, 0x02, 0x0a, 0x14, 0x55, 0x73, 1132 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 1133 0x69, 0x67, 0x12, 0x71, 0x0a, 0x18, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 1134 0x5f, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 1135 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1136 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 1137 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 1138 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x48, 0x00, 0x52, 0x15, 1139 0x75, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 1140 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x4b, 0x0a, 0x0a, 0x67, 0x63, 0x73, 0x5f, 0x73, 0x6f, 0x75, 1141 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1142 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 1143 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 1144 0x42, 0x03, 0xe0, 0x41, 0x02, 0x48, 0x00, 0x52, 0x09, 0x67, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 1145 0x63, 0x65, 0x12, 0x5b, 0x0a, 0x10, 0x62, 0x69, 0x67, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 1146 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 1147 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 1148 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 1149 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x48, 0x00, 0x52, 1150 0x0e, 0x62, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 1151 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xd4, 0x01, 0x0a, 0x0e, 0x49, 0x6d, 1152 0x70, 0x6f, 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3b, 0x0a, 0x0b, 1153 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 1154 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1155 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 1156 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 1157 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 1158 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 1159 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 1160 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 1161 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x73, 1162 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x66, 1163 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 1164 0x28, 0x03, 0x52, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 1165 0x22, 0xa6, 0x01, 0x0a, 0x16, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 1166 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0d, 0x65, 1167 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 1168 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 1169 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x53, 0x61, 0x6d, 1170 0x70, 0x6c, 0x65, 0x73, 0x12, 0x53, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x5f, 0x63, 1171 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 1172 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 1173 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x45, 1174 0x72, 0x72, 0x6f, 0x72, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 0x65, 0x72, 0x72, 1175 0x6f, 0x72, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x83, 0x02, 0x0a, 0x18, 0x49, 0x6d, 1176 0x70, 0x6f, 0x72, 0x74, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 1177 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 1178 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 1179 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 1180 0x73, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 1181 0x53, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 1182 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1183 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 1184 0x65, 0x74, 0x61, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 1185 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x43, 0x6f, 1186 0x6e, 0x66, 0x69, 0x67, 0x12, 0x59, 0x0a, 0x0e, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 1187 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 1188 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 1189 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 1190 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 1191 0x52, 0x0d, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 1192 0x7c, 0x0a, 0x16, 0x55, 0x73, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x70, 0x6f, 1193 0x72, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x2e, 0x0a, 0x13, 0x6a, 0x6f, 0x69, 1194 0x6e, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 1195 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x76, 1196 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x75, 0x6e, 0x6a, 1197 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x75, 1198 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x75, 0x6e, 0x6a, 0x6f, 0x69, 0x6e, 1199 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0xda, 0x01, 1200 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1201 0x75, 0x64, 0x2e, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 1202 0x42, 0x11, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x72, 1203 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 1204 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 1205 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 1206 0x75, 0x64, 0x2f, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 1207 0x3b, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6c, 0xa2, 0x02, 0x06, 0x52, 0x45, 0x54, 0x41, 0x49, 0x4c, 1208 0xaa, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 1209 0x52, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x2e, 0x56, 0x32, 0x42, 0x65, 0x74, 0x61, 0xca, 0x02, 0x1a, 1210 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x52, 0x65, 0x74, 1211 0x61, 0x69, 0x6c, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0xea, 0x02, 0x1d, 0x47, 0x6f, 0x6f, 1212 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x52, 0x65, 0x74, 0x61, 1213 0x69, 0x6c, 0x3a, 0x3a, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 1214 0x6f, 0x33, 1215} 1216 1217var ( 1218 file_google_cloud_retail_v2beta_import_config_proto_rawDescOnce sync.Once 1219 file_google_cloud_retail_v2beta_import_config_proto_rawDescData = file_google_cloud_retail_v2beta_import_config_proto_rawDesc 1220) 1221 1222func file_google_cloud_retail_v2beta_import_config_proto_rawDescGZIP() []byte { 1223 file_google_cloud_retail_v2beta_import_config_proto_rawDescOnce.Do(func() { 1224 file_google_cloud_retail_v2beta_import_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_retail_v2beta_import_config_proto_rawDescData) 1225 }) 1226 return file_google_cloud_retail_v2beta_import_config_proto_rawDescData 1227} 1228 1229var file_google_cloud_retail_v2beta_import_config_proto_msgTypes = make([]protoimpl.MessageInfo, 13) 1230var file_google_cloud_retail_v2beta_import_config_proto_goTypes = []interface{}{ 1231 (*GcsSource)(nil), // 0: google.cloud.retail.v2beta.GcsSource 1232 (*BigQuerySource)(nil), // 1: google.cloud.retail.v2beta.BigQuerySource 1233 (*ProductInlineSource)(nil), // 2: google.cloud.retail.v2beta.ProductInlineSource 1234 (*UserEventInlineSource)(nil), // 3: google.cloud.retail.v2beta.UserEventInlineSource 1235 (*ImportErrorsConfig)(nil), // 4: google.cloud.retail.v2beta.ImportErrorsConfig 1236 (*ImportProductsRequest)(nil), // 5: google.cloud.retail.v2beta.ImportProductsRequest 1237 (*ImportUserEventsRequest)(nil), // 6: google.cloud.retail.v2beta.ImportUserEventsRequest 1238 (*ProductInputConfig)(nil), // 7: google.cloud.retail.v2beta.ProductInputConfig 1239 (*UserEventInputConfig)(nil), // 8: google.cloud.retail.v2beta.UserEventInputConfig 1240 (*ImportMetadata)(nil), // 9: google.cloud.retail.v2beta.ImportMetadata 1241 (*ImportProductsResponse)(nil), // 10: google.cloud.retail.v2beta.ImportProductsResponse 1242 (*ImportUserEventsResponse)(nil), // 11: google.cloud.retail.v2beta.ImportUserEventsResponse 1243 (*UserEventImportSummary)(nil), // 12: google.cloud.retail.v2beta.UserEventImportSummary 1244 (*Product)(nil), // 13: google.cloud.retail.v2beta.Product 1245 (*UserEvent)(nil), // 14: google.cloud.retail.v2beta.UserEvent 1246 (*fieldmaskpb.FieldMask)(nil), // 15: google.protobuf.FieldMask 1247 (*timestamppb.Timestamp)(nil), // 16: google.protobuf.Timestamp 1248 (*status.Status)(nil), // 17: google.rpc.Status 1249} 1250var file_google_cloud_retail_v2beta_import_config_proto_depIdxs = []int32{ 1251 13, // 0: google.cloud.retail.v2beta.ProductInlineSource.products:type_name -> google.cloud.retail.v2beta.Product 1252 14, // 1: google.cloud.retail.v2beta.UserEventInlineSource.user_events:type_name -> google.cloud.retail.v2beta.UserEvent 1253 7, // 2: google.cloud.retail.v2beta.ImportProductsRequest.input_config:type_name -> google.cloud.retail.v2beta.ProductInputConfig 1254 4, // 3: google.cloud.retail.v2beta.ImportProductsRequest.errors_config:type_name -> google.cloud.retail.v2beta.ImportErrorsConfig 1255 15, // 4: google.cloud.retail.v2beta.ImportProductsRequest.update_mask:type_name -> google.protobuf.FieldMask 1256 8, // 5: google.cloud.retail.v2beta.ImportUserEventsRequest.input_config:type_name -> google.cloud.retail.v2beta.UserEventInputConfig 1257 4, // 6: google.cloud.retail.v2beta.ImportUserEventsRequest.errors_config:type_name -> google.cloud.retail.v2beta.ImportErrorsConfig 1258 2, // 7: google.cloud.retail.v2beta.ProductInputConfig.product_inline_source:type_name -> google.cloud.retail.v2beta.ProductInlineSource 1259 0, // 8: google.cloud.retail.v2beta.ProductInputConfig.gcs_source:type_name -> google.cloud.retail.v2beta.GcsSource 1260 1, // 9: google.cloud.retail.v2beta.ProductInputConfig.big_query_source:type_name -> google.cloud.retail.v2beta.BigQuerySource 1261 3, // 10: google.cloud.retail.v2beta.UserEventInputConfig.user_event_inline_source:type_name -> google.cloud.retail.v2beta.UserEventInlineSource 1262 0, // 11: google.cloud.retail.v2beta.UserEventInputConfig.gcs_source:type_name -> google.cloud.retail.v2beta.GcsSource 1263 1, // 12: google.cloud.retail.v2beta.UserEventInputConfig.big_query_source:type_name -> google.cloud.retail.v2beta.BigQuerySource 1264 16, // 13: google.cloud.retail.v2beta.ImportMetadata.create_time:type_name -> google.protobuf.Timestamp 1265 16, // 14: google.cloud.retail.v2beta.ImportMetadata.update_time:type_name -> google.protobuf.Timestamp 1266 17, // 15: google.cloud.retail.v2beta.ImportProductsResponse.error_samples:type_name -> google.rpc.Status 1267 4, // 16: google.cloud.retail.v2beta.ImportProductsResponse.errors_config:type_name -> google.cloud.retail.v2beta.ImportErrorsConfig 1268 17, // 17: google.cloud.retail.v2beta.ImportUserEventsResponse.error_samples:type_name -> google.rpc.Status 1269 4, // 18: google.cloud.retail.v2beta.ImportUserEventsResponse.errors_config:type_name -> google.cloud.retail.v2beta.ImportErrorsConfig 1270 12, // 19: google.cloud.retail.v2beta.ImportUserEventsResponse.import_summary:type_name -> google.cloud.retail.v2beta.UserEventImportSummary 1271 20, // [20:20] is the sub-list for method output_type 1272 20, // [20:20] is the sub-list for method input_type 1273 20, // [20:20] is the sub-list for extension type_name 1274 20, // [20:20] is the sub-list for extension extendee 1275 0, // [0:20] is the sub-list for field type_name 1276} 1277 1278func init() { file_google_cloud_retail_v2beta_import_config_proto_init() } 1279func file_google_cloud_retail_v2beta_import_config_proto_init() { 1280 if File_google_cloud_retail_v2beta_import_config_proto != nil { 1281 return 1282 } 1283 file_google_cloud_retail_v2beta_product_proto_init() 1284 file_google_cloud_retail_v2beta_user_event_proto_init() 1285 if !protoimpl.UnsafeEnabled { 1286 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1287 switch v := v.(*GcsSource); i { 1288 case 0: 1289 return &v.state 1290 case 1: 1291 return &v.sizeCache 1292 case 2: 1293 return &v.unknownFields 1294 default: 1295 return nil 1296 } 1297 } 1298 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1299 switch v := v.(*BigQuerySource); i { 1300 case 0: 1301 return &v.state 1302 case 1: 1303 return &v.sizeCache 1304 case 2: 1305 return &v.unknownFields 1306 default: 1307 return nil 1308 } 1309 } 1310 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1311 switch v := v.(*ProductInlineSource); i { 1312 case 0: 1313 return &v.state 1314 case 1: 1315 return &v.sizeCache 1316 case 2: 1317 return &v.unknownFields 1318 default: 1319 return nil 1320 } 1321 } 1322 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1323 switch v := v.(*UserEventInlineSource); i { 1324 case 0: 1325 return &v.state 1326 case 1: 1327 return &v.sizeCache 1328 case 2: 1329 return &v.unknownFields 1330 default: 1331 return nil 1332 } 1333 } 1334 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1335 switch v := v.(*ImportErrorsConfig); i { 1336 case 0: 1337 return &v.state 1338 case 1: 1339 return &v.sizeCache 1340 case 2: 1341 return &v.unknownFields 1342 default: 1343 return nil 1344 } 1345 } 1346 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1347 switch v := v.(*ImportProductsRequest); i { 1348 case 0: 1349 return &v.state 1350 case 1: 1351 return &v.sizeCache 1352 case 2: 1353 return &v.unknownFields 1354 default: 1355 return nil 1356 } 1357 } 1358 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1359 switch v := v.(*ImportUserEventsRequest); i { 1360 case 0: 1361 return &v.state 1362 case 1: 1363 return &v.sizeCache 1364 case 2: 1365 return &v.unknownFields 1366 default: 1367 return nil 1368 } 1369 } 1370 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 1371 switch v := v.(*ProductInputConfig); i { 1372 case 0: 1373 return &v.state 1374 case 1: 1375 return &v.sizeCache 1376 case 2: 1377 return &v.unknownFields 1378 default: 1379 return nil 1380 } 1381 } 1382 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 1383 switch v := v.(*UserEventInputConfig); i { 1384 case 0: 1385 return &v.state 1386 case 1: 1387 return &v.sizeCache 1388 case 2: 1389 return &v.unknownFields 1390 default: 1391 return nil 1392 } 1393 } 1394 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 1395 switch v := v.(*ImportMetadata); i { 1396 case 0: 1397 return &v.state 1398 case 1: 1399 return &v.sizeCache 1400 case 2: 1401 return &v.unknownFields 1402 default: 1403 return nil 1404 } 1405 } 1406 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 1407 switch v := v.(*ImportProductsResponse); i { 1408 case 0: 1409 return &v.state 1410 case 1: 1411 return &v.sizeCache 1412 case 2: 1413 return &v.unknownFields 1414 default: 1415 return nil 1416 } 1417 } 1418 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 1419 switch v := v.(*ImportUserEventsResponse); i { 1420 case 0: 1421 return &v.state 1422 case 1: 1423 return &v.sizeCache 1424 case 2: 1425 return &v.unknownFields 1426 default: 1427 return nil 1428 } 1429 } 1430 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 1431 switch v := v.(*UserEventImportSummary); i { 1432 case 0: 1433 return &v.state 1434 case 1: 1435 return &v.sizeCache 1436 case 2: 1437 return &v.unknownFields 1438 default: 1439 return nil 1440 } 1441 } 1442 } 1443 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[4].OneofWrappers = []interface{}{ 1444 (*ImportErrorsConfig_GcsPrefix)(nil), 1445 } 1446 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[7].OneofWrappers = []interface{}{ 1447 (*ProductInputConfig_ProductInlineSource)(nil), 1448 (*ProductInputConfig_GcsSource)(nil), 1449 (*ProductInputConfig_BigQuerySource)(nil), 1450 } 1451 file_google_cloud_retail_v2beta_import_config_proto_msgTypes[8].OneofWrappers = []interface{}{ 1452 (*UserEventInputConfig_UserEventInlineSource)(nil), 1453 (*UserEventInputConfig_GcsSource)(nil), 1454 (*UserEventInputConfig_BigQuerySource)(nil), 1455 } 1456 type x struct{} 1457 out := protoimpl.TypeBuilder{ 1458 File: protoimpl.DescBuilder{ 1459 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1460 RawDescriptor: file_google_cloud_retail_v2beta_import_config_proto_rawDesc, 1461 NumEnums: 0, 1462 NumMessages: 13, 1463 NumExtensions: 0, 1464 NumServices: 0, 1465 }, 1466 GoTypes: file_google_cloud_retail_v2beta_import_config_proto_goTypes, 1467 DependencyIndexes: file_google_cloud_retail_v2beta_import_config_proto_depIdxs, 1468 MessageInfos: file_google_cloud_retail_v2beta_import_config_proto_msgTypes, 1469 }.Build() 1470 File_google_cloud_retail_v2beta_import_config_proto = out.File 1471 file_google_cloud_retail_v2beta_import_config_proto_rawDesc = nil 1472 file_google_cloud_retail_v2beta_import_config_proto_goTypes = nil 1473 file_google_cloud_retail_v2beta_import_config_proto_depIdxs = nil 1474} 1475