1// Copyright 2021 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.26.0 18// protoc v3.12.2 19// source: google/cloud/pubsublite/v1/common.proto 20 21package pubsublite 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 _ "google.golang.org/genproto/googleapis/api/annotations" 28 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 29 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 30 durationpb "google.golang.org/protobuf/types/known/durationpb" 31 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 32) 33 34const ( 35 // Verify that this generated code is sufficiently up-to-date. 36 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 37 // Verify that runtime/protoimpl is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 39) 40 41// When this subscription should send messages to subscribers relative to 42// messages persistence in storage. For details, see [Creating Lite 43// subscriptions](https://cloud.google.com/pubsub/lite/docs/subscriptions#creating_lite_subscriptions). 44type Subscription_DeliveryConfig_DeliveryRequirement int32 45 46const ( 47 // Default value. This value is unused. 48 Subscription_DeliveryConfig_DELIVERY_REQUIREMENT_UNSPECIFIED Subscription_DeliveryConfig_DeliveryRequirement = 0 49 // The server does not wait for a published message to be successfully 50 // written to storage before delivering it to subscribers. 51 Subscription_DeliveryConfig_DELIVER_IMMEDIATELY Subscription_DeliveryConfig_DeliveryRequirement = 1 52 // The server will not deliver a published message to subscribers until 53 // the message has been successfully written to storage. This will result 54 // in higher end-to-end latency, but consistent delivery. 55 Subscription_DeliveryConfig_DELIVER_AFTER_STORED Subscription_DeliveryConfig_DeliveryRequirement = 2 56) 57 58// Enum value maps for Subscription_DeliveryConfig_DeliveryRequirement. 59var ( 60 Subscription_DeliveryConfig_DeliveryRequirement_name = map[int32]string{ 61 0: "DELIVERY_REQUIREMENT_UNSPECIFIED", 62 1: "DELIVER_IMMEDIATELY", 63 2: "DELIVER_AFTER_STORED", 64 } 65 Subscription_DeliveryConfig_DeliveryRequirement_value = map[string]int32{ 66 "DELIVERY_REQUIREMENT_UNSPECIFIED": 0, 67 "DELIVER_IMMEDIATELY": 1, 68 "DELIVER_AFTER_STORED": 2, 69 } 70) 71 72func (x Subscription_DeliveryConfig_DeliveryRequirement) Enum() *Subscription_DeliveryConfig_DeliveryRequirement { 73 p := new(Subscription_DeliveryConfig_DeliveryRequirement) 74 *p = x 75 return p 76} 77 78func (x Subscription_DeliveryConfig_DeliveryRequirement) String() string { 79 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 80} 81 82func (Subscription_DeliveryConfig_DeliveryRequirement) Descriptor() protoreflect.EnumDescriptor { 83 return file_google_cloud_pubsublite_v1_common_proto_enumTypes[0].Descriptor() 84} 85 86func (Subscription_DeliveryConfig_DeliveryRequirement) Type() protoreflect.EnumType { 87 return &file_google_cloud_pubsublite_v1_common_proto_enumTypes[0] 88} 89 90func (x Subscription_DeliveryConfig_DeliveryRequirement) Number() protoreflect.EnumNumber { 91 return protoreflect.EnumNumber(x) 92} 93 94// Deprecated: Use Subscription_DeliveryConfig_DeliveryRequirement.Descriptor instead. 95func (Subscription_DeliveryConfig_DeliveryRequirement) EnumDescriptor() ([]byte, []int) { 96 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{6, 0, 0} 97} 98 99// The values associated with a key of an attribute. 100type AttributeValues struct { 101 state protoimpl.MessageState 102 sizeCache protoimpl.SizeCache 103 unknownFields protoimpl.UnknownFields 104 105 // The list of values associated with a key. 106 Values [][]byte `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` 107} 108 109func (x *AttributeValues) Reset() { 110 *x = AttributeValues{} 111 if protoimpl.UnsafeEnabled { 112 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[0] 113 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 114 ms.StoreMessageInfo(mi) 115 } 116} 117 118func (x *AttributeValues) String() string { 119 return protoimpl.X.MessageStringOf(x) 120} 121 122func (*AttributeValues) ProtoMessage() {} 123 124func (x *AttributeValues) ProtoReflect() protoreflect.Message { 125 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[0] 126 if protoimpl.UnsafeEnabled && x != nil { 127 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 128 if ms.LoadMessageInfo() == nil { 129 ms.StoreMessageInfo(mi) 130 } 131 return ms 132 } 133 return mi.MessageOf(x) 134} 135 136// Deprecated: Use AttributeValues.ProtoReflect.Descriptor instead. 137func (*AttributeValues) Descriptor() ([]byte, []int) { 138 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{0} 139} 140 141func (x *AttributeValues) GetValues() [][]byte { 142 if x != nil { 143 return x.Values 144 } 145 return nil 146} 147 148// A message that is published by publishers and delivered to subscribers. 149type PubSubMessage struct { 150 state protoimpl.MessageState 151 sizeCache protoimpl.SizeCache 152 unknownFields protoimpl.UnknownFields 153 154 // The key used for routing messages to partitions or for compaction (e.g., 155 // keep the last N messages per key). If the key is empty, the message is 156 // routed to an arbitrary partition. 157 Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 158 // The payload of the message. 159 Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` 160 // Optional attributes that can be used for message metadata/headers. 161 Attributes map[string]*AttributeValues `protobuf:"bytes,3,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 162 // An optional, user-specified event time. 163 EventTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=event_time,json=eventTime,proto3" json:"event_time,omitempty"` 164} 165 166func (x *PubSubMessage) Reset() { 167 *x = PubSubMessage{} 168 if protoimpl.UnsafeEnabled { 169 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[1] 170 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 171 ms.StoreMessageInfo(mi) 172 } 173} 174 175func (x *PubSubMessage) String() string { 176 return protoimpl.X.MessageStringOf(x) 177} 178 179func (*PubSubMessage) ProtoMessage() {} 180 181func (x *PubSubMessage) ProtoReflect() protoreflect.Message { 182 mi := &file_google_cloud_pubsublite_v1_common_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 PubSubMessage.ProtoReflect.Descriptor instead. 194func (*PubSubMessage) Descriptor() ([]byte, []int) { 195 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{1} 196} 197 198func (x *PubSubMessage) GetKey() []byte { 199 if x != nil { 200 return x.Key 201 } 202 return nil 203} 204 205func (x *PubSubMessage) GetData() []byte { 206 if x != nil { 207 return x.Data 208 } 209 return nil 210} 211 212func (x *PubSubMessage) GetAttributes() map[string]*AttributeValues { 213 if x != nil { 214 return x.Attributes 215 } 216 return nil 217} 218 219func (x *PubSubMessage) GetEventTime() *timestamppb.Timestamp { 220 if x != nil { 221 return x.EventTime 222 } 223 return nil 224} 225 226// A cursor that describes the position of a message within a topic partition. 227type Cursor struct { 228 state protoimpl.MessageState 229 sizeCache protoimpl.SizeCache 230 unknownFields protoimpl.UnknownFields 231 232 // The offset of a message within a topic partition. Must be greater than or 233 // equal 0. 234 Offset int64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"` 235} 236 237func (x *Cursor) Reset() { 238 *x = Cursor{} 239 if protoimpl.UnsafeEnabled { 240 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[2] 241 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 242 ms.StoreMessageInfo(mi) 243 } 244} 245 246func (x *Cursor) String() string { 247 return protoimpl.X.MessageStringOf(x) 248} 249 250func (*Cursor) ProtoMessage() {} 251 252func (x *Cursor) ProtoReflect() protoreflect.Message { 253 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[2] 254 if protoimpl.UnsafeEnabled && x != nil { 255 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 256 if ms.LoadMessageInfo() == nil { 257 ms.StoreMessageInfo(mi) 258 } 259 return ms 260 } 261 return mi.MessageOf(x) 262} 263 264// Deprecated: Use Cursor.ProtoReflect.Descriptor instead. 265func (*Cursor) Descriptor() ([]byte, []int) { 266 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{2} 267} 268 269func (x *Cursor) GetOffset() int64 { 270 if x != nil { 271 return x.Offset 272 } 273 return 0 274} 275 276// A message that has been stored and sequenced by the Pub/Sub Lite system. 277type SequencedMessage struct { 278 state protoimpl.MessageState 279 sizeCache protoimpl.SizeCache 280 unknownFields protoimpl.UnknownFields 281 282 // The position of a message within the partition where it is stored. 283 Cursor *Cursor `protobuf:"bytes,1,opt,name=cursor,proto3" json:"cursor,omitempty"` 284 // The time when the message was received by the server when it was first 285 // published. 286 PublishTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=publish_time,json=publishTime,proto3" json:"publish_time,omitempty"` 287 // The user message. 288 Message *PubSubMessage `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` 289 // The size in bytes of this message for flow control and quota purposes. 290 SizeBytes int64 `protobuf:"varint,4,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"` 291} 292 293func (x *SequencedMessage) Reset() { 294 *x = SequencedMessage{} 295 if protoimpl.UnsafeEnabled { 296 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[3] 297 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 298 ms.StoreMessageInfo(mi) 299 } 300} 301 302func (x *SequencedMessage) String() string { 303 return protoimpl.X.MessageStringOf(x) 304} 305 306func (*SequencedMessage) ProtoMessage() {} 307 308func (x *SequencedMessage) ProtoReflect() protoreflect.Message { 309 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[3] 310 if protoimpl.UnsafeEnabled && x != nil { 311 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 312 if ms.LoadMessageInfo() == nil { 313 ms.StoreMessageInfo(mi) 314 } 315 return ms 316 } 317 return mi.MessageOf(x) 318} 319 320// Deprecated: Use SequencedMessage.ProtoReflect.Descriptor instead. 321func (*SequencedMessage) Descriptor() ([]byte, []int) { 322 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{3} 323} 324 325func (x *SequencedMessage) GetCursor() *Cursor { 326 if x != nil { 327 return x.Cursor 328 } 329 return nil 330} 331 332func (x *SequencedMessage) GetPublishTime() *timestamppb.Timestamp { 333 if x != nil { 334 return x.PublishTime 335 } 336 return nil 337} 338 339func (x *SequencedMessage) GetMessage() *PubSubMessage { 340 if x != nil { 341 return x.Message 342 } 343 return nil 344} 345 346func (x *SequencedMessage) GetSizeBytes() int64 { 347 if x != nil { 348 return x.SizeBytes 349 } 350 return 0 351} 352 353// Metadata about a reservation resource. 354type Reservation struct { 355 state protoimpl.MessageState 356 sizeCache protoimpl.SizeCache 357 unknownFields protoimpl.UnknownFields 358 359 // The name of the reservation. 360 // Structured like: 361 // projects/{project_number}/locations/{location}/reservations/{reservation_id} 362 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 363 // The reserved throughput capacity. Every unit of throughput capacity is 364 // equivalent to 1 MiB/s of published messages or 2 MiB/s of subscribed 365 // messages. 366 // 367 // Any topics which are declared as using capacity from a Reservation will 368 // consume resources from this reservation instead of being charged 369 // individually. 370 ThroughputCapacity int64 `protobuf:"varint,2,opt,name=throughput_capacity,json=throughputCapacity,proto3" json:"throughput_capacity,omitempty"` 371} 372 373func (x *Reservation) Reset() { 374 *x = Reservation{} 375 if protoimpl.UnsafeEnabled { 376 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[4] 377 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 378 ms.StoreMessageInfo(mi) 379 } 380} 381 382func (x *Reservation) String() string { 383 return protoimpl.X.MessageStringOf(x) 384} 385 386func (*Reservation) ProtoMessage() {} 387 388func (x *Reservation) ProtoReflect() protoreflect.Message { 389 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[4] 390 if protoimpl.UnsafeEnabled && x != nil { 391 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 392 if ms.LoadMessageInfo() == nil { 393 ms.StoreMessageInfo(mi) 394 } 395 return ms 396 } 397 return mi.MessageOf(x) 398} 399 400// Deprecated: Use Reservation.ProtoReflect.Descriptor instead. 401func (*Reservation) Descriptor() ([]byte, []int) { 402 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{4} 403} 404 405func (x *Reservation) GetName() string { 406 if x != nil { 407 return x.Name 408 } 409 return "" 410} 411 412func (x *Reservation) GetThroughputCapacity() int64 { 413 if x != nil { 414 return x.ThroughputCapacity 415 } 416 return 0 417} 418 419// Metadata about a topic resource. 420type Topic struct { 421 state protoimpl.MessageState 422 sizeCache protoimpl.SizeCache 423 unknownFields protoimpl.UnknownFields 424 425 // The name of the topic. 426 // Structured like: 427 // projects/{project_number}/locations/{location}/topics/{topic_id} 428 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 429 // The settings for this topic's partitions. 430 PartitionConfig *Topic_PartitionConfig `protobuf:"bytes,2,opt,name=partition_config,json=partitionConfig,proto3" json:"partition_config,omitempty"` 431 // The settings for this topic's message retention. 432 RetentionConfig *Topic_RetentionConfig `protobuf:"bytes,3,opt,name=retention_config,json=retentionConfig,proto3" json:"retention_config,omitempty"` 433 // The settings for this topic's Reservation usage. 434 ReservationConfig *Topic_ReservationConfig `protobuf:"bytes,4,opt,name=reservation_config,json=reservationConfig,proto3" json:"reservation_config,omitempty"` 435} 436 437func (x *Topic) Reset() { 438 *x = Topic{} 439 if protoimpl.UnsafeEnabled { 440 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[5] 441 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 442 ms.StoreMessageInfo(mi) 443 } 444} 445 446func (x *Topic) String() string { 447 return protoimpl.X.MessageStringOf(x) 448} 449 450func (*Topic) ProtoMessage() {} 451 452func (x *Topic) ProtoReflect() protoreflect.Message { 453 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[5] 454 if protoimpl.UnsafeEnabled && x != nil { 455 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 456 if ms.LoadMessageInfo() == nil { 457 ms.StoreMessageInfo(mi) 458 } 459 return ms 460 } 461 return mi.MessageOf(x) 462} 463 464// Deprecated: Use Topic.ProtoReflect.Descriptor instead. 465func (*Topic) Descriptor() ([]byte, []int) { 466 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{5} 467} 468 469func (x *Topic) GetName() string { 470 if x != nil { 471 return x.Name 472 } 473 return "" 474} 475 476func (x *Topic) GetPartitionConfig() *Topic_PartitionConfig { 477 if x != nil { 478 return x.PartitionConfig 479 } 480 return nil 481} 482 483func (x *Topic) GetRetentionConfig() *Topic_RetentionConfig { 484 if x != nil { 485 return x.RetentionConfig 486 } 487 return nil 488} 489 490func (x *Topic) GetReservationConfig() *Topic_ReservationConfig { 491 if x != nil { 492 return x.ReservationConfig 493 } 494 return nil 495} 496 497// Metadata about a subscription resource. 498type Subscription struct { 499 state protoimpl.MessageState 500 sizeCache protoimpl.SizeCache 501 unknownFields protoimpl.UnknownFields 502 503 // The name of the subscription. 504 // Structured like: 505 // projects/{project_number}/locations/{location}/subscriptions/{subscription_id} 506 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 507 // The name of the topic this subscription is attached to. 508 // Structured like: 509 // projects/{project_number}/locations/{location}/topics/{topic_id} 510 Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"` 511 // The settings for this subscription's message delivery. 512 DeliveryConfig *Subscription_DeliveryConfig `protobuf:"bytes,3,opt,name=delivery_config,json=deliveryConfig,proto3" json:"delivery_config,omitempty"` 513} 514 515func (x *Subscription) Reset() { 516 *x = Subscription{} 517 if protoimpl.UnsafeEnabled { 518 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[6] 519 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 520 ms.StoreMessageInfo(mi) 521 } 522} 523 524func (x *Subscription) String() string { 525 return protoimpl.X.MessageStringOf(x) 526} 527 528func (*Subscription) ProtoMessage() {} 529 530func (x *Subscription) ProtoReflect() protoreflect.Message { 531 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[6] 532 if protoimpl.UnsafeEnabled && x != nil { 533 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 534 if ms.LoadMessageInfo() == nil { 535 ms.StoreMessageInfo(mi) 536 } 537 return ms 538 } 539 return mi.MessageOf(x) 540} 541 542// Deprecated: Use Subscription.ProtoReflect.Descriptor instead. 543func (*Subscription) Descriptor() ([]byte, []int) { 544 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{6} 545} 546 547func (x *Subscription) GetName() string { 548 if x != nil { 549 return x.Name 550 } 551 return "" 552} 553 554func (x *Subscription) GetTopic() string { 555 if x != nil { 556 return x.Topic 557 } 558 return "" 559} 560 561func (x *Subscription) GetDeliveryConfig() *Subscription_DeliveryConfig { 562 if x != nil { 563 return x.DeliveryConfig 564 } 565 return nil 566} 567 568// A target publish or event time. Can be used for seeking to or retrieving the 569// corresponding cursor. 570type TimeTarget struct { 571 state protoimpl.MessageState 572 sizeCache protoimpl.SizeCache 573 unknownFields protoimpl.UnknownFields 574 575 // The type of message time to query. 576 // 577 // Types that are assignable to Time: 578 // *TimeTarget_PublishTime 579 // *TimeTarget_EventTime 580 Time isTimeTarget_Time `protobuf_oneof:"time"` 581} 582 583func (x *TimeTarget) Reset() { 584 *x = TimeTarget{} 585 if protoimpl.UnsafeEnabled { 586 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[7] 587 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 588 ms.StoreMessageInfo(mi) 589 } 590} 591 592func (x *TimeTarget) String() string { 593 return protoimpl.X.MessageStringOf(x) 594} 595 596func (*TimeTarget) ProtoMessage() {} 597 598func (x *TimeTarget) ProtoReflect() protoreflect.Message { 599 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[7] 600 if protoimpl.UnsafeEnabled && x != nil { 601 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 602 if ms.LoadMessageInfo() == nil { 603 ms.StoreMessageInfo(mi) 604 } 605 return ms 606 } 607 return mi.MessageOf(x) 608} 609 610// Deprecated: Use TimeTarget.ProtoReflect.Descriptor instead. 611func (*TimeTarget) Descriptor() ([]byte, []int) { 612 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{7} 613} 614 615func (m *TimeTarget) GetTime() isTimeTarget_Time { 616 if m != nil { 617 return m.Time 618 } 619 return nil 620} 621 622func (x *TimeTarget) GetPublishTime() *timestamppb.Timestamp { 623 if x, ok := x.GetTime().(*TimeTarget_PublishTime); ok { 624 return x.PublishTime 625 } 626 return nil 627} 628 629func (x *TimeTarget) GetEventTime() *timestamppb.Timestamp { 630 if x, ok := x.GetTime().(*TimeTarget_EventTime); ok { 631 return x.EventTime 632 } 633 return nil 634} 635 636type isTimeTarget_Time interface { 637 isTimeTarget_Time() 638} 639 640type TimeTarget_PublishTime struct { 641 // Request the cursor of the first message with publish time greater than or 642 // equal to `publish_time`. All messages thereafter are guaranteed to have 643 // publish times >= `publish_time`. 644 PublishTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=publish_time,json=publishTime,proto3,oneof"` 645} 646 647type TimeTarget_EventTime struct { 648 // Request the cursor of the first message with event time greater than or 649 // equal to `event_time`. If messages are missing an event time, the publish 650 // time is used as a fallback. As event times are user supplied, subsequent 651 // messages may have event times less than `event_time` and should be 652 // filtered by the client, if necessary. 653 EventTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=event_time,json=eventTime,proto3,oneof"` 654} 655 656func (*TimeTarget_PublishTime) isTimeTarget_Time() {} 657 658func (*TimeTarget_EventTime) isTimeTarget_Time() {} 659 660// The settings for a topic's partitions. 661type Topic_PartitionConfig struct { 662 state protoimpl.MessageState 663 sizeCache protoimpl.SizeCache 664 unknownFields protoimpl.UnknownFields 665 666 // The number of partitions in the topic. Must be at least 1. 667 // 668 // Once a topic has been created the number of partitions can be increased 669 // but not decreased. Message ordering is not guaranteed across a topic 670 // resize. For more information see 671 // https://cloud.google.com/pubsub/lite/docs/topics#scaling_capacity 672 Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` 673 // The throughput dimension of this topic. 674 // 675 // Types that are assignable to Dimension: 676 // *Topic_PartitionConfig_Scale 677 // *Topic_PartitionConfig_Capacity_ 678 Dimension isTopic_PartitionConfig_Dimension `protobuf_oneof:"dimension"` 679} 680 681func (x *Topic_PartitionConfig) Reset() { 682 *x = Topic_PartitionConfig{} 683 if protoimpl.UnsafeEnabled { 684 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[9] 685 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 686 ms.StoreMessageInfo(mi) 687 } 688} 689 690func (x *Topic_PartitionConfig) String() string { 691 return protoimpl.X.MessageStringOf(x) 692} 693 694func (*Topic_PartitionConfig) ProtoMessage() {} 695 696func (x *Topic_PartitionConfig) ProtoReflect() protoreflect.Message { 697 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[9] 698 if protoimpl.UnsafeEnabled && x != nil { 699 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 700 if ms.LoadMessageInfo() == nil { 701 ms.StoreMessageInfo(mi) 702 } 703 return ms 704 } 705 return mi.MessageOf(x) 706} 707 708// Deprecated: Use Topic_PartitionConfig.ProtoReflect.Descriptor instead. 709func (*Topic_PartitionConfig) Descriptor() ([]byte, []int) { 710 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{5, 0} 711} 712 713func (x *Topic_PartitionConfig) GetCount() int64 { 714 if x != nil { 715 return x.Count 716 } 717 return 0 718} 719 720func (m *Topic_PartitionConfig) GetDimension() isTopic_PartitionConfig_Dimension { 721 if m != nil { 722 return m.Dimension 723 } 724 return nil 725} 726 727// Deprecated: Do not use. 728func (x *Topic_PartitionConfig) GetScale() int32 { 729 if x, ok := x.GetDimension().(*Topic_PartitionConfig_Scale); ok { 730 return x.Scale 731 } 732 return 0 733} 734 735func (x *Topic_PartitionConfig) GetCapacity() *Topic_PartitionConfig_Capacity { 736 if x, ok := x.GetDimension().(*Topic_PartitionConfig_Capacity_); ok { 737 return x.Capacity 738 } 739 return nil 740} 741 742type isTopic_PartitionConfig_Dimension interface { 743 isTopic_PartitionConfig_Dimension() 744} 745 746type Topic_PartitionConfig_Scale struct { 747 // DEPRECATED: Use capacity instead which can express a superset of 748 // configurations. 749 // 750 // Every partition in the topic is allocated throughput equivalent to 751 // `scale` times the standard partition throughput (4 MiB/s). This is also 752 // reflected in the cost of this topic; a topic with `scale` of 2 and 753 // count of 10 is charged for 20 partitions. This value must be in the 754 // range [1,4]. 755 // 756 // Deprecated: Do not use. 757 Scale int32 `protobuf:"varint,2,opt,name=scale,proto3,oneof"` 758} 759 760type Topic_PartitionConfig_Capacity_ struct { 761 // The capacity configuration. 762 Capacity *Topic_PartitionConfig_Capacity `protobuf:"bytes,3,opt,name=capacity,proto3,oneof"` 763} 764 765func (*Topic_PartitionConfig_Scale) isTopic_PartitionConfig_Dimension() {} 766 767func (*Topic_PartitionConfig_Capacity_) isTopic_PartitionConfig_Dimension() {} 768 769// The settings for a topic's message retention. 770type Topic_RetentionConfig struct { 771 state protoimpl.MessageState 772 sizeCache protoimpl.SizeCache 773 unknownFields protoimpl.UnknownFields 774 775 // The provisioned storage, in bytes, per partition. If the number of bytes 776 // stored in any of the topic's partitions grows beyond this value, older 777 // messages will be dropped to make room for newer ones, regardless of the 778 // value of `period`. 779 PerPartitionBytes int64 `protobuf:"varint,1,opt,name=per_partition_bytes,json=perPartitionBytes,proto3" json:"per_partition_bytes,omitempty"` 780 // How long a published message is retained. If unset, messages will be 781 // retained as long as the bytes retained for each partition is below 782 // `per_partition_bytes`. 783 Period *durationpb.Duration `protobuf:"bytes,2,opt,name=period,proto3" json:"period,omitempty"` 784} 785 786func (x *Topic_RetentionConfig) Reset() { 787 *x = Topic_RetentionConfig{} 788 if protoimpl.UnsafeEnabled { 789 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[10] 790 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 791 ms.StoreMessageInfo(mi) 792 } 793} 794 795func (x *Topic_RetentionConfig) String() string { 796 return protoimpl.X.MessageStringOf(x) 797} 798 799func (*Topic_RetentionConfig) ProtoMessage() {} 800 801func (x *Topic_RetentionConfig) ProtoReflect() protoreflect.Message { 802 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[10] 803 if protoimpl.UnsafeEnabled && x != nil { 804 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 805 if ms.LoadMessageInfo() == nil { 806 ms.StoreMessageInfo(mi) 807 } 808 return ms 809 } 810 return mi.MessageOf(x) 811} 812 813// Deprecated: Use Topic_RetentionConfig.ProtoReflect.Descriptor instead. 814func (*Topic_RetentionConfig) Descriptor() ([]byte, []int) { 815 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{5, 1} 816} 817 818func (x *Topic_RetentionConfig) GetPerPartitionBytes() int64 { 819 if x != nil { 820 return x.PerPartitionBytes 821 } 822 return 0 823} 824 825func (x *Topic_RetentionConfig) GetPeriod() *durationpb.Duration { 826 if x != nil { 827 return x.Period 828 } 829 return nil 830} 831 832// The settings for this topic's Reservation usage. 833type Topic_ReservationConfig struct { 834 state protoimpl.MessageState 835 sizeCache protoimpl.SizeCache 836 unknownFields protoimpl.UnknownFields 837 838 // The Reservation to use for this topic's throughput capacity. 839 // Structured like: 840 // projects/{project_number}/locations/{location}/reservations/{reservation_id} 841 ThroughputReservation string `protobuf:"bytes,1,opt,name=throughput_reservation,json=throughputReservation,proto3" json:"throughput_reservation,omitempty"` 842} 843 844func (x *Topic_ReservationConfig) Reset() { 845 *x = Topic_ReservationConfig{} 846 if protoimpl.UnsafeEnabled { 847 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[11] 848 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 849 ms.StoreMessageInfo(mi) 850 } 851} 852 853func (x *Topic_ReservationConfig) String() string { 854 return protoimpl.X.MessageStringOf(x) 855} 856 857func (*Topic_ReservationConfig) ProtoMessage() {} 858 859func (x *Topic_ReservationConfig) ProtoReflect() protoreflect.Message { 860 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[11] 861 if protoimpl.UnsafeEnabled && x != nil { 862 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 863 if ms.LoadMessageInfo() == nil { 864 ms.StoreMessageInfo(mi) 865 } 866 return ms 867 } 868 return mi.MessageOf(x) 869} 870 871// Deprecated: Use Topic_ReservationConfig.ProtoReflect.Descriptor instead. 872func (*Topic_ReservationConfig) Descriptor() ([]byte, []int) { 873 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{5, 2} 874} 875 876func (x *Topic_ReservationConfig) GetThroughputReservation() string { 877 if x != nil { 878 return x.ThroughputReservation 879 } 880 return "" 881} 882 883// The throughput capacity configuration for each partition. 884type Topic_PartitionConfig_Capacity struct { 885 state protoimpl.MessageState 886 sizeCache protoimpl.SizeCache 887 unknownFields protoimpl.UnknownFields 888 889 // Publish throughput capacity per partition in MiB/s. 890 // Must be >= 4 and <= 16. 891 PublishMibPerSec int32 `protobuf:"varint,1,opt,name=publish_mib_per_sec,json=publishMibPerSec,proto3" json:"publish_mib_per_sec,omitempty"` 892 // Subscribe throughput capacity per partition in MiB/s. 893 // Must be >= 4 and <= 32. 894 SubscribeMibPerSec int32 `protobuf:"varint,2,opt,name=subscribe_mib_per_sec,json=subscribeMibPerSec,proto3" json:"subscribe_mib_per_sec,omitempty"` 895} 896 897func (x *Topic_PartitionConfig_Capacity) Reset() { 898 *x = Topic_PartitionConfig_Capacity{} 899 if protoimpl.UnsafeEnabled { 900 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[12] 901 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 902 ms.StoreMessageInfo(mi) 903 } 904} 905 906func (x *Topic_PartitionConfig_Capacity) String() string { 907 return protoimpl.X.MessageStringOf(x) 908} 909 910func (*Topic_PartitionConfig_Capacity) ProtoMessage() {} 911 912func (x *Topic_PartitionConfig_Capacity) ProtoReflect() protoreflect.Message { 913 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[12] 914 if protoimpl.UnsafeEnabled && x != nil { 915 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 916 if ms.LoadMessageInfo() == nil { 917 ms.StoreMessageInfo(mi) 918 } 919 return ms 920 } 921 return mi.MessageOf(x) 922} 923 924// Deprecated: Use Topic_PartitionConfig_Capacity.ProtoReflect.Descriptor instead. 925func (*Topic_PartitionConfig_Capacity) Descriptor() ([]byte, []int) { 926 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{5, 0, 0} 927} 928 929func (x *Topic_PartitionConfig_Capacity) GetPublishMibPerSec() int32 { 930 if x != nil { 931 return x.PublishMibPerSec 932 } 933 return 0 934} 935 936func (x *Topic_PartitionConfig_Capacity) GetSubscribeMibPerSec() int32 { 937 if x != nil { 938 return x.SubscribeMibPerSec 939 } 940 return 0 941} 942 943// The settings for a subscription's message delivery. 944type Subscription_DeliveryConfig struct { 945 state protoimpl.MessageState 946 sizeCache protoimpl.SizeCache 947 unknownFields protoimpl.UnknownFields 948 949 // The DeliveryRequirement for this subscription. 950 DeliveryRequirement Subscription_DeliveryConfig_DeliveryRequirement `protobuf:"varint,3,opt,name=delivery_requirement,json=deliveryRequirement,proto3,enum=google.cloud.pubsublite.v1.Subscription_DeliveryConfig_DeliveryRequirement" json:"delivery_requirement,omitempty"` 951} 952 953func (x *Subscription_DeliveryConfig) Reset() { 954 *x = Subscription_DeliveryConfig{} 955 if protoimpl.UnsafeEnabled { 956 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[13] 957 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 958 ms.StoreMessageInfo(mi) 959 } 960} 961 962func (x *Subscription_DeliveryConfig) String() string { 963 return protoimpl.X.MessageStringOf(x) 964} 965 966func (*Subscription_DeliveryConfig) ProtoMessage() {} 967 968func (x *Subscription_DeliveryConfig) ProtoReflect() protoreflect.Message { 969 mi := &file_google_cloud_pubsublite_v1_common_proto_msgTypes[13] 970 if protoimpl.UnsafeEnabled && x != nil { 971 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 972 if ms.LoadMessageInfo() == nil { 973 ms.StoreMessageInfo(mi) 974 } 975 return ms 976 } 977 return mi.MessageOf(x) 978} 979 980// Deprecated: Use Subscription_DeliveryConfig.ProtoReflect.Descriptor instead. 981func (*Subscription_DeliveryConfig) Descriptor() ([]byte, []int) { 982 return file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP(), []int{6, 0} 983} 984 985func (x *Subscription_DeliveryConfig) GetDeliveryRequirement() Subscription_DeliveryConfig_DeliveryRequirement { 986 if x != nil { 987 return x.DeliveryRequirement 988 } 989 return Subscription_DeliveryConfig_DELIVERY_REQUIREMENT_UNSPECIFIED 990} 991 992var File_google_cloud_pubsublite_v1_common_proto protoreflect.FileDescriptor 993 994var file_google_cloud_pubsublite_v1_common_proto_rawDesc = []byte{ 995 0x0a, 0x27, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x70, 996 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 997 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 998 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 999 0x74, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 1000 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1001 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 1002 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1003 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 1004 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1005 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 1006 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 1007 0x29, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 1008 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 1009 0x28, 0x0c, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0xb7, 0x02, 0x0a, 0x0d, 0x50, 1010 0x75, 0x62, 0x53, 0x75, 0x62, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 1011 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x12, 1012 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 1013 0x74, 0x61, 0x12, 0x59, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 1014 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1015 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 1016 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x53, 0x75, 0x62, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 1017 0x65, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 1018 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 1019 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 1020 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1021 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x65, 1022 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x6a, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 1023 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 1024 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x41, 0x0a, 1025 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 1026 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 1027 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 1028 0x75, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 1029 0x3a, 0x02, 0x38, 0x01, 0x22, 0x20, 0x0a, 0x06, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x16, 1030 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 1031 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0xf1, 0x01, 0x0a, 0x10, 0x53, 0x65, 0x71, 0x75, 0x65, 1032 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x63, 1033 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 1034 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 1035 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x52, 1036 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x3d, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x6c, 0x69, 1037 0x73, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 1038 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 1039 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 1040 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 1041 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1042 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 1043 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x53, 0x75, 0x62, 0x4d, 0x65, 0x73, 0x73, 0x61, 1044 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 1045 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 1046 0x09, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xc2, 0x01, 0x0a, 0x0b, 0x52, 1047 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 1048 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 1049 0x0a, 0x13, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x61, 0x70, 1050 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x74, 0x68, 0x72, 1051 0x6f, 0x75, 0x67, 0x68, 0x70, 0x75, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x3a, 1052 0x6e, 0xea, 0x41, 0x6b, 0x0a, 0x25, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 1053 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 1054 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x70, 0x72, 0x6f, 1055 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 1056 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 1057 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 1058 0x73, 0x2f, 0x7b, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x22, 1059 0xa2, 0x07, 0x0a, 0x05, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 1060 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x5c, 0x0a, 1061 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 1062 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1063 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 1064 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 1065 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 1066 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5c, 0x0a, 0x10, 0x72, 1067 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 1068 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 1069 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 1070 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x2e, 0x52, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 1071 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 1072 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x62, 0x0a, 0x12, 0x72, 0x65, 0x73, 1073 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 1074 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 1075 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 1076 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 1077 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x11, 0x72, 0x65, 0x73, 0x65, 1078 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x98, 0x02, 1079 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 1080 0x67, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 1081 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 1082 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x02, 0x18, 0x01, 0x48, 0x00, 0x52, 0x05, 0x73, 0x63, 1083 0x61, 0x6c, 0x65, 0x12, 0x58, 0x0a, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 1084 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 1085 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 1086 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 1087 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 1088 0x79, 0x48, 0x00, 0x52, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x1a, 0x6c, 0x0a, 1089 0x08, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x2d, 0x0a, 0x13, 0x70, 0x75, 0x62, 1090 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x6d, 0x69, 0x62, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 1091 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 1092 0x69, 0x62, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x12, 0x31, 0x0a, 0x15, 0x73, 0x75, 0x62, 0x73, 1093 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x6d, 0x69, 0x62, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 1094 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 1095 0x62, 0x65, 0x4d, 0x69, 0x62, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x42, 0x0b, 0x0a, 0x09, 0x64, 1096 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x74, 0x0a, 0x0f, 0x52, 0x65, 0x74, 0x65, 1097 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2e, 0x0a, 0x13, 0x70, 1098 0x65, 0x72, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x79, 0x74, 1099 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 1100 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x70, 1101 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 1102 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 1103 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x1a, 0x76, 1104 0x0a, 0x11, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 1105 0x66, 0x69, 0x67, 0x12, 0x61, 0x0a, 0x16, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x70, 0x75, 1106 0x74, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 1107 0x01, 0x28, 0x09, 0x42, 0x2a, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 1108 0x6c, 0x69, 0x74, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 1109 0x63, 0x6f, 0x6d, 0x2f, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 1110 0x15, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x65, 0x72, 1111 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x5c, 0xea, 0x41, 0x59, 0x0a, 0x1f, 0x70, 0x75, 0x62, 1112 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 1113 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x36, 0x70, 0x72, 1114 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 1115 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 1116 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x2f, 0x7b, 0x74, 0x6f, 1117 0x70, 0x69, 0x63, 0x7d, 0x22, 0xb6, 0x04, 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 1118 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 1119 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x74, 0x6f, 0x70, 1120 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x70, 1121 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1122 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x05, 1123 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x60, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 1124 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 1125 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 1126 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x73, 1127 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 1128 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 1129 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x80, 0x02, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x69, 1130 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7e, 0x0a, 0x14, 0x64, 0x65, 1131 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 1132 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1133 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 1134 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 1135 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 1136 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 1137 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x13, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x52, 1138 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x6e, 0x0a, 0x13, 0x44, 0x65, 1139 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 1140 0x74, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x45, 0x4c, 0x49, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x52, 0x45, 1141 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 1142 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x45, 0x4c, 0x49, 0x56, 1143 0x45, 0x52, 0x5f, 0x49, 0x4d, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x4c, 0x59, 0x10, 0x01, 1144 0x12, 0x18, 0x0a, 0x14, 0x44, 0x45, 0x4c, 0x49, 0x56, 0x45, 0x52, 0x5f, 0x41, 0x46, 0x54, 0x45, 1145 0x52, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x44, 0x10, 0x02, 0x3a, 0x71, 0xea, 0x41, 0x6e, 0x0a, 1146 0x26, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1147 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x75, 0x62, 0x73, 0x63, 1148 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x44, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 1149 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 1150 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 1151 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 1152 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x22, 0x92, 0x01, 1153 0x0a, 0x0a, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x3f, 0x0a, 0x0c, 1154 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 1155 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1156 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x00, 1157 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 1158 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 1159 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1160 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x00, 0x52, 1161 0x09, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x69, 1162 0x6d, 0x65, 0x42, 0xd5, 0x01, 0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1163 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 1164 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x42, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 1165 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x44, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1166 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 1167 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 1168 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0x2f, 1169 0x76, 0x31, 0x3b, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x6c, 0x69, 0x74, 0x65, 0xf8, 0x01, 0x01, 1170 0xaa, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 1171 0x50, 0x75, 0x62, 0x53, 0x75, 0x62, 0x4c, 0x69, 0x74, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1a, 1172 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x50, 0x75, 0x62, 1173 0x53, 0x75, 0x62, 0x4c, 0x69, 0x74, 0x65, 0x5c, 0x56, 0x31, 0xea, 0x02, 0x1d, 0x47, 0x6f, 0x6f, 1174 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x50, 0x75, 0x62, 0x53, 1175 0x75, 0x62, 0x4c, 0x69, 0x74, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 1176 0x6f, 0x33, 1177} 1178 1179var ( 1180 file_google_cloud_pubsublite_v1_common_proto_rawDescOnce sync.Once 1181 file_google_cloud_pubsublite_v1_common_proto_rawDescData = file_google_cloud_pubsublite_v1_common_proto_rawDesc 1182) 1183 1184func file_google_cloud_pubsublite_v1_common_proto_rawDescGZIP() []byte { 1185 file_google_cloud_pubsublite_v1_common_proto_rawDescOnce.Do(func() { 1186 file_google_cloud_pubsublite_v1_common_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_pubsublite_v1_common_proto_rawDescData) 1187 }) 1188 return file_google_cloud_pubsublite_v1_common_proto_rawDescData 1189} 1190 1191var file_google_cloud_pubsublite_v1_common_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 1192var file_google_cloud_pubsublite_v1_common_proto_msgTypes = make([]protoimpl.MessageInfo, 14) 1193var file_google_cloud_pubsublite_v1_common_proto_goTypes = []interface{}{ 1194 (Subscription_DeliveryConfig_DeliveryRequirement)(0), // 0: google.cloud.pubsublite.v1.Subscription.DeliveryConfig.DeliveryRequirement 1195 (*AttributeValues)(nil), // 1: google.cloud.pubsublite.v1.AttributeValues 1196 (*PubSubMessage)(nil), // 2: google.cloud.pubsublite.v1.PubSubMessage 1197 (*Cursor)(nil), // 3: google.cloud.pubsublite.v1.Cursor 1198 (*SequencedMessage)(nil), // 4: google.cloud.pubsublite.v1.SequencedMessage 1199 (*Reservation)(nil), // 5: google.cloud.pubsublite.v1.Reservation 1200 (*Topic)(nil), // 6: google.cloud.pubsublite.v1.Topic 1201 (*Subscription)(nil), // 7: google.cloud.pubsublite.v1.Subscription 1202 (*TimeTarget)(nil), // 8: google.cloud.pubsublite.v1.TimeTarget 1203 nil, // 9: google.cloud.pubsublite.v1.PubSubMessage.AttributesEntry 1204 (*Topic_PartitionConfig)(nil), // 10: google.cloud.pubsublite.v1.Topic.PartitionConfig 1205 (*Topic_RetentionConfig)(nil), // 11: google.cloud.pubsublite.v1.Topic.RetentionConfig 1206 (*Topic_ReservationConfig)(nil), // 12: google.cloud.pubsublite.v1.Topic.ReservationConfig 1207 (*Topic_PartitionConfig_Capacity)(nil), // 13: google.cloud.pubsublite.v1.Topic.PartitionConfig.Capacity 1208 (*Subscription_DeliveryConfig)(nil), // 14: google.cloud.pubsublite.v1.Subscription.DeliveryConfig 1209 (*timestamppb.Timestamp)(nil), // 15: google.protobuf.Timestamp 1210 (*durationpb.Duration)(nil), // 16: google.protobuf.Duration 1211} 1212var file_google_cloud_pubsublite_v1_common_proto_depIdxs = []int32{ 1213 9, // 0: google.cloud.pubsublite.v1.PubSubMessage.attributes:type_name -> google.cloud.pubsublite.v1.PubSubMessage.AttributesEntry 1214 15, // 1: google.cloud.pubsublite.v1.PubSubMessage.event_time:type_name -> google.protobuf.Timestamp 1215 3, // 2: google.cloud.pubsublite.v1.SequencedMessage.cursor:type_name -> google.cloud.pubsublite.v1.Cursor 1216 15, // 3: google.cloud.pubsublite.v1.SequencedMessage.publish_time:type_name -> google.protobuf.Timestamp 1217 2, // 4: google.cloud.pubsublite.v1.SequencedMessage.message:type_name -> google.cloud.pubsublite.v1.PubSubMessage 1218 10, // 5: google.cloud.pubsublite.v1.Topic.partition_config:type_name -> google.cloud.pubsublite.v1.Topic.PartitionConfig 1219 11, // 6: google.cloud.pubsublite.v1.Topic.retention_config:type_name -> google.cloud.pubsublite.v1.Topic.RetentionConfig 1220 12, // 7: google.cloud.pubsublite.v1.Topic.reservation_config:type_name -> google.cloud.pubsublite.v1.Topic.ReservationConfig 1221 14, // 8: google.cloud.pubsublite.v1.Subscription.delivery_config:type_name -> google.cloud.pubsublite.v1.Subscription.DeliveryConfig 1222 15, // 9: google.cloud.pubsublite.v1.TimeTarget.publish_time:type_name -> google.protobuf.Timestamp 1223 15, // 10: google.cloud.pubsublite.v1.TimeTarget.event_time:type_name -> google.protobuf.Timestamp 1224 1, // 11: google.cloud.pubsublite.v1.PubSubMessage.AttributesEntry.value:type_name -> google.cloud.pubsublite.v1.AttributeValues 1225 13, // 12: google.cloud.pubsublite.v1.Topic.PartitionConfig.capacity:type_name -> google.cloud.pubsublite.v1.Topic.PartitionConfig.Capacity 1226 16, // 13: google.cloud.pubsublite.v1.Topic.RetentionConfig.period:type_name -> google.protobuf.Duration 1227 0, // 14: google.cloud.pubsublite.v1.Subscription.DeliveryConfig.delivery_requirement:type_name -> google.cloud.pubsublite.v1.Subscription.DeliveryConfig.DeliveryRequirement 1228 15, // [15:15] is the sub-list for method output_type 1229 15, // [15:15] is the sub-list for method input_type 1230 15, // [15:15] is the sub-list for extension type_name 1231 15, // [15:15] is the sub-list for extension extendee 1232 0, // [0:15] is the sub-list for field type_name 1233} 1234 1235func init() { file_google_cloud_pubsublite_v1_common_proto_init() } 1236func file_google_cloud_pubsublite_v1_common_proto_init() { 1237 if File_google_cloud_pubsublite_v1_common_proto != nil { 1238 return 1239 } 1240 if !protoimpl.UnsafeEnabled { 1241 file_google_cloud_pubsublite_v1_common_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1242 switch v := v.(*AttributeValues); i { 1243 case 0: 1244 return &v.state 1245 case 1: 1246 return &v.sizeCache 1247 case 2: 1248 return &v.unknownFields 1249 default: 1250 return nil 1251 } 1252 } 1253 file_google_cloud_pubsublite_v1_common_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1254 switch v := v.(*PubSubMessage); i { 1255 case 0: 1256 return &v.state 1257 case 1: 1258 return &v.sizeCache 1259 case 2: 1260 return &v.unknownFields 1261 default: 1262 return nil 1263 } 1264 } 1265 file_google_cloud_pubsublite_v1_common_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1266 switch v := v.(*Cursor); i { 1267 case 0: 1268 return &v.state 1269 case 1: 1270 return &v.sizeCache 1271 case 2: 1272 return &v.unknownFields 1273 default: 1274 return nil 1275 } 1276 } 1277 file_google_cloud_pubsublite_v1_common_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1278 switch v := v.(*SequencedMessage); i { 1279 case 0: 1280 return &v.state 1281 case 1: 1282 return &v.sizeCache 1283 case 2: 1284 return &v.unknownFields 1285 default: 1286 return nil 1287 } 1288 } 1289 file_google_cloud_pubsublite_v1_common_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1290 switch v := v.(*Reservation); i { 1291 case 0: 1292 return &v.state 1293 case 1: 1294 return &v.sizeCache 1295 case 2: 1296 return &v.unknownFields 1297 default: 1298 return nil 1299 } 1300 } 1301 file_google_cloud_pubsublite_v1_common_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1302 switch v := v.(*Topic); i { 1303 case 0: 1304 return &v.state 1305 case 1: 1306 return &v.sizeCache 1307 case 2: 1308 return &v.unknownFields 1309 default: 1310 return nil 1311 } 1312 } 1313 file_google_cloud_pubsublite_v1_common_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1314 switch v := v.(*Subscription); i { 1315 case 0: 1316 return &v.state 1317 case 1: 1318 return &v.sizeCache 1319 case 2: 1320 return &v.unknownFields 1321 default: 1322 return nil 1323 } 1324 } 1325 file_google_cloud_pubsublite_v1_common_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 1326 switch v := v.(*TimeTarget); i { 1327 case 0: 1328 return &v.state 1329 case 1: 1330 return &v.sizeCache 1331 case 2: 1332 return &v.unknownFields 1333 default: 1334 return nil 1335 } 1336 } 1337 file_google_cloud_pubsublite_v1_common_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 1338 switch v := v.(*Topic_PartitionConfig); i { 1339 case 0: 1340 return &v.state 1341 case 1: 1342 return &v.sizeCache 1343 case 2: 1344 return &v.unknownFields 1345 default: 1346 return nil 1347 } 1348 } 1349 file_google_cloud_pubsublite_v1_common_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 1350 switch v := v.(*Topic_RetentionConfig); i { 1351 case 0: 1352 return &v.state 1353 case 1: 1354 return &v.sizeCache 1355 case 2: 1356 return &v.unknownFields 1357 default: 1358 return nil 1359 } 1360 } 1361 file_google_cloud_pubsublite_v1_common_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 1362 switch v := v.(*Topic_ReservationConfig); i { 1363 case 0: 1364 return &v.state 1365 case 1: 1366 return &v.sizeCache 1367 case 2: 1368 return &v.unknownFields 1369 default: 1370 return nil 1371 } 1372 } 1373 file_google_cloud_pubsublite_v1_common_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 1374 switch v := v.(*Topic_PartitionConfig_Capacity); i { 1375 case 0: 1376 return &v.state 1377 case 1: 1378 return &v.sizeCache 1379 case 2: 1380 return &v.unknownFields 1381 default: 1382 return nil 1383 } 1384 } 1385 file_google_cloud_pubsublite_v1_common_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 1386 switch v := v.(*Subscription_DeliveryConfig); i { 1387 case 0: 1388 return &v.state 1389 case 1: 1390 return &v.sizeCache 1391 case 2: 1392 return &v.unknownFields 1393 default: 1394 return nil 1395 } 1396 } 1397 } 1398 file_google_cloud_pubsublite_v1_common_proto_msgTypes[7].OneofWrappers = []interface{}{ 1399 (*TimeTarget_PublishTime)(nil), 1400 (*TimeTarget_EventTime)(nil), 1401 } 1402 file_google_cloud_pubsublite_v1_common_proto_msgTypes[9].OneofWrappers = []interface{}{ 1403 (*Topic_PartitionConfig_Scale)(nil), 1404 (*Topic_PartitionConfig_Capacity_)(nil), 1405 } 1406 type x struct{} 1407 out := protoimpl.TypeBuilder{ 1408 File: protoimpl.DescBuilder{ 1409 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1410 RawDescriptor: file_google_cloud_pubsublite_v1_common_proto_rawDesc, 1411 NumEnums: 1, 1412 NumMessages: 14, 1413 NumExtensions: 0, 1414 NumServices: 0, 1415 }, 1416 GoTypes: file_google_cloud_pubsublite_v1_common_proto_goTypes, 1417 DependencyIndexes: file_google_cloud_pubsublite_v1_common_proto_depIdxs, 1418 EnumInfos: file_google_cloud_pubsublite_v1_common_proto_enumTypes, 1419 MessageInfos: file_google_cloud_pubsublite_v1_common_proto_msgTypes, 1420 }.Build() 1421 File_google_cloud_pubsublite_v1_common_proto = out.File 1422 file_google_cloud_pubsublite_v1_common_proto_rawDesc = nil 1423 file_google_cloud_pubsublite_v1_common_proto_goTypes = nil 1424 file_google_cloud_pubsublite_v1_common_proto_depIdxs = nil 1425} 1426