github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/client/v4/metric_descriptor/metric_descriptor_service.pb.go (about) 1 // Code generated by protoc-gen-goten-go 2 // File: edgelq/monitoring/proto/v4/metric_descriptor_service.proto 3 // DO NOT EDIT!!! 4 5 package metric_descriptor_client 6 7 import ( 8 "fmt" 9 "reflect" 10 "sync" 11 12 "google.golang.org/protobuf/encoding/protojson" 13 "google.golang.org/protobuf/proto" 14 preflect "google.golang.org/protobuf/reflect/protoreflect" 15 "google.golang.org/protobuf/runtime/protoimpl" 16 ) 17 18 // proto imports 19 import ( 20 metric_descriptor "github.com/cloudwan/edgelq-sdk/monitoring/resources/v4/metric_descriptor" 21 project "github.com/cloudwan/edgelq-sdk/monitoring/resources/v4/project" 22 view "github.com/cloudwan/goten-sdk/types/view" 23 watch_type "github.com/cloudwan/goten-sdk/types/watch_type" 24 emptypb "google.golang.org/protobuf/types/known/emptypb" 25 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 26 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 27 ) 28 29 // Reference imports to suppress errors if they are not otherwise used. 30 var ( 31 _ = fmt.Errorf 32 _ = reflect.Method{} 33 _ = sync.Once{} 34 35 _ = protojson.MarshalOptions{} 36 _ = proto.MarshalOptions{} 37 _ = preflect.Value{} 38 _ = protoimpl.DescBuilder{} 39 ) 40 41 // make sure we're using proto imports 42 var ( 43 _ = &metric_descriptor.MetricDescriptor{} 44 _ = &project.Project{} 45 _ = &emptypb.Empty{} 46 _ = &fieldmaskpb.FieldMask{} 47 _ = ×tamppb.Timestamp{} 48 _ = view.View(0) 49 _ = watch_type.WatchType(0) 50 ) 51 52 const ( 53 // Verify that this generated code is sufficiently up-to-date. 54 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 55 // Verify that runtime/protoimpl is sufficiently up-to-date. 56 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 57 ) 58 59 // A request message of the BatchGetMetricDescriptors method. 60 type BatchGetMetricDescriptorsRequest struct { 61 state protoimpl.MessageState 62 sizeCache protoimpl.SizeCache 63 unknownFields protoimpl.UnknownFields 64 // Names of MetricDescriptors 65 Names []*metric_descriptor.Name `protobuf:"bytes,2,rep,customtype=Name,name=names,proto3" json:"names,omitempty"` 66 // A list of extra fields to be obtained for each response item on top of 67 // fields defined by request field view 68 FieldMask *metric_descriptor.MetricDescriptor_FieldMask `protobuf:"bytes,3,opt,customtype=MetricDescriptor_FieldMask,name=field_mask,json=fieldMask,proto3" json:"field_mask,omitempty"` 69 // View defines list of standard response fields present in response items. 70 // Additional fields can be amended by request field field_mask 71 View view.View `protobuf:"varint,4,opt,name=view,proto3,enum=goten.types.View" json:"view,omitempty"` 72 } 73 74 func (m *BatchGetMetricDescriptorsRequest) Reset() { 75 *m = BatchGetMetricDescriptorsRequest{} 76 if protoimpl.UnsafeEnabled { 77 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[0] 78 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 79 ms.StoreMessageInfo(mi) 80 } 81 } 82 83 func (m *BatchGetMetricDescriptorsRequest) String() string { 84 return protoimpl.X.MessageStringOf(m) 85 } 86 87 func (*BatchGetMetricDescriptorsRequest) ProtoMessage() {} 88 89 func (m *BatchGetMetricDescriptorsRequest) ProtoReflect() preflect.Message { 90 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[0] 91 if protoimpl.UnsafeEnabled && m != nil { 92 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 93 if ms.LoadMessageInfo() == nil { 94 ms.StoreMessageInfo(mi) 95 } 96 return ms 97 } 98 return mi.MessageOf(m) 99 } 100 101 func (*BatchGetMetricDescriptorsRequest) GotenMessage() {} 102 103 // Deprecated, Use BatchGetMetricDescriptorsRequest.ProtoReflect.Descriptor instead. 104 func (*BatchGetMetricDescriptorsRequest) Descriptor() ([]byte, []int) { 105 return edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescGZIP(), []int{0} 106 } 107 108 func (m *BatchGetMetricDescriptorsRequest) Unmarshal(b []byte) error { 109 return proto.Unmarshal(b, m) 110 } 111 112 func (m *BatchGetMetricDescriptorsRequest) Marshal() ([]byte, error) { 113 return proto.Marshal(m) 114 } 115 116 func (m *BatchGetMetricDescriptorsRequest) MarshalJSON() ([]byte, error) { 117 return protojson.MarshalOptions{}.Marshal(m) 118 } 119 120 func (m *BatchGetMetricDescriptorsRequest) UnmarshalJSON(data []byte) error { 121 return protojson.Unmarshal(data, m) 122 } 123 124 func (m *BatchGetMetricDescriptorsRequest) GetNames() []*metric_descriptor.Name { 125 if m != nil { 126 return m.Names 127 } 128 return nil 129 } 130 131 func (m *BatchGetMetricDescriptorsRequest) GetFieldMask() *metric_descriptor.MetricDescriptor_FieldMask { 132 if m != nil { 133 return m.FieldMask 134 } 135 return nil 136 } 137 138 func (m *BatchGetMetricDescriptorsRequest) GetView() view.View { 139 if m != nil { 140 return m.View 141 } 142 return view.View_UNSPECIFIED 143 } 144 145 func (m *BatchGetMetricDescriptorsRequest) SetNames(fv []*metric_descriptor.Name) { 146 if m == nil { 147 panic(fmt.Errorf("can't set %s on nil %s", "Names", "BatchGetMetricDescriptorsRequest")) 148 } 149 m.Names = fv 150 } 151 152 func (m *BatchGetMetricDescriptorsRequest) SetFieldMask(fv *metric_descriptor.MetricDescriptor_FieldMask) { 153 if m == nil { 154 panic(fmt.Errorf("can't set %s on nil %s", "FieldMask", "BatchGetMetricDescriptorsRequest")) 155 } 156 m.FieldMask = fv 157 } 158 159 func (m *BatchGetMetricDescriptorsRequest) SetView(fv view.View) { 160 if m == nil { 161 panic(fmt.Errorf("can't set %s on nil %s", "View", "BatchGetMetricDescriptorsRequest")) 162 } 163 m.View = fv 164 } 165 166 // A response message of the BatchGetMetricDescriptors method. 167 type BatchGetMetricDescriptorsResponse struct { 168 state protoimpl.MessageState 169 sizeCache protoimpl.SizeCache 170 unknownFields protoimpl.UnknownFields 171 // found MetricDescriptors 172 MetricDescriptors []*metric_descriptor.MetricDescriptor `protobuf:"bytes,1,rep,name=metric_descriptors,json=metricDescriptors,proto3" json:"metric_descriptors,omitempty"` 173 // list of not found MetricDescriptors 174 Missing []*metric_descriptor.Name `protobuf:"bytes,2,rep,customtype=Name,name=missing,proto3" json:"missing,omitempty"` 175 } 176 177 func (m *BatchGetMetricDescriptorsResponse) Reset() { 178 *m = BatchGetMetricDescriptorsResponse{} 179 if protoimpl.UnsafeEnabled { 180 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[1] 181 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 182 ms.StoreMessageInfo(mi) 183 } 184 } 185 186 func (m *BatchGetMetricDescriptorsResponse) String() string { 187 return protoimpl.X.MessageStringOf(m) 188 } 189 190 func (*BatchGetMetricDescriptorsResponse) ProtoMessage() {} 191 192 func (m *BatchGetMetricDescriptorsResponse) ProtoReflect() preflect.Message { 193 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[1] 194 if protoimpl.UnsafeEnabled && m != nil { 195 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 196 if ms.LoadMessageInfo() == nil { 197 ms.StoreMessageInfo(mi) 198 } 199 return ms 200 } 201 return mi.MessageOf(m) 202 } 203 204 func (*BatchGetMetricDescriptorsResponse) GotenMessage() {} 205 206 // Deprecated, Use BatchGetMetricDescriptorsResponse.ProtoReflect.Descriptor instead. 207 func (*BatchGetMetricDescriptorsResponse) Descriptor() ([]byte, []int) { 208 return edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescGZIP(), []int{1} 209 } 210 211 func (m *BatchGetMetricDescriptorsResponse) Unmarshal(b []byte) error { 212 return proto.Unmarshal(b, m) 213 } 214 215 func (m *BatchGetMetricDescriptorsResponse) Marshal() ([]byte, error) { 216 return proto.Marshal(m) 217 } 218 219 func (m *BatchGetMetricDescriptorsResponse) MarshalJSON() ([]byte, error) { 220 return protojson.MarshalOptions{}.Marshal(m) 221 } 222 223 func (m *BatchGetMetricDescriptorsResponse) UnmarshalJSON(data []byte) error { 224 return protojson.Unmarshal(data, m) 225 } 226 227 func (m *BatchGetMetricDescriptorsResponse) GetMetricDescriptors() []*metric_descriptor.MetricDescriptor { 228 if m != nil { 229 return m.MetricDescriptors 230 } 231 return nil 232 } 233 234 func (m *BatchGetMetricDescriptorsResponse) GetMissing() []*metric_descriptor.Name { 235 if m != nil { 236 return m.Missing 237 } 238 return nil 239 } 240 241 func (m *BatchGetMetricDescriptorsResponse) SetMetricDescriptors(fv []*metric_descriptor.MetricDescriptor) { 242 if m == nil { 243 panic(fmt.Errorf("can't set %s on nil %s", "MetricDescriptors", "BatchGetMetricDescriptorsResponse")) 244 } 245 m.MetricDescriptors = fv 246 } 247 248 func (m *BatchGetMetricDescriptorsResponse) SetMissing(fv []*metric_descriptor.Name) { 249 if m == nil { 250 panic(fmt.Errorf("can't set %s on nil %s", "Missing", "BatchGetMetricDescriptorsResponse")) 251 } 252 m.Missing = fv 253 } 254 255 // A request message of the WatchMetricDescriptor method. 256 type WatchMetricDescriptorRequest struct { 257 state protoimpl.MessageState 258 sizeCache protoimpl.SizeCache 259 unknownFields protoimpl.UnknownFields 260 // Name of ntt.monitoring.v4.MetricDescriptor 261 Name *metric_descriptor.Name `protobuf:"bytes,1,opt,customtype=Name,name=name,proto3" json:"name,omitempty"` 262 // A list of extra fields to be obtained for each response item on top of 263 // fields defined by request field view 264 FieldMask *metric_descriptor.MetricDescriptor_FieldMask `protobuf:"bytes,2,opt,customtype=MetricDescriptor_FieldMask,name=field_mask,json=fieldMask,proto3" json:"field_mask,omitempty"` 265 // View defines list of standard response fields present in response items. 266 // Additional fields can be amended by request field field_mask 267 View view.View `protobuf:"varint,4,opt,name=view,proto3,enum=goten.types.View" json:"view,omitempty"` 268 } 269 270 func (m *WatchMetricDescriptorRequest) Reset() { 271 *m = WatchMetricDescriptorRequest{} 272 if protoimpl.UnsafeEnabled { 273 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[2] 274 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 275 ms.StoreMessageInfo(mi) 276 } 277 } 278 279 func (m *WatchMetricDescriptorRequest) String() string { 280 return protoimpl.X.MessageStringOf(m) 281 } 282 283 func (*WatchMetricDescriptorRequest) ProtoMessage() {} 284 285 func (m *WatchMetricDescriptorRequest) ProtoReflect() preflect.Message { 286 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[2] 287 if protoimpl.UnsafeEnabled && m != nil { 288 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 289 if ms.LoadMessageInfo() == nil { 290 ms.StoreMessageInfo(mi) 291 } 292 return ms 293 } 294 return mi.MessageOf(m) 295 } 296 297 func (*WatchMetricDescriptorRequest) GotenMessage() {} 298 299 // Deprecated, Use WatchMetricDescriptorRequest.ProtoReflect.Descriptor instead. 300 func (*WatchMetricDescriptorRequest) Descriptor() ([]byte, []int) { 301 return edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescGZIP(), []int{2} 302 } 303 304 func (m *WatchMetricDescriptorRequest) Unmarshal(b []byte) error { 305 return proto.Unmarshal(b, m) 306 } 307 308 func (m *WatchMetricDescriptorRequest) Marshal() ([]byte, error) { 309 return proto.Marshal(m) 310 } 311 312 func (m *WatchMetricDescriptorRequest) MarshalJSON() ([]byte, error) { 313 return protojson.MarshalOptions{}.Marshal(m) 314 } 315 316 func (m *WatchMetricDescriptorRequest) UnmarshalJSON(data []byte) error { 317 return protojson.Unmarshal(data, m) 318 } 319 320 func (m *WatchMetricDescriptorRequest) GetName() *metric_descriptor.Name { 321 if m != nil { 322 return m.Name 323 } 324 return nil 325 } 326 327 func (m *WatchMetricDescriptorRequest) GetFieldMask() *metric_descriptor.MetricDescriptor_FieldMask { 328 if m != nil { 329 return m.FieldMask 330 } 331 return nil 332 } 333 334 func (m *WatchMetricDescriptorRequest) GetView() view.View { 335 if m != nil { 336 return m.View 337 } 338 return view.View_UNSPECIFIED 339 } 340 341 func (m *WatchMetricDescriptorRequest) SetName(fv *metric_descriptor.Name) { 342 if m == nil { 343 panic(fmt.Errorf("can't set %s on nil %s", "Name", "WatchMetricDescriptorRequest")) 344 } 345 m.Name = fv 346 } 347 348 func (m *WatchMetricDescriptorRequest) SetFieldMask(fv *metric_descriptor.MetricDescriptor_FieldMask) { 349 if m == nil { 350 panic(fmt.Errorf("can't set %s on nil %s", "FieldMask", "WatchMetricDescriptorRequest")) 351 } 352 m.FieldMask = fv 353 } 354 355 func (m *WatchMetricDescriptorRequest) SetView(fv view.View) { 356 if m == nil { 357 panic(fmt.Errorf("can't set %s on nil %s", "View", "WatchMetricDescriptorRequest")) 358 } 359 m.View = fv 360 } 361 362 // A response message of the WatchMetricDescriptor method. 363 type WatchMetricDescriptorResponse struct { 364 state protoimpl.MessageState 365 sizeCache protoimpl.SizeCache 366 unknownFields protoimpl.UnknownFields 367 Change *metric_descriptor.MetricDescriptorChange `protobuf:"bytes,1,opt,name=change,proto3" json:"change,omitempty"` 368 } 369 370 func (m *WatchMetricDescriptorResponse) Reset() { 371 *m = WatchMetricDescriptorResponse{} 372 if protoimpl.UnsafeEnabled { 373 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[3] 374 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 375 ms.StoreMessageInfo(mi) 376 } 377 } 378 379 func (m *WatchMetricDescriptorResponse) String() string { 380 return protoimpl.X.MessageStringOf(m) 381 } 382 383 func (*WatchMetricDescriptorResponse) ProtoMessage() {} 384 385 func (m *WatchMetricDescriptorResponse) ProtoReflect() preflect.Message { 386 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[3] 387 if protoimpl.UnsafeEnabled && m != nil { 388 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 389 if ms.LoadMessageInfo() == nil { 390 ms.StoreMessageInfo(mi) 391 } 392 return ms 393 } 394 return mi.MessageOf(m) 395 } 396 397 func (*WatchMetricDescriptorResponse) GotenMessage() {} 398 399 // Deprecated, Use WatchMetricDescriptorResponse.ProtoReflect.Descriptor instead. 400 func (*WatchMetricDescriptorResponse) Descriptor() ([]byte, []int) { 401 return edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescGZIP(), []int{3} 402 } 403 404 func (m *WatchMetricDescriptorResponse) Unmarshal(b []byte) error { 405 return proto.Unmarshal(b, m) 406 } 407 408 func (m *WatchMetricDescriptorResponse) Marshal() ([]byte, error) { 409 return proto.Marshal(m) 410 } 411 412 func (m *WatchMetricDescriptorResponse) MarshalJSON() ([]byte, error) { 413 return protojson.MarshalOptions{}.Marshal(m) 414 } 415 416 func (m *WatchMetricDescriptorResponse) UnmarshalJSON(data []byte) error { 417 return protojson.Unmarshal(data, m) 418 } 419 420 func (m *WatchMetricDescriptorResponse) GetChange() *metric_descriptor.MetricDescriptorChange { 421 if m != nil { 422 return m.Change 423 } 424 return nil 425 } 426 427 func (m *WatchMetricDescriptorResponse) SetChange(fv *metric_descriptor.MetricDescriptorChange) { 428 if m == nil { 429 panic(fmt.Errorf("can't set %s on nil %s", "Change", "WatchMetricDescriptorResponse")) 430 } 431 m.Change = fv 432 } 433 434 // A request message of the WatchMetricDescriptors method. 435 type WatchMetricDescriptorsRequest struct { 436 state protoimpl.MessageState 437 sizeCache protoimpl.SizeCache 438 unknownFields protoimpl.UnknownFields 439 // Type of a watch. Identifies how server stream data to a client, which 440 // fields in a request are allowed and which fields in response are relevant. 441 Type watch_type.WatchType `protobuf:"varint,9,opt,name=type,proto3,enum=goten.types.WatchType" json:"type,omitempty"` 442 // Parent name of ntt.monitoring.v4.MetricDescriptor 443 Parent *metric_descriptor.ParentName `protobuf:"bytes,1,opt,customtype=ParentName,name=parent,proto3" json:"parent,omitempty"` 444 // Requested page size. Server may return fewer MetricDescriptors than 445 // requested. If unspecified, server will pick an appropriate default. Can be 446 // populated only for stateful watch type. 447 PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 448 // A token identifying a page of results the server should return. 449 // Can be populated only for stateful watch type. 450 PageToken *metric_descriptor.PagerCursor `protobuf:"bytes,3,opt,customtype=PagerCursor,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 451 // Order By - 452 // https://cloud.google.com/apis/design/design_patterns#list_pagination Can be 453 // populated only for stateful watch type. 454 OrderBy *metric_descriptor.OrderBy `protobuf:"bytes,4,opt,customtype=OrderBy,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 455 // A token identifying watch resume point from previous session. 456 // Can be populated only for stateless watch type. 457 ResumeToken string `protobuf:"bytes,10,opt,name=resume_token,json=resumeToken,proto3" json:"resume_token,omitempty"` 458 // Point in the time from which we want to start getting updates. This field 459 // can be populated only for stateless watch type and if resume token is not 460 // known yet. If specified, initial snapshot will NOT be provided. It is 461 // assumed client can obtain it using separate means. Watch responses will 462 // contain resume tokens which should be used to resume broken connection. 463 StartingTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=starting_time,json=startingTime,proto3" json:"starting_time,omitempty"` 464 // Filter - filter results by field criteria. Simplified SQL-like syntax with 465 // following operators: 466 // <=, >=, =, !=, <, >, LIKE, CONTAINS (aliases CONTAIN, HAS, HAVE), IN, IS 467 // [NOT] NULL | NaN . Combine conditions with OR | AND example: 'meta.labels 468 // CONTAINS "severity:important" OR (state.last_error_time > 469 // "2018-11-15T10:00:00Z" AND state.status = "ERROR")' 470 Filter *metric_descriptor.Filter `protobuf:"bytes,5,opt,customtype=Filter,name=filter,proto3" json:"filter,omitempty"` 471 // A list of extra fields to be obtained for each response item on top of 472 // fields defined by request field view Changes to MetricDescriptor that don't 473 // affect any of masked fields won't be sent back. 474 FieldMask *metric_descriptor.MetricDescriptor_FieldMask `protobuf:"bytes,6,opt,customtype=MetricDescriptor_FieldMask,name=field_mask,json=fieldMask,proto3" json:"field_mask,omitempty"` 475 // View defines list of standard response fields present in response items. 476 // Additional fields can be amended by request field field_mask Changes to 477 // MetricDescriptor that don't affect any of masked fields won't be sent back. 478 View view.View `protobuf:"varint,8,opt,name=view,proto3,enum=goten.types.View" json:"view,omitempty"` 479 // Maximum amount of changes in each response message. Query result response 480 // is divided on the server side into chunks with size of a specified amount 481 // to limit memory footprint of each message. Responses will hold information 482 // whether more elements will continue for the actual change. If unspecified, 483 // server will pick an appropriate default. 484 MaxChunkSize int32 `protobuf:"varint,11,opt,name=max_chunk_size,json=maxChunkSize,proto3" json:"max_chunk_size,omitempty"` 485 } 486 487 func (m *WatchMetricDescriptorsRequest) Reset() { 488 *m = WatchMetricDescriptorsRequest{} 489 if protoimpl.UnsafeEnabled { 490 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[4] 491 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 492 ms.StoreMessageInfo(mi) 493 } 494 } 495 496 func (m *WatchMetricDescriptorsRequest) String() string { 497 return protoimpl.X.MessageStringOf(m) 498 } 499 500 func (*WatchMetricDescriptorsRequest) ProtoMessage() {} 501 502 func (m *WatchMetricDescriptorsRequest) ProtoReflect() preflect.Message { 503 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[4] 504 if protoimpl.UnsafeEnabled && m != nil { 505 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 506 if ms.LoadMessageInfo() == nil { 507 ms.StoreMessageInfo(mi) 508 } 509 return ms 510 } 511 return mi.MessageOf(m) 512 } 513 514 func (*WatchMetricDescriptorsRequest) GotenMessage() {} 515 516 // Deprecated, Use WatchMetricDescriptorsRequest.ProtoReflect.Descriptor instead. 517 func (*WatchMetricDescriptorsRequest) Descriptor() ([]byte, []int) { 518 return edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescGZIP(), []int{4} 519 } 520 521 func (m *WatchMetricDescriptorsRequest) Unmarshal(b []byte) error { 522 return proto.Unmarshal(b, m) 523 } 524 525 func (m *WatchMetricDescriptorsRequest) Marshal() ([]byte, error) { 526 return proto.Marshal(m) 527 } 528 529 func (m *WatchMetricDescriptorsRequest) MarshalJSON() ([]byte, error) { 530 return protojson.MarshalOptions{}.Marshal(m) 531 } 532 533 func (m *WatchMetricDescriptorsRequest) UnmarshalJSON(data []byte) error { 534 return protojson.Unmarshal(data, m) 535 } 536 537 func (m *WatchMetricDescriptorsRequest) GetType() watch_type.WatchType { 538 if m != nil { 539 return m.Type 540 } 541 return watch_type.WatchType_STATEFUL 542 } 543 544 func (m *WatchMetricDescriptorsRequest) GetParent() *metric_descriptor.ParentName { 545 if m != nil { 546 return m.Parent 547 } 548 return nil 549 } 550 551 func (m *WatchMetricDescriptorsRequest) GetPageSize() int32 { 552 if m != nil { 553 return m.PageSize 554 } 555 return int32(0) 556 } 557 558 func (m *WatchMetricDescriptorsRequest) GetPageToken() *metric_descriptor.PagerCursor { 559 if m != nil { 560 return m.PageToken 561 } 562 return nil 563 } 564 565 func (m *WatchMetricDescriptorsRequest) GetOrderBy() *metric_descriptor.OrderBy { 566 if m != nil { 567 return m.OrderBy 568 } 569 return nil 570 } 571 572 func (m *WatchMetricDescriptorsRequest) GetResumeToken() string { 573 if m != nil { 574 return m.ResumeToken 575 } 576 return "" 577 } 578 579 func (m *WatchMetricDescriptorsRequest) GetStartingTime() *timestamppb.Timestamp { 580 if m != nil { 581 return m.StartingTime 582 } 583 return nil 584 } 585 586 func (m *WatchMetricDescriptorsRequest) GetFilter() *metric_descriptor.Filter { 587 if m != nil { 588 return m.Filter 589 } 590 return nil 591 } 592 593 func (m *WatchMetricDescriptorsRequest) GetFieldMask() *metric_descriptor.MetricDescriptor_FieldMask { 594 if m != nil { 595 return m.FieldMask 596 } 597 return nil 598 } 599 600 func (m *WatchMetricDescriptorsRequest) GetView() view.View { 601 if m != nil { 602 return m.View 603 } 604 return view.View_UNSPECIFIED 605 } 606 607 func (m *WatchMetricDescriptorsRequest) GetMaxChunkSize() int32 { 608 if m != nil { 609 return m.MaxChunkSize 610 } 611 return int32(0) 612 } 613 614 func (m *WatchMetricDescriptorsRequest) SetType(fv watch_type.WatchType) { 615 if m == nil { 616 panic(fmt.Errorf("can't set %s on nil %s", "Type", "WatchMetricDescriptorsRequest")) 617 } 618 m.Type = fv 619 } 620 621 func (m *WatchMetricDescriptorsRequest) SetParent(fv *metric_descriptor.ParentName) { 622 if m == nil { 623 panic(fmt.Errorf("can't set %s on nil %s", "Parent", "WatchMetricDescriptorsRequest")) 624 } 625 m.Parent = fv 626 } 627 628 func (m *WatchMetricDescriptorsRequest) SetPageSize(fv int32) { 629 if m == nil { 630 panic(fmt.Errorf("can't set %s on nil %s", "PageSize", "WatchMetricDescriptorsRequest")) 631 } 632 m.PageSize = fv 633 } 634 635 func (m *WatchMetricDescriptorsRequest) SetPageToken(fv *metric_descriptor.PagerCursor) { 636 if m == nil { 637 panic(fmt.Errorf("can't set %s on nil %s", "PageToken", "WatchMetricDescriptorsRequest")) 638 } 639 m.PageToken = fv 640 } 641 642 func (m *WatchMetricDescriptorsRequest) SetOrderBy(fv *metric_descriptor.OrderBy) { 643 if m == nil { 644 panic(fmt.Errorf("can't set %s on nil %s", "OrderBy", "WatchMetricDescriptorsRequest")) 645 } 646 m.OrderBy = fv 647 } 648 649 func (m *WatchMetricDescriptorsRequest) SetResumeToken(fv string) { 650 if m == nil { 651 panic(fmt.Errorf("can't set %s on nil %s", "ResumeToken", "WatchMetricDescriptorsRequest")) 652 } 653 m.ResumeToken = fv 654 } 655 656 func (m *WatchMetricDescriptorsRequest) SetStartingTime(fv *timestamppb.Timestamp) { 657 if m == nil { 658 panic(fmt.Errorf("can't set %s on nil %s", "StartingTime", "WatchMetricDescriptorsRequest")) 659 } 660 m.StartingTime = fv 661 } 662 663 func (m *WatchMetricDescriptorsRequest) SetFilter(fv *metric_descriptor.Filter) { 664 if m == nil { 665 panic(fmt.Errorf("can't set %s on nil %s", "Filter", "WatchMetricDescriptorsRequest")) 666 } 667 m.Filter = fv 668 } 669 670 func (m *WatchMetricDescriptorsRequest) SetFieldMask(fv *metric_descriptor.MetricDescriptor_FieldMask) { 671 if m == nil { 672 panic(fmt.Errorf("can't set %s on nil %s", "FieldMask", "WatchMetricDescriptorsRequest")) 673 } 674 m.FieldMask = fv 675 } 676 677 func (m *WatchMetricDescriptorsRequest) SetView(fv view.View) { 678 if m == nil { 679 panic(fmt.Errorf("can't set %s on nil %s", "View", "WatchMetricDescriptorsRequest")) 680 } 681 m.View = fv 682 } 683 684 func (m *WatchMetricDescriptorsRequest) SetMaxChunkSize(fv int32) { 685 if m == nil { 686 panic(fmt.Errorf("can't set %s on nil %s", "MaxChunkSize", "WatchMetricDescriptorsRequest")) 687 } 688 m.MaxChunkSize = fv 689 } 690 691 // A response message of the WatchMetricDescriptors method. 692 type WatchMetricDescriptorsResponse struct { 693 state protoimpl.MessageState 694 sizeCache protoimpl.SizeCache 695 unknownFields protoimpl.UnknownFields 696 // Changes of MetricDescriptors 697 MetricDescriptorChanges []*metric_descriptor.MetricDescriptorChange `protobuf:"bytes,2,rep,name=metric_descriptor_changes,json=metricDescriptorChanges,proto3" json:"metric_descriptor_changes,omitempty"` 698 // If request specified max_chunk_size (or this limit was enforced if 699 // stateless watch has been chosen), then responses with "full changeset" will 700 // be divided into chunks. Client should keep receiving messages and, once 701 // is_current has value true, combine this recent message with all previous 702 // ones where is_current is false. If this is the first is_current in a whole 703 // watch stream, then it means that client should have, at this moment, 704 // contain snapshot of the current situation (or more accurately, snapshot of 705 // situation at the moment of request). All MetricDescriptors will be of type 706 // Added/Current (depending on watch_type specified in the request). Further 707 // responses will be incremental - however messages may still be chunked and 708 // is_current logic still applies. is_current is always true for stateful 709 // watch if max_chunk_size was left to 0. 710 IsCurrent bool `protobuf:"varint,4,opt,name=is_current,json=isCurrent,proto3" json:"is_current,omitempty"` 711 // When present, PageTokens used for page navigation should be updated. 712 // Present only if is_current is true (last chunk). 713 PageTokenChange *WatchMetricDescriptorsResponse_PageTokenChange `protobuf:"bytes,3,opt,name=page_token_change,json=pageTokenChange,proto3" json:"page_token_change,omitempty"` 714 // Token that can be used if current connection drops and client needs to 715 // reconnect. Populated only for stateless watch type. Present only if 716 // is_current is true (last chunk). 717 ResumeToken string `protobuf:"bytes,5,opt,name=resume_token,json=resumeToken,proto3" json:"resume_token,omitempty"` 718 // Server may occasionally send information how many resources should client 719 // have in its state so far (response message without any changes, but with 720 // snapshot_size field specified). If client has different value than the one 721 // sent by the server, then it should be treated by a client as an error and 722 // should reconnect. If value is smaller then 0, then client should ignore 723 // this field as unpopulated. This field should be checked only for stateless 724 // watch. In stateful those kind of errors are handled by the server side. 725 // Will be never sent together with is_current, is_soft_reset and 726 // is_hard_reset flags. 727 SnapshotSize int64 `protobuf:"varint,6,opt,name=snapshot_size,json=snapshotSize,proto3" json:"snapshot_size,omitempty"` 728 // In case of internal issue server may send response message with this flag. 729 // It indicates that client should drop all changes from recent responses 730 // where is_current is false only! If last message had is_current set to true, 731 // client should do nothing and process normally. Resume token received before 732 // is still valid. This field should be checked only for stateless watch. In 733 // stateful those kind of errors are handled by the server side. Will never be 734 // sent along with is_current, is_hard_reset or snapshot_size. 735 IsSoftReset bool `protobuf:"varint,7,opt,name=is_soft_reset,json=isSoftReset,proto3" json:"is_soft_reset,omitempty"` 736 // In case of internal issue server may send response message with this flag. 737 // After receiving, client should clear whole state (drop all changes received 738 // so far) as server will send new snapshot (MetricDescriptors will contains 739 // changes of type Current only). Any resume tokens should be discarded as 740 // well. This field should be checked only for stateless watch. In stateful 741 // those kind of errors are handled by the server side. Will never be sent 742 // along with is_current, is_soft_reset or snapshot_size. 743 IsHardReset bool `protobuf:"varint,8,opt,name=is_hard_reset,json=isHardReset,proto3" json:"is_hard_reset,omitempty"` 744 } 745 746 func (m *WatchMetricDescriptorsResponse) Reset() { 747 *m = WatchMetricDescriptorsResponse{} 748 if protoimpl.UnsafeEnabled { 749 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[5] 750 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 751 ms.StoreMessageInfo(mi) 752 } 753 } 754 755 func (m *WatchMetricDescriptorsResponse) String() string { 756 return protoimpl.X.MessageStringOf(m) 757 } 758 759 func (*WatchMetricDescriptorsResponse) ProtoMessage() {} 760 761 func (m *WatchMetricDescriptorsResponse) ProtoReflect() preflect.Message { 762 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[5] 763 if protoimpl.UnsafeEnabled && m != nil { 764 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 765 if ms.LoadMessageInfo() == nil { 766 ms.StoreMessageInfo(mi) 767 } 768 return ms 769 } 770 return mi.MessageOf(m) 771 } 772 773 func (*WatchMetricDescriptorsResponse) GotenMessage() {} 774 775 // Deprecated, Use WatchMetricDescriptorsResponse.ProtoReflect.Descriptor instead. 776 func (*WatchMetricDescriptorsResponse) Descriptor() ([]byte, []int) { 777 return edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescGZIP(), []int{5} 778 } 779 780 func (m *WatchMetricDescriptorsResponse) Unmarshal(b []byte) error { 781 return proto.Unmarshal(b, m) 782 } 783 784 func (m *WatchMetricDescriptorsResponse) Marshal() ([]byte, error) { 785 return proto.Marshal(m) 786 } 787 788 func (m *WatchMetricDescriptorsResponse) MarshalJSON() ([]byte, error) { 789 return protojson.MarshalOptions{}.Marshal(m) 790 } 791 792 func (m *WatchMetricDescriptorsResponse) UnmarshalJSON(data []byte) error { 793 return protojson.Unmarshal(data, m) 794 } 795 796 func (m *WatchMetricDescriptorsResponse) GetMetricDescriptorChanges() []*metric_descriptor.MetricDescriptorChange { 797 if m != nil { 798 return m.MetricDescriptorChanges 799 } 800 return nil 801 } 802 803 func (m *WatchMetricDescriptorsResponse) GetIsCurrent() bool { 804 if m != nil { 805 return m.IsCurrent 806 } 807 return false 808 } 809 810 func (m *WatchMetricDescriptorsResponse) GetPageTokenChange() *WatchMetricDescriptorsResponse_PageTokenChange { 811 if m != nil { 812 return m.PageTokenChange 813 } 814 return nil 815 } 816 817 func (m *WatchMetricDescriptorsResponse) GetResumeToken() string { 818 if m != nil { 819 return m.ResumeToken 820 } 821 return "" 822 } 823 824 func (m *WatchMetricDescriptorsResponse) GetSnapshotSize() int64 { 825 if m != nil { 826 return m.SnapshotSize 827 } 828 return int64(0) 829 } 830 831 func (m *WatchMetricDescriptorsResponse) GetIsSoftReset() bool { 832 if m != nil { 833 return m.IsSoftReset 834 } 835 return false 836 } 837 838 func (m *WatchMetricDescriptorsResponse) GetIsHardReset() bool { 839 if m != nil { 840 return m.IsHardReset 841 } 842 return false 843 } 844 845 func (m *WatchMetricDescriptorsResponse) SetMetricDescriptorChanges(fv []*metric_descriptor.MetricDescriptorChange) { 846 if m == nil { 847 panic(fmt.Errorf("can't set %s on nil %s", "MetricDescriptorChanges", "WatchMetricDescriptorsResponse")) 848 } 849 m.MetricDescriptorChanges = fv 850 } 851 852 func (m *WatchMetricDescriptorsResponse) SetIsCurrent(fv bool) { 853 if m == nil { 854 panic(fmt.Errorf("can't set %s on nil %s", "IsCurrent", "WatchMetricDescriptorsResponse")) 855 } 856 m.IsCurrent = fv 857 } 858 859 func (m *WatchMetricDescriptorsResponse) SetPageTokenChange(fv *WatchMetricDescriptorsResponse_PageTokenChange) { 860 if m == nil { 861 panic(fmt.Errorf("can't set %s on nil %s", "PageTokenChange", "WatchMetricDescriptorsResponse")) 862 } 863 m.PageTokenChange = fv 864 } 865 866 func (m *WatchMetricDescriptorsResponse) SetResumeToken(fv string) { 867 if m == nil { 868 panic(fmt.Errorf("can't set %s on nil %s", "ResumeToken", "WatchMetricDescriptorsResponse")) 869 } 870 m.ResumeToken = fv 871 } 872 873 func (m *WatchMetricDescriptorsResponse) SetSnapshotSize(fv int64) { 874 if m == nil { 875 panic(fmt.Errorf("can't set %s on nil %s", "SnapshotSize", "WatchMetricDescriptorsResponse")) 876 } 877 m.SnapshotSize = fv 878 } 879 880 func (m *WatchMetricDescriptorsResponse) SetIsSoftReset(fv bool) { 881 if m == nil { 882 panic(fmt.Errorf("can't set %s on nil %s", "IsSoftReset", "WatchMetricDescriptorsResponse")) 883 } 884 m.IsSoftReset = fv 885 } 886 887 func (m *WatchMetricDescriptorsResponse) SetIsHardReset(fv bool) { 888 if m == nil { 889 panic(fmt.Errorf("can't set %s on nil %s", "IsHardReset", "WatchMetricDescriptorsResponse")) 890 } 891 m.IsHardReset = fv 892 } 893 894 type WatchMetricDescriptorsResponse_PageTokenChange struct { 895 state protoimpl.MessageState 896 sizeCache protoimpl.SizeCache 897 unknownFields protoimpl.UnknownFields 898 // New token to retrieve previous page of results. 899 PrevPageToken *metric_descriptor.PagerCursor `protobuf:"bytes,1,opt,customtype=PagerCursor,name=prev_page_token,json=prevPageToken,proto3" json:"prev_page_token,omitempty"` 900 // New token to retrieve next page of results. 901 NextPageToken *metric_descriptor.PagerCursor `protobuf:"bytes,2,opt,customtype=PagerCursor,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 902 } 903 904 func (m *WatchMetricDescriptorsResponse_PageTokenChange) Reset() { 905 *m = WatchMetricDescriptorsResponse_PageTokenChange{} 906 if protoimpl.UnsafeEnabled { 907 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[6] 908 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 909 ms.StoreMessageInfo(mi) 910 } 911 } 912 913 func (m *WatchMetricDescriptorsResponse_PageTokenChange) String() string { 914 return protoimpl.X.MessageStringOf(m) 915 } 916 917 func (*WatchMetricDescriptorsResponse_PageTokenChange) ProtoMessage() {} 918 919 func (m *WatchMetricDescriptorsResponse_PageTokenChange) ProtoReflect() preflect.Message { 920 mi := &edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[6] 921 if protoimpl.UnsafeEnabled && m != nil { 922 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 923 if ms.LoadMessageInfo() == nil { 924 ms.StoreMessageInfo(mi) 925 } 926 return ms 927 } 928 return mi.MessageOf(m) 929 } 930 931 func (*WatchMetricDescriptorsResponse_PageTokenChange) GotenMessage() {} 932 933 // Deprecated, Use WatchMetricDescriptorsResponse_PageTokenChange.ProtoReflect.Descriptor instead. 934 func (*WatchMetricDescriptorsResponse_PageTokenChange) Descriptor() ([]byte, []int) { 935 return edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescGZIP(), []int{5, 0} 936 } 937 938 func (m *WatchMetricDescriptorsResponse_PageTokenChange) Unmarshal(b []byte) error { 939 return proto.Unmarshal(b, m) 940 } 941 942 func (m *WatchMetricDescriptorsResponse_PageTokenChange) Marshal() ([]byte, error) { 943 return proto.Marshal(m) 944 } 945 946 func (m *WatchMetricDescriptorsResponse_PageTokenChange) MarshalJSON() ([]byte, error) { 947 return protojson.MarshalOptions{}.Marshal(m) 948 } 949 950 func (m *WatchMetricDescriptorsResponse_PageTokenChange) UnmarshalJSON(data []byte) error { 951 return protojson.Unmarshal(data, m) 952 } 953 954 func (m *WatchMetricDescriptorsResponse_PageTokenChange) GetPrevPageToken() *metric_descriptor.PagerCursor { 955 if m != nil { 956 return m.PrevPageToken 957 } 958 return nil 959 } 960 961 func (m *WatchMetricDescriptorsResponse_PageTokenChange) GetNextPageToken() *metric_descriptor.PagerCursor { 962 if m != nil { 963 return m.NextPageToken 964 } 965 return nil 966 } 967 968 func (m *WatchMetricDescriptorsResponse_PageTokenChange) SetPrevPageToken(fv *metric_descriptor.PagerCursor) { 969 if m == nil { 970 panic(fmt.Errorf("can't set %s on nil %s", "PrevPageToken", "WatchMetricDescriptorsResponse_PageTokenChange")) 971 } 972 m.PrevPageToken = fv 973 } 974 975 func (m *WatchMetricDescriptorsResponse_PageTokenChange) SetNextPageToken(fv *metric_descriptor.PagerCursor) { 976 if m == nil { 977 panic(fmt.Errorf("can't set %s on nil %s", "NextPageToken", "WatchMetricDescriptorsResponse_PageTokenChange")) 978 } 979 m.NextPageToken = fv 980 } 981 982 var edgelq_monitoring_proto_v4_metric_descriptor_service_proto preflect.FileDescriptor 983 984 var edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDesc = []byte{ 985 0x0a, 0x3a, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 986 0x69, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x6d, 0x65, 0x74, 987 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x73, 988 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x6e, 0x74, 989 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x1a, 990 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 991 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 992 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 993 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 994 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 995 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 996 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x67, 0x6f, 0x74, 0x65, 997 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 998 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x65, 999 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 1000 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 1001 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 1002 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x63, 0x6c, 0x69, 0x2e, 0x70, 1003 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 1004 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 1005 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 1006 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 1007 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 1008 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 1009 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1010 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 1011 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 1012 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 1013 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x6f, 1014 0x74, 0x65, 0x6e, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x69, 0x65, 0x77, 0x2e, 0x70, 1015 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x74, 0x79, 0x70, 0x65, 1016 0x73, 0x2f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x70, 0x72, 0x6f, 1017 0x74, 0x6f, 0x1a, 0x39, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 1018 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x6d, 1019 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 1020 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x32, 0x65, 1021 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 1022 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 1023 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1024 0x6f, 0x1a, 0x39, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 1025 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x6d, 0x65, 1026 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 1027 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd4, 0x01, 0x0a, 1028 0x20, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 1029 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 1030 0x74, 0x12, 0x2e, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 1031 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x0a, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 1032 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 1033 0x73, 0x12, 0x53, 0x0a, 0x0a, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 1034 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 1035 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 1036 0x6b, 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x32, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 1037 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x66, 0x69, 0x65, 1038 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x25, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x04, 1039 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x74, 0x79, 0x70, 1040 0x65, 0x73, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x4a, 0x04, 0x08, 1041 0x01, 0x10, 0x02, 0x22, 0xab, 0x01, 0x0a, 0x21, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 1042 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 1043 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x12, 0x6d, 0x65, 0x74, 1044 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x18, 1045 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 1046 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 1047 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x11, 0x6d, 0x65, 0x74, 0x72, 1048 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x32, 0x0a, 1049 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x18, 1050 0xb2, 0xda, 0x21, 0x14, 0x0a, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 1051 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 1052 0x67, 0x22, 0xc8, 0x01, 0x0a, 0x1c, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 1053 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 1054 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 1055 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x0a, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 1056 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 1057 0x12, 0x53, 0x0a, 0x0a, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 1058 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 1059 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 1060 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x32, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 1061 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x66, 0x69, 0x65, 0x6c, 1062 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x25, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x04, 0x20, 1063 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x74, 0x79, 0x70, 0x65, 1064 0x73, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x22, 0x62, 0x0a, 0x1d, 1065 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 1066 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 1067 0x06, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 1068 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 1069 0x34, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 1070 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 1071 0x22, 0xd8, 0x04, 0x0a, 0x1d, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 1072 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 1073 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 1074 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x57, 1075 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x30, 1076 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 1077 0xb2, 0xda, 0x21, 0x14, 0x3a, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 1078 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 1079 0x12, 0x25, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 1080 0x01, 0x28, 0x05, 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x12, 0x02, 0x2a, 0x00, 0x52, 0x08, 0x70, 1081 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 1082 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xb2, 0xda, 0x21, 1083 0x14, 0x22, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 1084 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 1085 0x12, 0x33, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01, 1086 0x28, 0x09, 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x2a, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 1087 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x6f, 0x72, 1088 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x5f, 1089 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x73, 1090 0x75, 0x6d, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x3f, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x72, 1091 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 1092 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 1093 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x73, 0x74, 0x61, 1094 0x72, 0x74, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x06, 0x66, 0x69, 0x6c, 1095 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x1a, 1096 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 1097 0x74, 0x6f, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x53, 0x0a, 0x0a, 0x66, 1098 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 1099 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 1100 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x18, 0xb2, 0xda, 0x21, 1101 0x14, 0x32, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 1102 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 1103 0x12, 0x25, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 1104 0x2e, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x69, 0x65, 1105 0x77, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x32, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x63, 1106 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x42, 1107 0x0c, 0xca, 0xc6, 0x27, 0x08, 0x12, 0x06, 0x1a, 0x02, 0x08, 0x64, 0x2a, 0x00, 0x52, 0x0c, 0x6d, 1108 0x61, 0x78, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xbd, 0x04, 0x0a, 0x1e, 1109 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 1110 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 1111 0x0a, 0x19, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 1112 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 1113 0x0b, 0x32, 0x29, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 1114 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 1115 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x17, 0x6d, 0x65, 1116 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x43, 0x68, 1117 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x63, 0x75, 0x72, 0x72, 1118 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x43, 0x75, 0x72, 1119 0x72, 0x65, 0x6e, 0x74, 0x12, 0x6d, 0x0a, 0x11, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 1120 0x65, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 1121 0x41, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 1122 0x2e, 0x76, 0x34, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 1123 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 1124 0x73, 0x65, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 1125 0x67, 0x65, 0x52, 0x0f, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x68, 0x61, 1126 0x6e, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 1127 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x75, 0x6d, 1128 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 1129 0x6f, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x73, 1130 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x69, 1131 0x73, 0x5f, 0x73, 0x6f, 0x66, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 1132 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x53, 0x6f, 0x66, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x12, 1133 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x74, 1134 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x48, 0x61, 0x72, 0x64, 0x52, 0x65, 1135 0x73, 0x65, 0x74, 0x1a, 0x95, 0x01, 0x0a, 0x0f, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 1136 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x40, 0x0a, 0x0f, 0x70, 0x72, 0x65, 0x76, 0x5f, 1137 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 1138 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x22, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 1139 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x76, 1140 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x40, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 1141 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 1142 0x28, 0x09, 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x22, 0x12, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 1143 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x0d, 0x6e, 0x65, 1144 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x32, 0xd4, 0x0f, 0x0a, 0x17, 1145 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 1146 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xf9, 0x01, 0x0a, 0x19, 0x42, 0x61, 0x74, 0x63, 1147 0x68, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 1148 0x70, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x33, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 1149 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 1150 0x65, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 1151 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x6e, 0x74, 0x74, 1152 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x42, 1153 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 1154 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 1155 0x22, 0x71, 0x82, 0xdb, 0x21, 0x3d, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 1156 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x08, 0x62, 0x61, 0x74, 0x63, 0x68, 0x47, 1157 0x65, 0x74, 0x20, 0x01, 0x2a, 0x07, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x32, 0x14, 0x12, 1158 0x12, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 1159 0x6f, 0x72, 0x73, 0xa2, 0xdc, 0x21, 0x02, 0x08, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 1160 0x1e, 0x2f, 0x76, 0x34, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 1161 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x8a, 1162 0xcc, 0x26, 0x00, 0x12, 0xee, 0x01, 0x0a, 0x15, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 1163 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x2f, 0x2e, 1164 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 1165 0x34, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 1166 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 1167 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 1168 0x76, 0x34, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 1169 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 1170 0x22, 0x70, 0x82, 0xdb, 0x21, 0x2b, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 1171 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x05, 0x77, 0x61, 0x74, 0x63, 0x68, 0x2a, 1172 0x06, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x32, 0x08, 0x12, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x67, 1173 0x65, 0xa2, 0xdc, 0x21, 0x02, 0x08, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x22, 0x2f, 0x2f, 1174 0x76, 0x34, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 1175 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 1176 0x70, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x77, 0x61, 0x74, 0x63, 0x68, 0x8a, 0xcc, 1177 0x26, 0x00, 0x30, 0x01, 0x12, 0x8b, 0x02, 0x0a, 0x16, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 1178 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x12, 1179 0x30, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 1180 0x2e, 0x76, 0x34, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 1181 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 1182 0x74, 0x1a, 0x31, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 1183 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x57, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 1184 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 1185 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x89, 0x01, 0x82, 0xdb, 0x21, 0x44, 0x0a, 0x10, 0x4d, 0x65, 0x74, 1186 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x05, 0x77, 1187 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x2a, 0x08, 0x1a, 0x06, 0x70, 0x61, 0x72, 0x65, 1188 0x6e, 0x74, 0x32, 0x1b, 0x12, 0x19, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 1189 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0xa2, 1190 0xdc, 0x21, 0x02, 0x08, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x31, 0x22, 0x2f, 0x2f, 0x76, 0x34, 1191 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 1192 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 1193 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x3a, 0x77, 0x61, 0x74, 0x63, 0x68, 0x8a, 0xcc, 0x26, 0x00, 1194 0x30, 0x01, 0x12, 0xc9, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 1195 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x2d, 0x2e, 0x6e, 0x74, 0x74, 1196 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x47, 1197 0x65, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 1198 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 1199 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4d, 0x65, 1200 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x22, 0x5e, 1201 0x82, 0xdb, 0x21, 0x1f, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 1202 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x03, 0x67, 0x65, 0x74, 0x2a, 0x06, 0x0a, 0x04, 0x6e, 1203 0x61, 0x6d, 0x65, 0xa2, 0xdc, 0x21, 0x02, 0x08, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 1204 0x29, 0x2f, 0x76, 0x34, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 1205 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 1206 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x8a, 0xcc, 0x26, 0x00, 0x12, 0xff, 1207 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 1208 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x30, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 1209 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x43, 0x72, 1210 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 1211 0x70, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6e, 0x74, 1212 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 1213 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 1214 0x22, 0x8d, 0x01, 0x82, 0xdb, 0x21, 0x39, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 1215 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x06, 0x63, 0x72, 0x65, 0x61, 0x74, 1216 0x65, 0x18, 0x01, 0x2a, 0x1b, 0x12, 0x11, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 1217 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x1a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 1218 0xa2, 0xdc, 0x21, 0x02, 0x10, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3e, 0x3a, 0x11, 0x6d, 0x65, 1219 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x22, 1220 0x29, 0x2f, 0x76, 0x34, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 1221 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 1222 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x8a, 0xcc, 0x26, 0x02, 0x10, 0x01, 1223 0x12, 0x8f, 0x02, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 1224 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x30, 0x2e, 0x6e, 0x74, 1225 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 1226 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 1227 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 1228 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 1229 0x34, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 1230 0x6f, 0x72, 0x22, 0x9d, 0x01, 0x82, 0xdb, 0x21, 0x37, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 1231 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x06, 0x75, 0x70, 0x64, 1232 0x61, 0x74, 0x65, 0x2a, 0x13, 0x12, 0x11, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 1233 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x32, 0x06, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 1234 0xa2, 0xdc, 0x21, 0x02, 0x10, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x50, 0x3a, 0x11, 0x6d, 0x65, 1235 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x1a, 1236 0x3b, 0x2f, 0x76, 0x34, 0x2f, 0x7b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 1237 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 1238 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 1239 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x8a, 0xcc, 0x26, 0x02, 1240 0x10, 0x01, 0x12, 0xc7, 0x01, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x74, 1241 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x30, 0x2e, 1242 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 1243 0x34, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 1244 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 1245 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 1246 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x63, 0x82, 0xdb, 0x21, 0x22, 0x0a, 0x10, 0x4d, 1247 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 1248 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x2a, 0x06, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0xa2, 1249 0xdc, 0x21, 0x02, 0x10, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x2a, 0x29, 0x2f, 0x76, 0x34, 1250 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 1251 0x2a, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 1252 0x6f, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x8a, 0xcc, 0x26, 0x02, 0x10, 0x01, 0x12, 0xdf, 0x01, 0x0a, 1253 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 1254 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2f, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 1255 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 1256 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 1257 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 1258 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4c, 0x69, 0x73, 0x74, 1259 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 1260 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x63, 0x82, 0xdb, 0x21, 0x26, 0x0a, 1261 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 1262 0x72, 0x12, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x2a, 0x08, 0x1a, 0x06, 0x70, 1263 0x61, 0x72, 0x65, 0x6e, 0x74, 0xa2, 0xdc, 0x21, 0x00, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 1264 0x29, 0x2f, 0x76, 0x34, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 1265 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 1266 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x8a, 0xcc, 0x26, 0x00, 0x1a, 0x32, 1267 0xca, 0x41, 0x15, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x65, 0x64, 1268 0x67, 0x65, 0x6c, 0x71, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x17, 0x68, 0x74, 0x74, 0x70, 0x73, 1269 0x3a, 0x2f, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2e, 0x63, 1270 0x6f, 0x6d, 0x42, 0xde, 0x02, 0xe8, 0xde, 0x21, 0x00, 0x82, 0xff, 0xd0, 0x02, 0x5d, 0x0a, 0x18, 1271 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 1272 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x41, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 1273 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61, 0x6e, 0x2f, 0x65, 0x64, 1274 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 1275 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x76, 0x34, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 1276 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x8a, 0xff, 0xd0, 0x02, 0x5d, 1277 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 1278 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x41, 0x67, 0x69, 0x74, 0x68, 1279 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61, 0x6e, 0x2f, 1280 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 1281 0x67, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x34, 0x2f, 0x6d, 0x65, 0x74, 0x72, 1282 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x0a, 0x18, 0x63, 1283 0x6f, 0x6d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 1284 0x67, 0x2e, 0x70, 0x62, 0x2e, 0x76, 0x34, 0x42, 0x1c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 1285 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 1286 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x00, 0x5a, 0x5a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 1287 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61, 0x6e, 0x2f, 0x65, 0x64, 0x67, 1288 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x63, 1289 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x34, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 1290 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x3b, 0x6d, 0x65, 0x74, 0x72, 0x69, 1291 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x69, 1292 0x65, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 1293 } 1294 1295 var ( 1296 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescOnce sync.Once 1297 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescData = edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDesc 1298 ) 1299 1300 func edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescGZIP() []byte { 1301 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescOnce.Do(func() { 1302 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescData = protoimpl.X.CompressGZIP(edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescData) 1303 }) 1304 return edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDescData 1305 } 1306 1307 var edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes = make([]protoimpl.MessageInfo, 7) 1308 var edgelq_monitoring_proto_v4_metric_descriptor_service_proto_goTypes = []interface{}{ 1309 (*BatchGetMetricDescriptorsRequest)(nil), // 0: ntt.monitoring.v4.BatchGetMetricDescriptorsRequest 1310 (*BatchGetMetricDescriptorsResponse)(nil), // 1: ntt.monitoring.v4.BatchGetMetricDescriptorsResponse 1311 (*WatchMetricDescriptorRequest)(nil), // 2: ntt.monitoring.v4.WatchMetricDescriptorRequest 1312 (*WatchMetricDescriptorResponse)(nil), // 3: ntt.monitoring.v4.WatchMetricDescriptorResponse 1313 (*WatchMetricDescriptorsRequest)(nil), // 4: ntt.monitoring.v4.WatchMetricDescriptorsRequest 1314 (*WatchMetricDescriptorsResponse)(nil), // 5: ntt.monitoring.v4.WatchMetricDescriptorsResponse 1315 (*WatchMetricDescriptorsResponse_PageTokenChange)(nil), // 6: ntt.monitoring.v4.WatchMetricDescriptorsResponse.PageTokenChange 1316 (*metric_descriptor.MetricDescriptor_FieldMask)(nil), // 7: ntt.monitoring.v4.MetricDescriptor_FieldMask 1317 (view.View)(0), // 8: goten.types.View 1318 (*metric_descriptor.MetricDescriptor)(nil), // 9: ntt.monitoring.v4.MetricDescriptor 1319 (*metric_descriptor.MetricDescriptorChange)(nil), // 10: ntt.monitoring.v4.MetricDescriptorChange 1320 (watch_type.WatchType)(0), // 11: goten.types.WatchType 1321 (*timestamppb.Timestamp)(nil), // 12: google.protobuf.Timestamp 1322 (*GetMetricDescriptorRequest)(nil), // 13: ntt.monitoring.v4.GetMetricDescriptorRequest 1323 (*CreateMetricDescriptorRequest)(nil), // 14: ntt.monitoring.v4.CreateMetricDescriptorRequest 1324 (*UpdateMetricDescriptorRequest)(nil), // 15: ntt.monitoring.v4.UpdateMetricDescriptorRequest 1325 (*DeleteMetricDescriptorRequest)(nil), // 16: ntt.monitoring.v4.DeleteMetricDescriptorRequest 1326 (*ListMetricDescriptorsRequest)(nil), // 17: ntt.monitoring.v4.ListMetricDescriptorsRequest 1327 (*emptypb.Empty)(nil), // 18: google.protobuf.Empty 1328 (*ListMetricDescriptorsResponse)(nil), // 19: ntt.monitoring.v4.ListMetricDescriptorsResponse 1329 } 1330 var edgelq_monitoring_proto_v4_metric_descriptor_service_proto_depIdxs = []int32{ 1331 7, // 0: ntt.monitoring.v4.BatchGetMetricDescriptorsRequest.field_mask:type_name -> ntt.monitoring.v4.MetricDescriptor_FieldMask 1332 8, // 1: ntt.monitoring.v4.BatchGetMetricDescriptorsRequest.view:type_name -> goten.types.View 1333 9, // 2: ntt.monitoring.v4.BatchGetMetricDescriptorsResponse.metric_descriptors:type_name -> ntt.monitoring.v4.MetricDescriptor 1334 7, // 3: ntt.monitoring.v4.WatchMetricDescriptorRequest.field_mask:type_name -> ntt.monitoring.v4.MetricDescriptor_FieldMask 1335 8, // 4: ntt.monitoring.v4.WatchMetricDescriptorRequest.view:type_name -> goten.types.View 1336 10, // 5: ntt.monitoring.v4.WatchMetricDescriptorResponse.change:type_name -> ntt.monitoring.v4.MetricDescriptorChange 1337 11, // 6: ntt.monitoring.v4.WatchMetricDescriptorsRequest.type:type_name -> goten.types.WatchType 1338 12, // 7: ntt.monitoring.v4.WatchMetricDescriptorsRequest.starting_time:type_name -> google.protobuf.Timestamp 1339 7, // 8: ntt.monitoring.v4.WatchMetricDescriptorsRequest.field_mask:type_name -> ntt.monitoring.v4.MetricDescriptor_FieldMask 1340 8, // 9: ntt.monitoring.v4.WatchMetricDescriptorsRequest.view:type_name -> goten.types.View 1341 10, // 10: ntt.monitoring.v4.WatchMetricDescriptorsResponse.metric_descriptor_changes:type_name -> ntt.monitoring.v4.MetricDescriptorChange 1342 6, // 11: ntt.monitoring.v4.WatchMetricDescriptorsResponse.page_token_change:type_name -> ntt.monitoring.v4.WatchMetricDescriptorsResponse.PageTokenChange 1343 0, // 12: ntt.monitoring.v4.MetricDescriptorService.BatchGetMetricDescriptors:input_type -> ntt.monitoring.v4.BatchGetMetricDescriptorsRequest 1344 2, // 13: ntt.monitoring.v4.MetricDescriptorService.WatchMetricDescriptor:input_type -> ntt.monitoring.v4.WatchMetricDescriptorRequest 1345 4, // 14: ntt.monitoring.v4.MetricDescriptorService.WatchMetricDescriptors:input_type -> ntt.monitoring.v4.WatchMetricDescriptorsRequest 1346 13, // 15: ntt.monitoring.v4.MetricDescriptorService.GetMetricDescriptor:input_type -> ntt.monitoring.v4.GetMetricDescriptorRequest 1347 14, // 16: ntt.monitoring.v4.MetricDescriptorService.CreateMetricDescriptor:input_type -> ntt.monitoring.v4.CreateMetricDescriptorRequest 1348 15, // 17: ntt.monitoring.v4.MetricDescriptorService.UpdateMetricDescriptor:input_type -> ntt.monitoring.v4.UpdateMetricDescriptorRequest 1349 16, // 18: ntt.monitoring.v4.MetricDescriptorService.DeleteMetricDescriptor:input_type -> ntt.monitoring.v4.DeleteMetricDescriptorRequest 1350 17, // 19: ntt.monitoring.v4.MetricDescriptorService.ListMetricDescriptors:input_type -> ntt.monitoring.v4.ListMetricDescriptorsRequest 1351 1, // 20: ntt.monitoring.v4.MetricDescriptorService.BatchGetMetricDescriptors:output_type -> ntt.monitoring.v4.BatchGetMetricDescriptorsResponse 1352 3, // 21: ntt.monitoring.v4.MetricDescriptorService.WatchMetricDescriptor:output_type -> ntt.monitoring.v4.WatchMetricDescriptorResponse 1353 5, // 22: ntt.monitoring.v4.MetricDescriptorService.WatchMetricDescriptors:output_type -> ntt.monitoring.v4.WatchMetricDescriptorsResponse 1354 9, // 23: ntt.monitoring.v4.MetricDescriptorService.GetMetricDescriptor:output_type -> ntt.monitoring.v4.MetricDescriptor 1355 9, // 24: ntt.monitoring.v4.MetricDescriptorService.CreateMetricDescriptor:output_type -> ntt.monitoring.v4.MetricDescriptor 1356 9, // 25: ntt.monitoring.v4.MetricDescriptorService.UpdateMetricDescriptor:output_type -> ntt.monitoring.v4.MetricDescriptor 1357 18, // 26: ntt.monitoring.v4.MetricDescriptorService.DeleteMetricDescriptor:output_type -> google.protobuf.Empty 1358 19, // 27: ntt.monitoring.v4.MetricDescriptorService.ListMetricDescriptors:output_type -> ntt.monitoring.v4.ListMetricDescriptorsResponse 1359 20, // [20:28] is the sub-list for method output_type 1360 12, // [12:20] is the sub-list for method input_type 1361 12, // [12:12] is the sub-list for extension type_name 1362 12, // [12:12] is the sub-list for extension extendee 1363 0, // [0:12] is the sub-list for field type_name 1364 } 1365 1366 func init() { edgelq_monitoring_proto_v4_metric_descriptor_service_proto_init() } 1367 func edgelq_monitoring_proto_v4_metric_descriptor_service_proto_init() { 1368 if edgelq_monitoring_proto_v4_metric_descriptor_service_proto != nil { 1369 return 1370 } 1371 if !protoimpl.UnsafeEnabled { 1372 1373 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1374 switch v := v.(*BatchGetMetricDescriptorsRequest); 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 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1386 switch v := v.(*BatchGetMetricDescriptorsResponse); 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 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1398 switch v := v.(*WatchMetricDescriptorRequest); i { 1399 case 0: 1400 return &v.state 1401 case 1: 1402 return &v.sizeCache 1403 case 2: 1404 return &v.unknownFields 1405 default: 1406 return nil 1407 } 1408 } 1409 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1410 switch v := v.(*WatchMetricDescriptorResponse); i { 1411 case 0: 1412 return &v.state 1413 case 1: 1414 return &v.sizeCache 1415 case 2: 1416 return &v.unknownFields 1417 default: 1418 return nil 1419 } 1420 } 1421 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1422 switch v := v.(*WatchMetricDescriptorsRequest); i { 1423 case 0: 1424 return &v.state 1425 case 1: 1426 return &v.sizeCache 1427 case 2: 1428 return &v.unknownFields 1429 default: 1430 return nil 1431 } 1432 } 1433 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1434 switch v := v.(*WatchMetricDescriptorsResponse); i { 1435 case 0: 1436 return &v.state 1437 case 1: 1438 return &v.sizeCache 1439 case 2: 1440 return &v.unknownFields 1441 default: 1442 return nil 1443 } 1444 } 1445 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1446 switch v := v.(*WatchMetricDescriptorsResponse_PageTokenChange); i { 1447 case 0: 1448 return &v.state 1449 case 1: 1450 return &v.sizeCache 1451 case 2: 1452 return &v.unknownFields 1453 default: 1454 return nil 1455 } 1456 } 1457 } 1458 1459 type x struct{} 1460 out := protoimpl.TypeBuilder{ 1461 File: protoimpl.DescBuilder{ 1462 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1463 RawDescriptor: edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDesc, 1464 NumEnums: 0, 1465 NumMessages: 7, 1466 NumExtensions: 0, 1467 NumServices: 1, 1468 }, 1469 GoTypes: edgelq_monitoring_proto_v4_metric_descriptor_service_proto_goTypes, 1470 DependencyIndexes: edgelq_monitoring_proto_v4_metric_descriptor_service_proto_depIdxs, 1471 MessageInfos: edgelq_monitoring_proto_v4_metric_descriptor_service_proto_msgTypes, 1472 }.Build() 1473 edgelq_monitoring_proto_v4_metric_descriptor_service_proto = out.File 1474 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_rawDesc = nil 1475 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_goTypes = nil 1476 edgelq_monitoring_proto_v4_metric_descriptor_service_proto_depIdxs = nil 1477 }