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/maps/fleetengine/v1/vehicle_api.proto 20 21package fleetengine 22 23import ( 24 context "context" 25 reflect "reflect" 26 sync "sync" 27 28 _ "google.golang.org/genproto/googleapis/api/annotations" 29 latlng "google.golang.org/genproto/googleapis/type/latlng" 30 grpc "google.golang.org/grpc" 31 codes "google.golang.org/grpc/codes" 32 status "google.golang.org/grpc/status" 33 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 34 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 35 durationpb "google.golang.org/protobuf/types/known/durationpb" 36 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 37 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 38 wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" 39) 40 41const ( 42 // Verify that this generated code is sufficiently up-to-date. 43 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 44 // Verify that runtime/protoimpl is sufficiently up-to-date. 45 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 46) 47 48// Specifies the sort order of the vehicle matches in the response. 49type SearchVehiclesRequest_VehicleMatchOrder int32 50 51const ( 52 // Default, used for unspecified or unrecognized vehicle matches order. 53 SearchVehiclesRequest_UNKNOWN_VEHICLE_MATCH_ORDER SearchVehiclesRequest_VehicleMatchOrder = 0 54 // Ascending order by vehicle driving time to the pickup point. 55 SearchVehiclesRequest_PICKUP_POINT_ETA SearchVehiclesRequest_VehicleMatchOrder = 1 56 // Ascending order by the vehicle driving distance to the pickup point. 57 SearchVehiclesRequest_PICKUP_POINT_DISTANCE SearchVehiclesRequest_VehicleMatchOrder = 2 58 // Ascending order by vehicle driving time to the dropoff point. This order 59 // can only be used if the dropoff_point is specified in the request. 60 SearchVehiclesRequest_DROPOFF_POINT_ETA SearchVehiclesRequest_VehicleMatchOrder = 3 61 // Ascending order by straightline distance from vehicle location to pickup 62 // location. This is used primarily as a backup if the maps backend is not 63 // reachable. 64 SearchVehiclesRequest_PICKUP_POINT_STRAIGHT_DISTANCE SearchVehiclesRequest_VehicleMatchOrder = 4 65 // Ascending order by the match cost. 66 SearchVehiclesRequest_COST SearchVehiclesRequest_VehicleMatchOrder = 5 67) 68 69// Enum value maps for SearchVehiclesRequest_VehicleMatchOrder. 70var ( 71 SearchVehiclesRequest_VehicleMatchOrder_name = map[int32]string{ 72 0: "UNKNOWN_VEHICLE_MATCH_ORDER", 73 1: "PICKUP_POINT_ETA", 74 2: "PICKUP_POINT_DISTANCE", 75 3: "DROPOFF_POINT_ETA", 76 4: "PICKUP_POINT_STRAIGHT_DISTANCE", 77 5: "COST", 78 } 79 SearchVehiclesRequest_VehicleMatchOrder_value = map[string]int32{ 80 "UNKNOWN_VEHICLE_MATCH_ORDER": 0, 81 "PICKUP_POINT_ETA": 1, 82 "PICKUP_POINT_DISTANCE": 2, 83 "DROPOFF_POINT_ETA": 3, 84 "PICKUP_POINT_STRAIGHT_DISTANCE": 4, 85 "COST": 5, 86 } 87) 88 89func (x SearchVehiclesRequest_VehicleMatchOrder) Enum() *SearchVehiclesRequest_VehicleMatchOrder { 90 p := new(SearchVehiclesRequest_VehicleMatchOrder) 91 *p = x 92 return p 93} 94 95func (x SearchVehiclesRequest_VehicleMatchOrder) String() string { 96 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 97} 98 99func (SearchVehiclesRequest_VehicleMatchOrder) Descriptor() protoreflect.EnumDescriptor { 100 return file_google_maps_fleetengine_v1_vehicle_api_proto_enumTypes[0].Descriptor() 101} 102 103func (SearchVehiclesRequest_VehicleMatchOrder) Type() protoreflect.EnumType { 104 return &file_google_maps_fleetengine_v1_vehicle_api_proto_enumTypes[0] 105} 106 107func (x SearchVehiclesRequest_VehicleMatchOrder) Number() protoreflect.EnumNumber { 108 return protoreflect.EnumNumber(x) 109} 110 111// Deprecated: Use SearchVehiclesRequest_VehicleMatchOrder.Descriptor instead. 112func (SearchVehiclesRequest_VehicleMatchOrder) EnumDescriptor() ([]byte, []int) { 113 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{6, 0} 114} 115 116// Type of vehicle match. 117type VehicleMatch_VehicleMatchType int32 118 119const ( 120 // Unknown vehicle match type 121 VehicleMatch_UNKNOWN VehicleMatch_VehicleMatchType = 0 122 // Exclusive vehicle trip match 123 VehicleMatch_EXCLUSIVE VehicleMatch_VehicleMatchType = 1 124 // Back to back ride match. 125 VehicleMatch_BACK_TO_BACK VehicleMatch_VehicleMatchType = 2 126 // Carpool ride match. 127 VehicleMatch_CARPOOL VehicleMatch_VehicleMatchType = 3 128 // Carpool ride match. The car has an active exclusive trip. 129 VehicleMatch_CARPOOL_BACK_TO_BACK VehicleMatch_VehicleMatchType = 4 130) 131 132// Enum value maps for VehicleMatch_VehicleMatchType. 133var ( 134 VehicleMatch_VehicleMatchType_name = map[int32]string{ 135 0: "UNKNOWN", 136 1: "EXCLUSIVE", 137 2: "BACK_TO_BACK", 138 3: "CARPOOL", 139 4: "CARPOOL_BACK_TO_BACK", 140 } 141 VehicleMatch_VehicleMatchType_value = map[string]int32{ 142 "UNKNOWN": 0, 143 "EXCLUSIVE": 1, 144 "BACK_TO_BACK": 2, 145 "CARPOOL": 3, 146 "CARPOOL_BACK_TO_BACK": 4, 147 } 148) 149 150func (x VehicleMatch_VehicleMatchType) Enum() *VehicleMatch_VehicleMatchType { 151 p := new(VehicleMatch_VehicleMatchType) 152 *p = x 153 return p 154} 155 156func (x VehicleMatch_VehicleMatchType) String() string { 157 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 158} 159 160func (VehicleMatch_VehicleMatchType) Descriptor() protoreflect.EnumDescriptor { 161 return file_google_maps_fleetengine_v1_vehicle_api_proto_enumTypes[1].Descriptor() 162} 163 164func (VehicleMatch_VehicleMatchType) Type() protoreflect.EnumType { 165 return &file_google_maps_fleetengine_v1_vehicle_api_proto_enumTypes[1] 166} 167 168func (x VehicleMatch_VehicleMatchType) Number() protoreflect.EnumNumber { 169 return protoreflect.EnumNumber(x) 170} 171 172// Deprecated: Use VehicleMatch_VehicleMatchType.Descriptor instead. 173func (VehicleMatch_VehicleMatchType) EnumDescriptor() ([]byte, []int) { 174 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{11, 0} 175} 176 177// CreateVehicle request message. 178type CreateVehicleRequest struct { 179 state protoimpl.MessageState 180 sizeCache protoimpl.SizeCache 181 unknownFields protoimpl.UnknownFields 182 183 // The standard Fleet Engine request header. 184 Header *RequestHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` 185 // Required. Must be in the format "providers/{provider}". 186 // The provider must be the Project ID (for example, sample-cloud-project) 187 // of the Google Cloud Project of which the service account making 188 // this call is a member. 189 Parent string `protobuf:"bytes,3,opt,name=parent,proto3" json:"parent,omitempty"` 190 // Required. Unique Vehicle ID; must be unique per provider. The actual 191 // format and value is opaque to the Fleet Engine and is determined 192 // by the provider. 193 VehicleId string `protobuf:"bytes,4,opt,name=vehicle_id,json=vehicleId,proto3" json:"vehicle_id,omitempty"` 194 // Required. The Vehicle entity to create. When creating a Vehicle, the following 195 // fields are required: 196 // 197 // * vehicle_state 198 // * supported_trip_types 199 // * maximum_capacity 200 // * vehicle_type 201 // 202 // When creating a Vehicle, the following fields are ignored: 203 // 204 // * name 205 // * current_trips 206 // * available_capacity 207 // * current_route_segment 208 // * current_route_segment_version 209 // * waypoints 210 // * waypoints_version 211 // * remaining_distance_meters 212 // * eta_to_next_waypoint 213 // * navigation_status 214 // 215 // All other fields will be used if provided. 216 Vehicle *Vehicle `protobuf:"bytes,5,opt,name=vehicle,proto3" json:"vehicle,omitempty"` 217} 218 219func (x *CreateVehicleRequest) Reset() { 220 *x = CreateVehicleRequest{} 221 if protoimpl.UnsafeEnabled { 222 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[0] 223 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 224 ms.StoreMessageInfo(mi) 225 } 226} 227 228func (x *CreateVehicleRequest) String() string { 229 return protoimpl.X.MessageStringOf(x) 230} 231 232func (*CreateVehicleRequest) ProtoMessage() {} 233 234func (x *CreateVehicleRequest) ProtoReflect() protoreflect.Message { 235 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[0] 236 if protoimpl.UnsafeEnabled && x != nil { 237 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 238 if ms.LoadMessageInfo() == nil { 239 ms.StoreMessageInfo(mi) 240 } 241 return ms 242 } 243 return mi.MessageOf(x) 244} 245 246// Deprecated: Use CreateVehicleRequest.ProtoReflect.Descriptor instead. 247func (*CreateVehicleRequest) Descriptor() ([]byte, []int) { 248 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{0} 249} 250 251func (x *CreateVehicleRequest) GetHeader() *RequestHeader { 252 if x != nil { 253 return x.Header 254 } 255 return nil 256} 257 258func (x *CreateVehicleRequest) GetParent() string { 259 if x != nil { 260 return x.Parent 261 } 262 return "" 263} 264 265func (x *CreateVehicleRequest) GetVehicleId() string { 266 if x != nil { 267 return x.VehicleId 268 } 269 return "" 270} 271 272func (x *CreateVehicleRequest) GetVehicle() *Vehicle { 273 if x != nil { 274 return x.Vehicle 275 } 276 return nil 277} 278 279// GetVehicle request message. 280type GetVehicleRequest struct { 281 state protoimpl.MessageState 282 sizeCache protoimpl.SizeCache 283 unknownFields protoimpl.UnknownFields 284 285 // The standard Fleet Engine request header. 286 Header *RequestHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` 287 // Required. Must be in the format 288 // "providers/{provider}/vehicles/{vehicle}". 289 // The provider must be the Project ID (for example, sample-cloud-project) 290 // of the Google Cloud Project of which the service account making 291 // this call is a member. 292 Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` 293 // Indicates the minimum timestamp (exclusive) for which 294 // vehicle.current_route_segment is retrieved. 295 // If route is unchanged since this timestamp, the current_route_segment 296 // field is not set in the response. If a minimum is unspecified, the 297 // current_route_segment is always retrieved. 298 CurrentRouteSegmentVersion *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=current_route_segment_version,json=currentRouteSegmentVersion,proto3" json:"current_route_segment_version,omitempty"` 299 // Indicates the minimum timestamp (exclusive) for which vehicle.waypoints 300 // data is retrieved. If data is unchanged since this timestamp, the 301 // vehicle.waypoints data is not set in the response. If this field is 302 // unspecified, vehicle.waypoints is always retrieved. 303 WaypointsVersion *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=waypoints_version,json=waypointsVersion,proto3" json:"waypoints_version,omitempty"` 304} 305 306func (x *GetVehicleRequest) Reset() { 307 *x = GetVehicleRequest{} 308 if protoimpl.UnsafeEnabled { 309 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[1] 310 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 311 ms.StoreMessageInfo(mi) 312 } 313} 314 315func (x *GetVehicleRequest) String() string { 316 return protoimpl.X.MessageStringOf(x) 317} 318 319func (*GetVehicleRequest) ProtoMessage() {} 320 321func (x *GetVehicleRequest) ProtoReflect() protoreflect.Message { 322 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[1] 323 if protoimpl.UnsafeEnabled && x != nil { 324 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 325 if ms.LoadMessageInfo() == nil { 326 ms.StoreMessageInfo(mi) 327 } 328 return ms 329 } 330 return mi.MessageOf(x) 331} 332 333// Deprecated: Use GetVehicleRequest.ProtoReflect.Descriptor instead. 334func (*GetVehicleRequest) Descriptor() ([]byte, []int) { 335 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{1} 336} 337 338func (x *GetVehicleRequest) GetHeader() *RequestHeader { 339 if x != nil { 340 return x.Header 341 } 342 return nil 343} 344 345func (x *GetVehicleRequest) GetName() string { 346 if x != nil { 347 return x.Name 348 } 349 return "" 350} 351 352func (x *GetVehicleRequest) GetCurrentRouteSegmentVersion() *timestamppb.Timestamp { 353 if x != nil { 354 return x.CurrentRouteSegmentVersion 355 } 356 return nil 357} 358 359func (x *GetVehicleRequest) GetWaypointsVersion() *timestamppb.Timestamp { 360 if x != nil { 361 return x.WaypointsVersion 362 } 363 return nil 364} 365 366// UpdateVehicle request message. 367type UpdateVehicleRequest struct { 368 state protoimpl.MessageState 369 sizeCache protoimpl.SizeCache 370 unknownFields protoimpl.UnknownFields 371 372 // The standard Fleet Engine request header. 373 Header *RequestHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` 374 // Required. Must be in the format 375 // "providers/{provider}/vehicles/{vehicle}". 376 // The {provider} must be the Project ID (for example, sample-cloud-project) 377 // of the Google Cloud Project of which the service account making 378 // this call is a member. 379 // 380 // Note that if the name is also specified in the name field of the 381 // vehicle and name is set in the update_mask, both names must be the 382 // same. Otherwise it is an Error. 383 Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` 384 // Required. The Vehicle entity update to apply. When updating a Vehicle, 385 // the following fields may not be updated as they are managed by the 386 // Fleet Engine. 387 // current_trips 388 // available_capacity 389 // current_route_segment_version 390 // waypoints_version 391 // Furthermore, the name of the vehicle cannot be updated. 392 Vehicle *Vehicle `protobuf:"bytes,4,opt,name=vehicle,proto3" json:"vehicle,omitempty"` 393 // Required. A field mask indicating which fields of the Vehicle to update. 394 // The update_mask must contain at least one field. 395 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,5,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 396} 397 398func (x *UpdateVehicleRequest) Reset() { 399 *x = UpdateVehicleRequest{} 400 if protoimpl.UnsafeEnabled { 401 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[2] 402 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 403 ms.StoreMessageInfo(mi) 404 } 405} 406 407func (x *UpdateVehicleRequest) String() string { 408 return protoimpl.X.MessageStringOf(x) 409} 410 411func (*UpdateVehicleRequest) ProtoMessage() {} 412 413func (x *UpdateVehicleRequest) ProtoReflect() protoreflect.Message { 414 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[2] 415 if protoimpl.UnsafeEnabled && x != nil { 416 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 417 if ms.LoadMessageInfo() == nil { 418 ms.StoreMessageInfo(mi) 419 } 420 return ms 421 } 422 return mi.MessageOf(x) 423} 424 425// Deprecated: Use UpdateVehicleRequest.ProtoReflect.Descriptor instead. 426func (*UpdateVehicleRequest) Descriptor() ([]byte, []int) { 427 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{2} 428} 429 430func (x *UpdateVehicleRequest) GetHeader() *RequestHeader { 431 if x != nil { 432 return x.Header 433 } 434 return nil 435} 436 437func (x *UpdateVehicleRequest) GetName() string { 438 if x != nil { 439 return x.Name 440 } 441 return "" 442} 443 444func (x *UpdateVehicleRequest) GetVehicle() *Vehicle { 445 if x != nil { 446 return x.Vehicle 447 } 448 return nil 449} 450 451func (x *UpdateVehicleRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 452 if x != nil { 453 return x.UpdateMask 454 } 455 return nil 456} 457 458// UpdateVehicleLocation request message. 459// 460// Deprecated: Do not use. 461type UpdateVehicleLocationRequest struct { 462 state protoimpl.MessageState 463 sizeCache protoimpl.SizeCache 464 unknownFields protoimpl.UnknownFields 465 466 // The standard Fleet Engine request header. 467 Header *RequestHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` 468 // Required. Must be in the format 469 // "providers/{provider}/vehicles/{vehicle}. 470 // The {provider} must be the Project ID (for example, sample-cloud-project) 471 // of the Google Cloud Project of which the service account making 472 // this call is a member. 473 Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` 474 // Required. The location to update to. The last_location and update_time 475 // subfields are required. 476 CurrentLocation *VehicleLocation `protobuf:"bytes,4,opt,name=current_location,json=currentLocation,proto3" json:"current_location,omitempty"` 477 // Set current vehicle state to either ONLINE or OFFLINE; 478 // if set to UNKNOWN_VEHICLE_STATE, vehicle state will not be altered. 479 CurrentState VehicleState `protobuf:"varint,5,opt,name=current_state,json=currentState,proto3,enum=maps.fleetengine.v1.VehicleState" json:"current_state,omitempty"` 480} 481 482func (x *UpdateVehicleLocationRequest) Reset() { 483 *x = UpdateVehicleLocationRequest{} 484 if protoimpl.UnsafeEnabled { 485 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[3] 486 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 487 ms.StoreMessageInfo(mi) 488 } 489} 490 491func (x *UpdateVehicleLocationRequest) String() string { 492 return protoimpl.X.MessageStringOf(x) 493} 494 495func (*UpdateVehicleLocationRequest) ProtoMessage() {} 496 497func (x *UpdateVehicleLocationRequest) ProtoReflect() protoreflect.Message { 498 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[3] 499 if protoimpl.UnsafeEnabled && x != nil { 500 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 501 if ms.LoadMessageInfo() == nil { 502 ms.StoreMessageInfo(mi) 503 } 504 return ms 505 } 506 return mi.MessageOf(x) 507} 508 509// Deprecated: Use UpdateVehicleLocationRequest.ProtoReflect.Descriptor instead. 510func (*UpdateVehicleLocationRequest) Descriptor() ([]byte, []int) { 511 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{3} 512} 513 514func (x *UpdateVehicleLocationRequest) GetHeader() *RequestHeader { 515 if x != nil { 516 return x.Header 517 } 518 return nil 519} 520 521func (x *UpdateVehicleLocationRequest) GetName() string { 522 if x != nil { 523 return x.Name 524 } 525 return "" 526} 527 528func (x *UpdateVehicleLocationRequest) GetCurrentLocation() *VehicleLocation { 529 if x != nil { 530 return x.CurrentLocation 531 } 532 return nil 533} 534 535func (x *UpdateVehicleLocationRequest) GetCurrentState() VehicleState { 536 if x != nil { 537 return x.CurrentState 538 } 539 return VehicleState_UNKNOWN_VEHICLE_STATE 540} 541 542// UpdateVehicleAttributes request message. 543type UpdateVehicleAttributesRequest struct { 544 state protoimpl.MessageState 545 sizeCache protoimpl.SizeCache 546 unknownFields protoimpl.UnknownFields 547 548 // The standard Fleet Engine request header. 549 Header *RequestHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` 550 // Required. Must be in the format 551 // "providers/{provider}/vehicles/{vehicle}. 552 // The provider must be the Project ID (for example, sample-cloud-project) 553 // of the Google Cloud Project of which the service account making 554 // this call is a member. 555 Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` 556 // Required. The attributes to update; 557 // unmentioned attributes will not be altered or removed. 558 // At most 20 attributes; the combined "key:value" string length cannot 559 // exceed 256. 560 Attributes []*VehicleAttribute `protobuf:"bytes,4,rep,name=attributes,proto3" json:"attributes,omitempty"` 561} 562 563func (x *UpdateVehicleAttributesRequest) Reset() { 564 *x = UpdateVehicleAttributesRequest{} 565 if protoimpl.UnsafeEnabled { 566 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[4] 567 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 568 ms.StoreMessageInfo(mi) 569 } 570} 571 572func (x *UpdateVehicleAttributesRequest) String() string { 573 return protoimpl.X.MessageStringOf(x) 574} 575 576func (*UpdateVehicleAttributesRequest) ProtoMessage() {} 577 578func (x *UpdateVehicleAttributesRequest) ProtoReflect() protoreflect.Message { 579 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[4] 580 if protoimpl.UnsafeEnabled && x != nil { 581 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 582 if ms.LoadMessageInfo() == nil { 583 ms.StoreMessageInfo(mi) 584 } 585 return ms 586 } 587 return mi.MessageOf(x) 588} 589 590// Deprecated: Use UpdateVehicleAttributesRequest.ProtoReflect.Descriptor instead. 591func (*UpdateVehicleAttributesRequest) Descriptor() ([]byte, []int) { 592 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{4} 593} 594 595func (x *UpdateVehicleAttributesRequest) GetHeader() *RequestHeader { 596 if x != nil { 597 return x.Header 598 } 599 return nil 600} 601 602func (x *UpdateVehicleAttributesRequest) GetName() string { 603 if x != nil { 604 return x.Name 605 } 606 return "" 607} 608 609func (x *UpdateVehicleAttributesRequest) GetAttributes() []*VehicleAttribute { 610 if x != nil { 611 return x.Attributes 612 } 613 return nil 614} 615 616// UpdateVehicleAttributes response message. 617type UpdateVehicleAttributesResponse struct { 618 state protoimpl.MessageState 619 sizeCache protoimpl.SizeCache 620 unknownFields protoimpl.UnknownFields 621 622 // Required. The updated full list of vehicle attributes, including new, 623 // altered and untouched attributes. 624 Attributes []*VehicleAttribute `protobuf:"bytes,1,rep,name=attributes,proto3" json:"attributes,omitempty"` 625} 626 627func (x *UpdateVehicleAttributesResponse) Reset() { 628 *x = UpdateVehicleAttributesResponse{} 629 if protoimpl.UnsafeEnabled { 630 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[5] 631 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 632 ms.StoreMessageInfo(mi) 633 } 634} 635 636func (x *UpdateVehicleAttributesResponse) String() string { 637 return protoimpl.X.MessageStringOf(x) 638} 639 640func (*UpdateVehicleAttributesResponse) ProtoMessage() {} 641 642func (x *UpdateVehicleAttributesResponse) ProtoReflect() protoreflect.Message { 643 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[5] 644 if protoimpl.UnsafeEnabled && x != nil { 645 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 646 if ms.LoadMessageInfo() == nil { 647 ms.StoreMessageInfo(mi) 648 } 649 return ms 650 } 651 return mi.MessageOf(x) 652} 653 654// Deprecated: Use UpdateVehicleAttributesResponse.ProtoReflect.Descriptor instead. 655func (*UpdateVehicleAttributesResponse) Descriptor() ([]byte, []int) { 656 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{5} 657} 658 659func (x *UpdateVehicleAttributesResponse) GetAttributes() []*VehicleAttribute { 660 if x != nil { 661 return x.Attributes 662 } 663 return nil 664} 665 666// SearchVehicles request message. 667type SearchVehiclesRequest struct { 668 state protoimpl.MessageState 669 sizeCache protoimpl.SizeCache 670 unknownFields protoimpl.UnknownFields 671 672 // The standard Fleet Engine request header. 673 Header *RequestHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` 674 // Required. Must be in the format "providers/{provider}". 675 // The provider must be the Project ID (for example, sample-cloud-project) 676 // of the Google Cloud Project of which the service account making 677 // this call is a member. 678 Parent string `protobuf:"bytes,3,opt,name=parent,proto3" json:"parent,omitempty"` 679 // Required. The pickup point to search near. 680 PickupPoint *TerminalLocation `protobuf:"bytes,4,opt,name=pickup_point,json=pickupPoint,proto3" json:"pickup_point,omitempty"` 681 // The customer's intended dropoff location. The field is required if 682 // trip_types contains TripType.SHARED. 683 DropoffPoint *TerminalLocation `protobuf:"bytes,5,opt,name=dropoff_point,json=dropoffPoint,proto3" json:"dropoff_point,omitempty"` 684 // Required. Defines the vehicle search radius around the pickup point. Only 685 // vehicles within the search radius will be returned. Value must be between 686 // 400 and 10000 meters. 687 PickupRadiusMeters int32 `protobuf:"varint,6,opt,name=pickup_radius_meters,json=pickupRadiusMeters,proto3" json:"pickup_radius_meters,omitempty"` 688 // Required. Specifies the maximum number of available vehicles to return. By 689 // default, the Fleet Engine limits the number to 50. 690 Count int32 `protobuf:"varint,7,opt,name=count,proto3" json:"count,omitempty"` 691 // Required. Specifies the minimum number of passengers allowed in the 692 // vehicle. Must number must be greater than or equal to one. The driver is 693 // not considered in the capacity search. This number indicates the number of 694 // passengers being considered for a trip. 695 MinimumCapacity int32 `protobuf:"varint,8,opt,name=minimum_capacity,json=minimumCapacity,proto3" json:"minimum_capacity,omitempty"` 696 // Required. Restricts the search to only those vehicles that support at least 697 // one of the specified trip types. 698 TripTypes []TripType `protobuf:"varint,9,rep,packed,name=trip_types,json=tripTypes,proto3,enum=maps.fleetengine.v1.TripType" json:"trip_types,omitempty"` 699 // Restricts the search to only those vehicles that have updated their 700 // locations within the specified duration back from now. If this field is not 701 // set, the server uses five minutes as the default value. 702 MaximumStaleness *durationpb.Duration `protobuf:"bytes,10,opt,name=maximum_staleness,json=maximumStaleness,proto3" json:"maximum_staleness,omitempty"` 703 // Required. Restricts the search to those vehicles with the specified types. 704 // At least one vehicle type must be specified. 705 VehicleTypes []*Vehicle_VehicleType `protobuf:"bytes,14,rep,name=vehicle_types,json=vehicleTypes,proto3" json:"vehicle_types,omitempty"` 706 // Callers can form complex logical operations using the 707 // requiredAttributes and requiredOneOfAttributes fields. 708 // 709 // requiredAttributes is a list; requiredOneOfAttributes uses a message which 710 // allows a list of lists. In combination, the two fields allow the 711 // composition of this expression: 712 // 713 // ``` 714 // (required_attribute[0] AND required_attribute[1] AND ...) 715 // AND 716 // (required_one_of_attribute[0][0] OR required_one_of_attribute[0][1] OR ...) 717 // AND 718 // (required_one_of_attribute[1][0] OR required_one_of_attribute[1][1] OR ...) 719 // ``` 720 // 721 // Restricts the search to only those vehicles with the specified attributes. 722 // This field is a conjunction/AND operation. Your app can specify up to 100 723 // attributes; however, the combined key:value string length cannot exceed 724 // 1024 characters. 725 RequiredAttributes []*VehicleAttribute `protobuf:"bytes,12,rep,name=required_attributes,json=requiredAttributes,proto3" json:"required_attributes,omitempty"` 726 // Restricts the search to only those vehicles with at least one of 727 // the specified attributes applied to each VehicleAttributeList. Within each 728 // list, a vehicle must match at least one of the attributes. This field is an 729 // inclusive disjunction/OR operation in each VehicleAttributeList and a 730 // conjunction/AND operation across the collection of VehicleAttributeList. 731 RequiredOneOfAttributes []*VehicleAttributeList `protobuf:"bytes,15,rep,name=required_one_of_attributes,json=requiredOneOfAttributes,proto3" json:"required_one_of_attributes,omitempty"` 732 // Restricts the search to only those vehicles with at least one set of the 733 // specified attributes in the VehicleAttributeList. Within each list, a 734 // vehicle must match all of the attributes. This field is a conjunction/AND 735 // operation in each VehicleAttributeList and inclusive disjunction/OR 736 // operation across the collection of VehicleAttributeList. 737 RequiredOneOfAttributeSets []*VehicleAttributeList `protobuf:"bytes,20,rep,name=required_one_of_attribute_sets,json=requiredOneOfAttributeSets,proto3" json:"required_one_of_attribute_sets,omitempty"` 738 // Required. Specifies ordering criterion for results. 739 OrderBy SearchVehiclesRequest_VehicleMatchOrder `protobuf:"varint,13,opt,name=order_by,json=orderBy,proto3,enum=maps.fleetengine.v1.SearchVehiclesRequest_VehicleMatchOrder" json:"order_by,omitempty"` 740 // Indicates if a vehicle with an active trip is eligible for 741 // another match. If `false`, a vehicle is excluded from search results. 742 // If `true`, search results include vehicles with `TripStatus` of 743 // `ENROUTE_TO_DROPOFF`. The services only use this field if 744 // the `SearchVehicles` request has `TripType` set to EXCLUSIVE. 745 // Default value is `false`. 746 IncludeBackToBack bool `protobuf:"varint,18,opt,name=include_back_to_back,json=includeBackToBack,proto3" json:"include_back_to_back,omitempty"` 747 // Indicates the ID of the trip the searchVehicleRequest is 748 // associated with. 749 TripId string `protobuf:"bytes,19,opt,name=trip_id,json=tripId,proto3" json:"trip_id,omitempty"` 750} 751 752func (x *SearchVehiclesRequest) Reset() { 753 *x = SearchVehiclesRequest{} 754 if protoimpl.UnsafeEnabled { 755 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[6] 756 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 757 ms.StoreMessageInfo(mi) 758 } 759} 760 761func (x *SearchVehiclesRequest) String() string { 762 return protoimpl.X.MessageStringOf(x) 763} 764 765func (*SearchVehiclesRequest) ProtoMessage() {} 766 767func (x *SearchVehiclesRequest) ProtoReflect() protoreflect.Message { 768 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[6] 769 if protoimpl.UnsafeEnabled && x != nil { 770 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 771 if ms.LoadMessageInfo() == nil { 772 ms.StoreMessageInfo(mi) 773 } 774 return ms 775 } 776 return mi.MessageOf(x) 777} 778 779// Deprecated: Use SearchVehiclesRequest.ProtoReflect.Descriptor instead. 780func (*SearchVehiclesRequest) Descriptor() ([]byte, []int) { 781 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{6} 782} 783 784func (x *SearchVehiclesRequest) GetHeader() *RequestHeader { 785 if x != nil { 786 return x.Header 787 } 788 return nil 789} 790 791func (x *SearchVehiclesRequest) GetParent() string { 792 if x != nil { 793 return x.Parent 794 } 795 return "" 796} 797 798func (x *SearchVehiclesRequest) GetPickupPoint() *TerminalLocation { 799 if x != nil { 800 return x.PickupPoint 801 } 802 return nil 803} 804 805func (x *SearchVehiclesRequest) GetDropoffPoint() *TerminalLocation { 806 if x != nil { 807 return x.DropoffPoint 808 } 809 return nil 810} 811 812func (x *SearchVehiclesRequest) GetPickupRadiusMeters() int32 { 813 if x != nil { 814 return x.PickupRadiusMeters 815 } 816 return 0 817} 818 819func (x *SearchVehiclesRequest) GetCount() int32 { 820 if x != nil { 821 return x.Count 822 } 823 return 0 824} 825 826func (x *SearchVehiclesRequest) GetMinimumCapacity() int32 { 827 if x != nil { 828 return x.MinimumCapacity 829 } 830 return 0 831} 832 833func (x *SearchVehiclesRequest) GetTripTypes() []TripType { 834 if x != nil { 835 return x.TripTypes 836 } 837 return nil 838} 839 840func (x *SearchVehiclesRequest) GetMaximumStaleness() *durationpb.Duration { 841 if x != nil { 842 return x.MaximumStaleness 843 } 844 return nil 845} 846 847func (x *SearchVehiclesRequest) GetVehicleTypes() []*Vehicle_VehicleType { 848 if x != nil { 849 return x.VehicleTypes 850 } 851 return nil 852} 853 854func (x *SearchVehiclesRequest) GetRequiredAttributes() []*VehicleAttribute { 855 if x != nil { 856 return x.RequiredAttributes 857 } 858 return nil 859} 860 861func (x *SearchVehiclesRequest) GetRequiredOneOfAttributes() []*VehicleAttributeList { 862 if x != nil { 863 return x.RequiredOneOfAttributes 864 } 865 return nil 866} 867 868func (x *SearchVehiclesRequest) GetRequiredOneOfAttributeSets() []*VehicleAttributeList { 869 if x != nil { 870 return x.RequiredOneOfAttributeSets 871 } 872 return nil 873} 874 875func (x *SearchVehiclesRequest) GetOrderBy() SearchVehiclesRequest_VehicleMatchOrder { 876 if x != nil { 877 return x.OrderBy 878 } 879 return SearchVehiclesRequest_UNKNOWN_VEHICLE_MATCH_ORDER 880} 881 882func (x *SearchVehiclesRequest) GetIncludeBackToBack() bool { 883 if x != nil { 884 return x.IncludeBackToBack 885 } 886 return false 887} 888 889func (x *SearchVehiclesRequest) GetTripId() string { 890 if x != nil { 891 return x.TripId 892 } 893 return "" 894} 895 896// SearchVehicles response message. 897type SearchVehiclesResponse struct { 898 state protoimpl.MessageState 899 sizeCache protoimpl.SizeCache 900 unknownFields protoimpl.UnknownFields 901 902 // List of vehicles that match the request options. 903 // 904 // Ordered by ascending vehicle_pickup_eta, with ties broken by ascending 905 // trip_type enum value, followed by matches that don't have 906 // vehicle_pickup_eta set. 907 // 908 // Example response: (Logically represented, not actual response fields): 909 // 910 // * (VehicleId: Vehicle1, ETA: 10 AM, TripType: SHARED), 911 // * (VehicleId: Vehicle2, ETA: 10 AM, TripType: EXCLUSIVE), 912 // * (VehicleId: Vehicle3, ETA: 11 AM, TripType: EXCLUSIVE), 913 // * (VehicleId: Vehicle4, ETA: Not set, TripType: SHARED), 914 // * (VehicleId: Vehicle5, ETA: Not set, TripType: EXCLUSIVE) 915 Matches []*VehicleMatch `protobuf:"bytes,1,rep,name=matches,proto3" json:"matches,omitempty"` 916} 917 918func (x *SearchVehiclesResponse) Reset() { 919 *x = SearchVehiclesResponse{} 920 if protoimpl.UnsafeEnabled { 921 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[7] 922 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 923 ms.StoreMessageInfo(mi) 924 } 925} 926 927func (x *SearchVehiclesResponse) String() string { 928 return protoimpl.X.MessageStringOf(x) 929} 930 931func (*SearchVehiclesResponse) ProtoMessage() {} 932 933func (x *SearchVehiclesResponse) ProtoReflect() protoreflect.Message { 934 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[7] 935 if protoimpl.UnsafeEnabled && x != nil { 936 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 937 if ms.LoadMessageInfo() == nil { 938 ms.StoreMessageInfo(mi) 939 } 940 return ms 941 } 942 return mi.MessageOf(x) 943} 944 945// Deprecated: Use SearchVehiclesResponse.ProtoReflect.Descriptor instead. 946func (*SearchVehiclesResponse) Descriptor() ([]byte, []int) { 947 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{7} 948} 949 950func (x *SearchVehiclesResponse) GetMatches() []*VehicleMatch { 951 if x != nil { 952 return x.Matches 953 } 954 return nil 955} 956 957// ListVehicles request message. 958type ListVehiclesRequest struct { 959 state protoimpl.MessageState 960 sizeCache protoimpl.SizeCache 961 unknownFields protoimpl.UnknownFields 962 963 // The standard Fleet Engine request header. 964 Header *RequestHeader `protobuf:"bytes,12,opt,name=header,proto3" json:"header,omitempty"` 965 // Required. Must be in the format "providers/{provider}". 966 // The provider must be the Project ID (for example, sample-cloud-project) 967 // of the Google Cloud Project of which the service account making 968 // this call is a member. 969 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 970 // The maximum number of vehicles to return. 971 // Default value: 100. 972 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 973 // The next_page_token value returned from a previous response, if any. 974 PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 975 // Specifies the required minimum capacity of the vehicle. 976 // The driver is not considered in the capacity search. 977 // This is just the number of passengers being considered for a trip. 978 // If set, must be greater or equal to 0. 979 MinimumCapacity *wrapperspb.Int32Value `protobuf:"bytes,6,opt,name=minimum_capacity,json=minimumCapacity,proto3" json:"minimum_capacity,omitempty"` 980 // Restrict the search to only those vehicles that support at least 981 // one of the specified trip types. 982 TripTypes []TripType `protobuf:"varint,7,rep,packed,name=trip_types,json=tripTypes,proto3,enum=maps.fleetengine.v1.TripType" json:"trip_types,omitempty"` 983 // Restrict the search to only those vehicles that have updated 984 // their locations within the specified duration back from now. 985 // If present, must be a valid positive duration. 986 MaximumStaleness *durationpb.Duration `protobuf:"bytes,8,opt,name=maximum_staleness,json=maximumStaleness,proto3" json:"maximum_staleness,omitempty"` 987 // Required. Restrict the search to those vehicles with the specified type categories. 988 VehicleTypeCategories []Vehicle_VehicleType_Category `protobuf:"varint,9,rep,packed,name=vehicle_type_categories,json=vehicleTypeCategories,proto3,enum=maps.fleetengine.v1.Vehicle_VehicleType_Category" json:"vehicle_type_categories,omitempty"` 989 // Callers can form complex logical operations using the 990 // requiredAttributes and requiredOneOfAttributes fields. 991 // 992 // requiredAttributes is a list; requiredOneOfAttributes uses a message which 993 // allows a list of lists. In combination, the two fields allow the 994 // composition of this expression: 995 // 996 // ``` 997 // (required_attribute[0] AND required_attribute[1] AND ...) 998 // AND 999 // (required_one_of_attribute[0][0] OR required_one_of_attribute[0][1] OR ...) 1000 // AND 1001 // (required_one_of_attribute[1][0] OR required_one_of_attribute[1][1] OR ...) 1002 // ``` 1003 // 1004 // Restrict the search to only those vehicles 1005 // with the specified attributes. This field is a conjunction/AND operation. 1006 // Your app can specify up to 100 attributes; however, the combined 1007 // key:value string length cannot exceed 1024 characters. 1008 RequiredAttributes []string `protobuf:"bytes,10,rep,name=required_attributes,json=requiredAttributes,proto3" json:"required_attributes,omitempty"` 1009 // Restrict the search to only those vehicles with at least one 1010 // of the specified attributes applied to each VehicleAttributeList. 1011 // Within each list, a vehicle must match at least one of the attributes. 1012 // This field is an inclusive disjunction/OR operation in each 1013 // VehicleAttributeList and a conjunction/AND operation across the collection 1014 // of VehicleAttributeList. 1015 // Format: key1:value1|key2:value2|key3:value3... 1016 RequiredOneOfAttributes []string `protobuf:"bytes,13,rep,name=required_one_of_attributes,json=requiredOneOfAttributes,proto3" json:"required_one_of_attributes,omitempty"` 1017 // Restrict the search to only those vehicles with at least one set of the 1018 // specified attributes in the VehicleAttributeList. Within each list, a 1019 // vehicle must match all of the attributes. This field is a conjunction/AND 1020 // operation in each VehicleAttributeList and inclusive disjunction/OR 1021 // operation across the collection of VehicleAttributeList. 1022 // Format: key1:value1|key2:value2|key3:value3... 1023 RequiredOneOfAttributeSets []string `protobuf:"bytes,15,rep,name=required_one_of_attribute_sets,json=requiredOneOfAttributeSets,proto3" json:"required_one_of_attribute_sets,omitempty"` 1024 // Restrict the search to only those vehicles that have this vehicle state. 1025 VehicleState VehicleState `protobuf:"varint,11,opt,name=vehicle_state,json=vehicleState,proto3,enum=maps.fleetengine.v1.VehicleState" json:"vehicle_state,omitempty"` 1026 // Only return the vehicles with current trip(s). 1027 OnTripOnly bool `protobuf:"varint,14,opt,name=on_trip_only,json=onTripOnly,proto3" json:"on_trip_only,omitempty"` 1028} 1029 1030func (x *ListVehiclesRequest) Reset() { 1031 *x = ListVehiclesRequest{} 1032 if protoimpl.UnsafeEnabled { 1033 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[8] 1034 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1035 ms.StoreMessageInfo(mi) 1036 } 1037} 1038 1039func (x *ListVehiclesRequest) String() string { 1040 return protoimpl.X.MessageStringOf(x) 1041} 1042 1043func (*ListVehiclesRequest) ProtoMessage() {} 1044 1045func (x *ListVehiclesRequest) ProtoReflect() protoreflect.Message { 1046 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[8] 1047 if protoimpl.UnsafeEnabled && x != nil { 1048 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1049 if ms.LoadMessageInfo() == nil { 1050 ms.StoreMessageInfo(mi) 1051 } 1052 return ms 1053 } 1054 return mi.MessageOf(x) 1055} 1056 1057// Deprecated: Use ListVehiclesRequest.ProtoReflect.Descriptor instead. 1058func (*ListVehiclesRequest) Descriptor() ([]byte, []int) { 1059 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{8} 1060} 1061 1062func (x *ListVehiclesRequest) GetHeader() *RequestHeader { 1063 if x != nil { 1064 return x.Header 1065 } 1066 return nil 1067} 1068 1069func (x *ListVehiclesRequest) GetParent() string { 1070 if x != nil { 1071 return x.Parent 1072 } 1073 return "" 1074} 1075 1076func (x *ListVehiclesRequest) GetPageSize() int32 { 1077 if x != nil { 1078 return x.PageSize 1079 } 1080 return 0 1081} 1082 1083func (x *ListVehiclesRequest) GetPageToken() string { 1084 if x != nil { 1085 return x.PageToken 1086 } 1087 return "" 1088} 1089 1090func (x *ListVehiclesRequest) GetMinimumCapacity() *wrapperspb.Int32Value { 1091 if x != nil { 1092 return x.MinimumCapacity 1093 } 1094 return nil 1095} 1096 1097func (x *ListVehiclesRequest) GetTripTypes() []TripType { 1098 if x != nil { 1099 return x.TripTypes 1100 } 1101 return nil 1102} 1103 1104func (x *ListVehiclesRequest) GetMaximumStaleness() *durationpb.Duration { 1105 if x != nil { 1106 return x.MaximumStaleness 1107 } 1108 return nil 1109} 1110 1111func (x *ListVehiclesRequest) GetVehicleTypeCategories() []Vehicle_VehicleType_Category { 1112 if x != nil { 1113 return x.VehicleTypeCategories 1114 } 1115 return nil 1116} 1117 1118func (x *ListVehiclesRequest) GetRequiredAttributes() []string { 1119 if x != nil { 1120 return x.RequiredAttributes 1121 } 1122 return nil 1123} 1124 1125func (x *ListVehiclesRequest) GetRequiredOneOfAttributes() []string { 1126 if x != nil { 1127 return x.RequiredOneOfAttributes 1128 } 1129 return nil 1130} 1131 1132func (x *ListVehiclesRequest) GetRequiredOneOfAttributeSets() []string { 1133 if x != nil { 1134 return x.RequiredOneOfAttributeSets 1135 } 1136 return nil 1137} 1138 1139func (x *ListVehiclesRequest) GetVehicleState() VehicleState { 1140 if x != nil { 1141 return x.VehicleState 1142 } 1143 return VehicleState_UNKNOWN_VEHICLE_STATE 1144} 1145 1146func (x *ListVehiclesRequest) GetOnTripOnly() bool { 1147 if x != nil { 1148 return x.OnTripOnly 1149 } 1150 return false 1151} 1152 1153// ListVehicles response message. 1154type ListVehiclesResponse struct { 1155 state protoimpl.MessageState 1156 sizeCache protoimpl.SizeCache 1157 unknownFields protoimpl.UnknownFields 1158 1159 // Depends on vehicles matching request criteria. 1160 // There will be a maximum number of vehicles returned based on the page_size 1161 // field in the request. 1162 Vehicles []*Vehicle `protobuf:"bytes,1,rep,name=vehicles,proto3" json:"vehicles,omitempty"` 1163 // Token to retrieve the next page of vehicles, or empty if there are no 1164 // more vehicles in the list. 1165 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 1166 // Required. Total number of vehicles matching request criteria across all pages. 1167 TotalSize int64 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 1168} 1169 1170func (x *ListVehiclesResponse) Reset() { 1171 *x = ListVehiclesResponse{} 1172 if protoimpl.UnsafeEnabled { 1173 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[9] 1174 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1175 ms.StoreMessageInfo(mi) 1176 } 1177} 1178 1179func (x *ListVehiclesResponse) String() string { 1180 return protoimpl.X.MessageStringOf(x) 1181} 1182 1183func (*ListVehiclesResponse) ProtoMessage() {} 1184 1185func (x *ListVehiclesResponse) ProtoReflect() protoreflect.Message { 1186 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[9] 1187 if protoimpl.UnsafeEnabled && x != nil { 1188 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1189 if ms.LoadMessageInfo() == nil { 1190 ms.StoreMessageInfo(mi) 1191 } 1192 return ms 1193 } 1194 return mi.MessageOf(x) 1195} 1196 1197// Deprecated: Use ListVehiclesResponse.ProtoReflect.Descriptor instead. 1198func (*ListVehiclesResponse) Descriptor() ([]byte, []int) { 1199 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{9} 1200} 1201 1202func (x *ListVehiclesResponse) GetVehicles() []*Vehicle { 1203 if x != nil { 1204 return x.Vehicles 1205 } 1206 return nil 1207} 1208 1209func (x *ListVehiclesResponse) GetNextPageToken() string { 1210 if x != nil { 1211 return x.NextPageToken 1212 } 1213 return "" 1214} 1215 1216func (x *ListVehiclesResponse) GetTotalSize() int64 { 1217 if x != nil { 1218 return x.TotalSize 1219 } 1220 return 0 1221} 1222 1223// Waypoint describes intermediate points along a route. 1224type Waypoint struct { 1225 state protoimpl.MessageState 1226 sizeCache protoimpl.SizeCache 1227 unknownFields protoimpl.UnknownFields 1228 1229 // The location of this waypoint. 1230 LatLng *latlng.LatLng `protobuf:"bytes,1,opt,name=lat_lng,json=latLng,proto3" json:"lat_lng,omitempty"` 1231 // The estimated time that the vehicle will arrive at this waypoint. 1232 Eta *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=eta,proto3" json:"eta,omitempty"` 1233} 1234 1235func (x *Waypoint) Reset() { 1236 *x = Waypoint{} 1237 if protoimpl.UnsafeEnabled { 1238 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[10] 1239 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1240 ms.StoreMessageInfo(mi) 1241 } 1242} 1243 1244func (x *Waypoint) String() string { 1245 return protoimpl.X.MessageStringOf(x) 1246} 1247 1248func (*Waypoint) ProtoMessage() {} 1249 1250func (x *Waypoint) ProtoReflect() protoreflect.Message { 1251 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[10] 1252 if protoimpl.UnsafeEnabled && x != nil { 1253 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1254 if ms.LoadMessageInfo() == nil { 1255 ms.StoreMessageInfo(mi) 1256 } 1257 return ms 1258 } 1259 return mi.MessageOf(x) 1260} 1261 1262// Deprecated: Use Waypoint.ProtoReflect.Descriptor instead. 1263func (*Waypoint) Descriptor() ([]byte, []int) { 1264 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{10} 1265} 1266 1267func (x *Waypoint) GetLatLng() *latlng.LatLng { 1268 if x != nil { 1269 return x.LatLng 1270 } 1271 return nil 1272} 1273 1274func (x *Waypoint) GetEta() *timestamppb.Timestamp { 1275 if x != nil { 1276 return x.Eta 1277 } 1278 return nil 1279} 1280 1281// VehicleMatch contains the vehicle, ETA, and distance calculations for a 1282// vehicle that matches the SearchVehiclesRequest. 1283type VehicleMatch struct { 1284 state protoimpl.MessageState 1285 sizeCache protoimpl.SizeCache 1286 unknownFields protoimpl.UnknownFields 1287 1288 // Required. A vehicle that matches the request. 1289 Vehicle *Vehicle `protobuf:"bytes,1,opt,name=vehicle,proto3" json:"vehicle,omitempty"` 1290 // The vehicle's driving ETA to the pickup point specified in the 1291 // request. An empty value indicates a failure in calculating ETA for the 1292 // vehicle. 1293 VehiclePickupEta *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=vehicle_pickup_eta,json=vehiclePickupEta,proto3" json:"vehicle_pickup_eta,omitempty"` 1294 // The vehicle's driving distance to the pickup point specified in 1295 // the request, including any intermediate pickup or dropoff points for 1296 // an existing ride. An empty value indicates a failure in calculating 1297 // distance for the vehicle. 1298 VehiclePickupDistanceMeters *wrapperspb.Int32Value `protobuf:"bytes,3,opt,name=vehicle_pickup_distance_meters,json=vehiclePickupDistanceMeters,proto3" json:"vehicle_pickup_distance_meters,omitempty"` 1299 // Required. The straight-line distance between the vehicle and the pickup 1300 // point specified in the request, including intermediate waypoints for 1301 // existing trips. 1302 VehiclePickupStraightLineDistanceMeters *wrapperspb.Int32Value `protobuf:"bytes,11,opt,name=vehicle_pickup_straight_line_distance_meters,json=vehiclePickupStraightLineDistanceMeters,proto3" json:"vehicle_pickup_straight_line_distance_meters,omitempty"` 1303 // The complete vehicle's driving ETA to the drop off point 1304 // specified in the request. The ETA includes any required visits for active 1305 // trips that must be completed before the vehicle visits the dropoff_point 1306 // specified in the request. The value will only be populated when a 1307 // dropoff_point is specified in the request. An empty value indicates 1308 // a failure in calculating the ETA for the vehicle to reach 1309 // the dropoff_point. 1310 VehicleDropoffEta *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=vehicle_dropoff_eta,json=vehicleDropoffEta,proto3" json:"vehicle_dropoff_eta,omitempty"` 1311 // The vehicle's driving distance (in meters) from the pickup point 1312 // to the drop off point specified in the request. The distance is only 1313 // between the two points and does not include the vehicle location or any 1314 // other points that must be visited before the vehicle visits either the 1315 // pickup point or dropoff point. The value will only be populated when a 1316 // dropoff_point is specified in the request. An empty value indicates 1317 // a failure in calculating the distance from the pickup to 1318 // dropoff points specified in the request. 1319 VehiclePickupToDropoffDistanceMeters *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=vehicle_pickup_to_dropoff_distance_meters,json=vehiclePickupToDropoffDistanceMeters,proto3" json:"vehicle_pickup_to_dropoff_distance_meters,omitempty"` 1320 // Required. The trip type of the request that was used to calculate the ETA 1321 // to the pickup point. 1322 TripType TripType `protobuf:"varint,6,opt,name=trip_type,json=tripType,proto3,enum=maps.fleetengine.v1.TripType" json:"trip_type,omitempty"` 1323 // The ordered list of waypoints used to calculate the ETA. The list 1324 // will include the vehicle location, the pickup/drop off points of active 1325 // trips for the vehicle and the pickup/dropoff points provided in the 1326 // request. An empty list indicates a failure in calculating ETA for the 1327 // vehicle. 1328 VehicleTripsWaypoints []*Waypoint `protobuf:"bytes,7,rep,name=vehicle_trips_waypoints,json=vehicleTripsWaypoints,proto3" json:"vehicle_trips_waypoints,omitempty"` 1329 // Type of the vehicle match. 1330 VehicleMatchType VehicleMatch_VehicleMatchType `protobuf:"varint,8,opt,name=vehicle_match_type,json=vehicleMatchType,proto3,enum=maps.fleetengine.v1.VehicleMatch_VehicleMatchType" json:"vehicle_match_type,omitempty"` 1331 // The method the caller requested for sorting vehicle matches. 1332 RequestedOrderedBy SearchVehiclesRequest_VehicleMatchOrder `protobuf:"varint,9,opt,name=requested_ordered_by,json=requestedOrderedBy,proto3,enum=maps.fleetengine.v1.SearchVehiclesRequest_VehicleMatchOrder" json:"requested_ordered_by,omitempty"` 1333 // The actual method that is used to order this vehicle. In normal cases this 1334 // will match the 'order_by' field from the request, however in certain 1335 // circumstances such as a failure of google maps backends, a different method 1336 // may be used (such as PICKUP_POINT_STRAIGHT_DISTANCE). 1337 OrderedBy SearchVehiclesRequest_VehicleMatchOrder `protobuf:"varint,10,opt,name=ordered_by,json=orderedBy,proto3,enum=maps.fleetengine.v1.SearchVehiclesRequest_VehicleMatchOrder" json:"ordered_by,omitempty"` 1338} 1339 1340func (x *VehicleMatch) Reset() { 1341 *x = VehicleMatch{} 1342 if protoimpl.UnsafeEnabled { 1343 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[11] 1344 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1345 ms.StoreMessageInfo(mi) 1346 } 1347} 1348 1349func (x *VehicleMatch) String() string { 1350 return protoimpl.X.MessageStringOf(x) 1351} 1352 1353func (*VehicleMatch) ProtoMessage() {} 1354 1355func (x *VehicleMatch) ProtoReflect() protoreflect.Message { 1356 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[11] 1357 if protoimpl.UnsafeEnabled && x != nil { 1358 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1359 if ms.LoadMessageInfo() == nil { 1360 ms.StoreMessageInfo(mi) 1361 } 1362 return ms 1363 } 1364 return mi.MessageOf(x) 1365} 1366 1367// Deprecated: Use VehicleMatch.ProtoReflect.Descriptor instead. 1368func (*VehicleMatch) Descriptor() ([]byte, []int) { 1369 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{11} 1370} 1371 1372func (x *VehicleMatch) GetVehicle() *Vehicle { 1373 if x != nil { 1374 return x.Vehicle 1375 } 1376 return nil 1377} 1378 1379func (x *VehicleMatch) GetVehiclePickupEta() *timestamppb.Timestamp { 1380 if x != nil { 1381 return x.VehiclePickupEta 1382 } 1383 return nil 1384} 1385 1386func (x *VehicleMatch) GetVehiclePickupDistanceMeters() *wrapperspb.Int32Value { 1387 if x != nil { 1388 return x.VehiclePickupDistanceMeters 1389 } 1390 return nil 1391} 1392 1393func (x *VehicleMatch) GetVehiclePickupStraightLineDistanceMeters() *wrapperspb.Int32Value { 1394 if x != nil { 1395 return x.VehiclePickupStraightLineDistanceMeters 1396 } 1397 return nil 1398} 1399 1400func (x *VehicleMatch) GetVehicleDropoffEta() *timestamppb.Timestamp { 1401 if x != nil { 1402 return x.VehicleDropoffEta 1403 } 1404 return nil 1405} 1406 1407func (x *VehicleMatch) GetVehiclePickupToDropoffDistanceMeters() *wrapperspb.Int32Value { 1408 if x != nil { 1409 return x.VehiclePickupToDropoffDistanceMeters 1410 } 1411 return nil 1412} 1413 1414func (x *VehicleMatch) GetTripType() TripType { 1415 if x != nil { 1416 return x.TripType 1417 } 1418 return TripType_UNKNOWN_TRIP_TYPE 1419} 1420 1421func (x *VehicleMatch) GetVehicleTripsWaypoints() []*Waypoint { 1422 if x != nil { 1423 return x.VehicleTripsWaypoints 1424 } 1425 return nil 1426} 1427 1428func (x *VehicleMatch) GetVehicleMatchType() VehicleMatch_VehicleMatchType { 1429 if x != nil { 1430 return x.VehicleMatchType 1431 } 1432 return VehicleMatch_UNKNOWN 1433} 1434 1435func (x *VehicleMatch) GetRequestedOrderedBy() SearchVehiclesRequest_VehicleMatchOrder { 1436 if x != nil { 1437 return x.RequestedOrderedBy 1438 } 1439 return SearchVehiclesRequest_UNKNOWN_VEHICLE_MATCH_ORDER 1440} 1441 1442func (x *VehicleMatch) GetOrderedBy() SearchVehiclesRequest_VehicleMatchOrder { 1443 if x != nil { 1444 return x.OrderedBy 1445 } 1446 return SearchVehiclesRequest_UNKNOWN_VEHICLE_MATCH_ORDER 1447} 1448 1449// This messages allows a list-of-list datatype for VehicleAttribute. 1450type VehicleAttributeList struct { 1451 state protoimpl.MessageState 1452 sizeCache protoimpl.SizeCache 1453 unknownFields protoimpl.UnknownFields 1454 1455 // A list of attributes in this collection. 1456 Attributes []*VehicleAttribute `protobuf:"bytes,1,rep,name=attributes,proto3" json:"attributes,omitempty"` 1457} 1458 1459func (x *VehicleAttributeList) Reset() { 1460 *x = VehicleAttributeList{} 1461 if protoimpl.UnsafeEnabled { 1462 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[12] 1463 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1464 ms.StoreMessageInfo(mi) 1465 } 1466} 1467 1468func (x *VehicleAttributeList) String() string { 1469 return protoimpl.X.MessageStringOf(x) 1470} 1471 1472func (*VehicleAttributeList) ProtoMessage() {} 1473 1474func (x *VehicleAttributeList) ProtoReflect() protoreflect.Message { 1475 mi := &file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[12] 1476 if protoimpl.UnsafeEnabled && x != nil { 1477 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1478 if ms.LoadMessageInfo() == nil { 1479 ms.StoreMessageInfo(mi) 1480 } 1481 return ms 1482 } 1483 return mi.MessageOf(x) 1484} 1485 1486// Deprecated: Use VehicleAttributeList.ProtoReflect.Descriptor instead. 1487func (*VehicleAttributeList) Descriptor() ([]byte, []int) { 1488 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP(), []int{12} 1489} 1490 1491func (x *VehicleAttributeList) GetAttributes() []*VehicleAttribute { 1492 if x != nil { 1493 return x.Attributes 1494 } 1495 return nil 1496} 1497 1498var File_google_maps_fleetengine_v1_vehicle_api_proto protoreflect.FileDescriptor 1499 1500var file_google_maps_fleetengine_v1_vehicle_api_proto_rawDesc = []byte{ 1501 0x0a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 1502 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x65, 0x68, 1503 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 1504 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 1505 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 1506 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1507 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 1508 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 1509 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 1510 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2c, 0x67, 1511 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 1512 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 1513 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x27, 0x67, 0x6f, 0x6f, 1514 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 1515 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x2e, 0x70, 1516 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 1517 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 1518 0x2f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 1519 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 1520 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 1521 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 1522 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1523 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 1524 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 1525 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1526 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 1527 0x74, 0x6f, 0x1a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 1528 0x6c, 0x61, 0x74, 0x6c, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 1529 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 1530 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd0, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 1531 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 1532 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 1533 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 1534 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 1535 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 1536 0x72, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 1537 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x76, 0x65, 0x68, 0x69, 0x63, 1538 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 1539 0x52, 0x09, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x07, 0x76, 1540 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6d, 1541 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 1542 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 1543 0x07, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x22, 0xb7, 0x02, 0x0a, 0x11, 0x47, 0x65, 0x74, 1544 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 1545 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 1546 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 1547 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 1548 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x04, 0x6e, 0x61, 1549 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 1550 0x0a, 0x22, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x67, 0x6f, 1551 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x56, 0x65, 0x68, 1552 0x69, 0x63, 0x6c, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x5d, 0x0a, 0x1d, 0x63, 0x75, 1553 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x67, 0x6d, 1554 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 1555 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1556 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x1a, 0x63, 1557 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 1558 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x47, 0x0a, 0x11, 0x77, 0x61, 0x79, 1559 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 1560 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 1561 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 1562 0x52, 0x10, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 1563 0x6f, 0x6e, 0x22, 0xea, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 1564 0x69, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x06, 0x68, 1565 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x61, 1566 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 1567 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 1568 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 1569 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 1570 0x12, 0x3b, 0x0a, 0x07, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 1571 0x0b, 0x32, 0x1c, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 1572 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x42, 1573 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x12, 0x40, 0x0a, 1574 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 1575 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1576 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 1577 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 1578 0x95, 0x02, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1579 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 1580 0x12, 0x3a, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 1581 0x32, 0x22, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 1582 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 1583 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x04, 1584 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 1585 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x54, 0x0a, 0x10, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 1586 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 1587 0x24, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 1588 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 1589 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 1590 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x0d, 0x63, 1591 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 1592 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 1593 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 1594 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x74, 1595 0x61, 0x74, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xc1, 0x01, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61, 1596 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 1597 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x06, 0x68, 0x65, 1598 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x61, 0x70, 1599 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 1600 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 1601 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 1602 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 1603 0x4a, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 1604 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 1605 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1606 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 1607 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x1f, 0x55, 1608 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 1609 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 1610 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 1611 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 1612 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 1613 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 1614 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x22, 0xf0, 0x09, 0x0a, 0x15, 0x53, 1615 0x65, 0x61, 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 1616 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 1617 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 1618 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 1619 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 1620 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 1621 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 1622 0x0c, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 1623 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 1624 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 1625 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 1626 0x0b, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x0d, 1627 0x64, 0x72, 0x6f, 0x70, 0x6f, 0x66, 0x66, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 1628 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 1629 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 1630 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x64, 0x72, 0x6f, 0x70, 1631 0x6f, 0x66, 0x66, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x35, 0x0a, 0x14, 0x70, 0x69, 0x63, 0x6b, 1632 0x75, 0x70, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 1633 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x12, 0x70, 0x69, 0x63, 1634 0x6b, 0x75, 0x70, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 1635 0x19, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 1636 0xe0, 0x41, 0x02, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x10, 0x6d, 0x69, 1637 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x08, 1638 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 1639 0x75, 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x41, 0x0a, 0x0a, 0x74, 0x72, 1640 0x69, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x1d, 1641 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 1642 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 1643 0x41, 0x02, 0x52, 0x09, 0x74, 0x72, 0x69, 0x70, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x46, 0x0a, 1644 0x11, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x65, 1645 0x73, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1646 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 1647 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x6c, 1648 0x65, 0x6e, 0x65, 0x73, 0x73, 0x12, 0x52, 0x0a, 0x0d, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 1649 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 1650 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 1651 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 1652 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x76, 0x65, 0x68, 1653 0x69, 0x63, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x56, 0x0a, 0x13, 0x72, 0x65, 0x71, 1654 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 1655 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 1656 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 1657 0x69, 0x63, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x12, 0x72, 1658 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 1659 0x73, 0x12, 0x66, 0x0a, 0x1a, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x6f, 0x6e, 1660 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 1661 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 1662 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 1663 0x63, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 1664 0x52, 0x17, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x4f, 0x6e, 0x65, 0x4f, 0x66, 0x41, 1665 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x6d, 0x0a, 0x1e, 0x72, 0x65, 0x71, 1666 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x6f, 0x6e, 0x65, 0x5f, 0x6f, 0x66, 0x5f, 0x61, 0x74, 0x74, 1667 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 1668 0x0b, 0x32, 0x29, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 1669 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x41, 1670 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x1a, 0x72, 0x65, 1671 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x4f, 0x6e, 0x65, 0x4f, 0x66, 0x41, 0x74, 0x74, 0x72, 0x69, 1672 0x62, 0x75, 0x74, 0x65, 0x53, 0x65, 0x74, 0x73, 0x12, 0x5c, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 1673 0x72, 0x5f, 0x62, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x6d, 0x61, 0x70, 1674 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 1675 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 1676 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 1677 0x74, 0x63, 0x68, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x6f, 1678 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x2f, 0x0a, 0x14, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 1679 0x65, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x12, 1680 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x42, 0x61, 0x63, 1681 0x6b, 0x54, 0x6f, 0x42, 0x61, 0x63, 0x6b, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x72, 0x69, 0x70, 0x5f, 1682 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x72, 0x69, 0x70, 0x49, 0x64, 1683 0x22, 0xaa, 0x01, 0x0a, 0x11, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x74, 0x63, 1684 0x68, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x1b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 1685 0x4e, 0x5f, 0x56, 0x45, 0x48, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 1686 0x4f, 0x52, 0x44, 0x45, 0x52, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x49, 0x43, 0x4b, 0x55, 1687 0x50, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x45, 0x54, 0x41, 0x10, 0x01, 0x12, 0x19, 0x0a, 1688 0x15, 0x50, 0x49, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x44, 0x49, 1689 0x53, 0x54, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x52, 0x4f, 0x50, 1690 0x4f, 0x46, 0x46, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x45, 0x54, 0x41, 0x10, 0x03, 0x12, 1691 0x22, 0x0a, 0x1e, 0x50, 0x49, 0x43, 0x4b, 0x55, 0x50, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 1692 0x53, 0x54, 0x52, 0x41, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x54, 0x41, 0x4e, 0x43, 1693 0x45, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x4f, 0x53, 0x54, 0x10, 0x05, 0x22, 0x55, 0x0a, 1694 0x16, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 1695 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 1696 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 1697 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 1698 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x07, 0x6d, 0x61, 0x74, 1699 0x63, 0x68, 0x65, 0x73, 0x22, 0x84, 0x06, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x65, 0x68, 1700 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x06, 1701 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 1702 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 1703 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 1704 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 1705 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x70, 1706 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 1707 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 1708 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 1709 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 1710 0x6e, 0x12, 0x46, 0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x63, 0x61, 0x70, 1711 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 1712 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 1713 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 1714 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x3c, 0x0a, 0x0a, 0x74, 0x72, 0x69, 1715 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 1716 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 1717 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x74, 0x72, 1718 0x69, 0x70, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x69, 0x6d, 1719 0x75, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 1720 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1721 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6d, 1722 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x53, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x65, 0x73, 0x73, 0x12, 1723 0x6e, 0x0a, 0x17, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 1724 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0e, 1725 0x32, 0x31, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 1726 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x2e, 0x56, 1727 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 1728 0x6f, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 1729 0x65, 0x54, 0x79, 0x70, 0x65, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 1730 0x2f, 0x0a, 0x13, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x74, 0x72, 1731 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x72, 0x65, 1732 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 1733 0x12, 0x3b, 0x0a, 0x1a, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x6f, 0x6e, 0x65, 1734 0x5f, 0x6f, 0x66, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0d, 1735 0x20, 0x03, 0x28, 0x09, 0x52, 0x17, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x4f, 0x6e, 1736 0x65, 0x4f, 0x66, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x42, 0x0a, 1737 0x1e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x6f, 0x6e, 0x65, 0x5f, 0x6f, 0x66, 1738 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18, 1739 0x0f, 0x20, 0x03, 0x28, 0x09, 0x52, 0x1a, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x4f, 1740 0x6e, 0x65, 0x4f, 0x66, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x53, 0x65, 0x74, 1741 0x73, 0x12, 0x46, 0x0a, 0x0d, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 1742 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 1743 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 1744 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x76, 0x65, 0x68, 1745 0x69, 0x63, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x6f, 0x6e, 0x5f, 1746 0x74, 0x72, 0x69, 0x70, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 1747 0x0a, 0x6f, 0x6e, 0x54, 0x72, 0x69, 0x70, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x9c, 0x01, 0x0a, 0x14, 1748 0x4c, 0x69, 0x73, 0x74, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 1749 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 1750 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 1751 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 1752 0x69, 0x63, 0x6c, 0x65, 0x52, 0x08, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x26, 1753 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 1754 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 1755 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x22, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 1756 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 1757 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x66, 0x0a, 0x08, 0x57, 0x61, 1758 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x6c, 0x61, 0x74, 0x5f, 0x6c, 0x6e, 1759 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1760 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x4c, 0x61, 0x74, 0x4c, 0x6e, 0x67, 0x52, 0x06, 0x6c, 0x61, 1761 0x74, 0x4c, 0x6e, 0x67, 0x12, 0x2c, 0x0a, 0x03, 0x65, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 1762 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1763 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x03, 0x65, 1764 0x74, 0x61, 0x22, 0xea, 0x08, 0x0a, 0x0c, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 1765 0x74, 0x63, 0x68, 0x12, 0x3b, 0x0a, 0x07, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x18, 0x01, 1766 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 1767 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 1768 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 1769 0x12, 0x48, 0x0a, 0x12, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x70, 0x69, 0x63, 0x6b, 1770 0x75, 0x70, 0x5f, 0x65, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 1771 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 1772 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x10, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 1773 0x65, 0x50, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x45, 0x74, 0x61, 0x12, 0x60, 0x0a, 0x1e, 0x76, 0x65, 1774 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x64, 0x69, 0x73, 1775 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 1776 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1777 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 1778 0x1b, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x50, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x44, 0x69, 1779 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x7f, 0x0a, 0x2c, 1780 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x73, 1781 0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x64, 0x69, 0x73, 1782 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0b, 0x20, 0x01, 1783 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1784 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 1785 0x03, 0xe0, 0x41, 0x02, 0x52, 0x27, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x50, 0x69, 0x63, 1786 0x6b, 0x75, 0x70, 0x53, 0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x44, 1787 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x4a, 0x0a, 1788 0x13, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x6f, 0x66, 0x66, 1789 0x5f, 0x65, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 1790 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 1791 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x11, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x44, 1792 0x72, 0x6f, 0x70, 0x6f, 0x66, 0x66, 0x45, 0x74, 0x61, 0x12, 0x74, 0x0a, 0x29, 0x76, 0x65, 0x68, 1793 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 1794 0x72, 0x6f, 0x70, 0x6f, 0x66, 0x66, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 1795 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 1796 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 1797 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x24, 0x76, 0x65, 0x68, 0x69, 0x63, 1798 0x6c, 0x65, 0x50, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x54, 0x6f, 0x44, 0x72, 0x6f, 0x70, 0x6f, 0x66, 1799 0x66, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 1800 0x3f, 0x0a, 0x09, 0x74, 0x72, 0x69, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 1801 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 1802 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x54, 0x79, 0x70, 1803 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x74, 0x72, 0x69, 0x70, 0x54, 0x79, 0x70, 0x65, 1804 0x12, 0x55, 0x0a, 0x17, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x74, 0x72, 0x69, 0x70, 1805 0x73, 0x5f, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 1806 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 1807 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 1808 0x52, 0x15, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x72, 0x69, 0x70, 0x73, 0x57, 0x61, 1809 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x60, 0x0a, 0x12, 0x76, 0x65, 0x68, 0x69, 0x63, 1810 0x6c, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 1811 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 1812 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1813 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 1814 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x10, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 1815 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x6e, 0x0a, 0x14, 0x72, 0x65, 0x71, 1816 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x62, 1817 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 1818 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 1819 0x61, 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 1820 0x65, 0x73, 0x74, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 1821 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 1822 0x4f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64, 0x42, 0x79, 0x12, 0x5b, 0x0a, 0x0a, 0x6f, 0x72, 0x64, 1823 0x65, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 1824 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 1825 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1826 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1827 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x09, 0x6f, 0x72, 0x64, 1828 0x65, 0x72, 0x65, 0x64, 0x42, 0x79, 0x22, 0x67, 0x0a, 0x10, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1829 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 1830 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x58, 0x43, 0x4c, 0x55, 1831 0x53, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x54, 1832 0x4f, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x41, 0x52, 0x50, 1833 0x4f, 0x4f, 0x4c, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x41, 0x52, 0x50, 0x4f, 0x4f, 0x4c, 1834 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x54, 0x4f, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x04, 0x22, 1835 0x5d, 0x0a, 0x14, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 1836 0x75, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 1837 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 1838 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 1839 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 1840 0x74, 0x65, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x32, 0xa4, 1841 0x0a, 0x0a, 0x0e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 1842 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 1843 0x63, 0x6c, 0x65, 0x12, 0x29, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 1844 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 1845 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 1846 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 1847 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x22, 0x32, 0x82, 0xd3, 1848 0xe4, 0x93, 0x02, 0x2c, 0x22, 0x21, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 1849 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x76, 1850 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x07, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 1851 0x12, 0x7d, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x12, 0x26, 1852 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 1853 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x52, 1854 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 1855 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 1856 0x69, 0x63, 0x6c, 0x65, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x76, 1857 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 1858 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 1859 0x8c, 0x01, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1860 0x65, 0x12, 0x29, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 1861 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 1862 0x68, 0x69, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6d, 1863 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 1864 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 1865 0x02, 0x2c, 0x1a, 0x21, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 1866 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 1867 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x07, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x12, 0xb0, 1868 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 1869 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 1870 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 1871 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 1872 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6d, 0x61, 1873 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 1874 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 1875 0x6e, 0x22, 0x3e, 0x88, 0x02, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x35, 0x1a, 0x30, 0x2f, 0x76, 1876 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 1877 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 1878 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 1879 0x2a, 0x12, 0xc3, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 1880 0x63, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x33, 0x2e, 1881 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 1882 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1883 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 1884 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 1885 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 1886 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 1887 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 1888 0x22, 0x32, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x76, 1889 0x69, 0x64, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 1890 0x2f, 0x2a, 0x7d, 0x3a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 1891 0x75, 0x74, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0x8e, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 1892 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x28, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 1893 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 1894 0x69, 0x73, 0x74, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 1895 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 1896 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x65, 0x68, 1897 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x29, 0x82, 1898 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 1899 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 1900 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x9e, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x61, 1901 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x2a, 0x2e, 0x6d, 0x61, 1902 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 1903 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 1904 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 1905 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 1906 0x61, 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 1907 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x33, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x22, 0x28, 0x2f, 0x76, 1908 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 1909 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x3a, 1910 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x3a, 0x01, 0x2a, 0x12, 0xaa, 0x01, 0x0a, 0x14, 0x53, 0x65, 1911 0x61, 0x72, 0x63, 0x68, 0x46, 0x75, 0x7a, 0x7a, 0x65, 0x64, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 1912 0x65, 0x73, 0x12, 0x2a, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 1913 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x56, 1914 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 1915 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 1916 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x56, 0x65, 0x68, 0x69, 0x63, 1917 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x39, 0x82, 0xd3, 0xe4, 1918 0x93, 0x02, 0x33, 0x22, 0x2e, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 1919 0x3d, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x76, 0x65, 1920 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x75, 0x7a, 1921 0x7a, 0x65, 0x64, 0x3a, 0x01, 0x2a, 0x1a, 0x1d, 0xca, 0x41, 0x1a, 0x66, 0x6c, 0x65, 0x65, 0x74, 1922 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 1923 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x42, 0x77, 0x0a, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1924 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 1925 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x70, 0x69, 0x50, 1926 0x01, 0x5a, 0x45, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 1927 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 1928 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 1929 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x66, 0x6c, 0x65, 1930 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0xa2, 0x02, 0x03, 0x43, 0x46, 0x45, 0x62, 0x06, 1931 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 1932} 1933 1934var ( 1935 file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescOnce sync.Once 1936 file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescData = file_google_maps_fleetengine_v1_vehicle_api_proto_rawDesc 1937) 1938 1939func file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescGZIP() []byte { 1940 file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescOnce.Do(func() { 1941 file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescData) 1942 }) 1943 return file_google_maps_fleetengine_v1_vehicle_api_proto_rawDescData 1944} 1945 1946var file_google_maps_fleetengine_v1_vehicle_api_proto_enumTypes = make([]protoimpl.EnumInfo, 2) 1947var file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes = make([]protoimpl.MessageInfo, 13) 1948var file_google_maps_fleetengine_v1_vehicle_api_proto_goTypes = []interface{}{ 1949 (SearchVehiclesRequest_VehicleMatchOrder)(0), // 0: maps.fleetengine.v1.SearchVehiclesRequest.VehicleMatchOrder 1950 (VehicleMatch_VehicleMatchType)(0), // 1: maps.fleetengine.v1.VehicleMatch.VehicleMatchType 1951 (*CreateVehicleRequest)(nil), // 2: maps.fleetengine.v1.CreateVehicleRequest 1952 (*GetVehicleRequest)(nil), // 3: maps.fleetengine.v1.GetVehicleRequest 1953 (*UpdateVehicleRequest)(nil), // 4: maps.fleetengine.v1.UpdateVehicleRequest 1954 (*UpdateVehicleLocationRequest)(nil), // 5: maps.fleetengine.v1.UpdateVehicleLocationRequest 1955 (*UpdateVehicleAttributesRequest)(nil), // 6: maps.fleetengine.v1.UpdateVehicleAttributesRequest 1956 (*UpdateVehicleAttributesResponse)(nil), // 7: maps.fleetengine.v1.UpdateVehicleAttributesResponse 1957 (*SearchVehiclesRequest)(nil), // 8: maps.fleetengine.v1.SearchVehiclesRequest 1958 (*SearchVehiclesResponse)(nil), // 9: maps.fleetengine.v1.SearchVehiclesResponse 1959 (*ListVehiclesRequest)(nil), // 10: maps.fleetengine.v1.ListVehiclesRequest 1960 (*ListVehiclesResponse)(nil), // 11: maps.fleetengine.v1.ListVehiclesResponse 1961 (*Waypoint)(nil), // 12: maps.fleetengine.v1.Waypoint 1962 (*VehicleMatch)(nil), // 13: maps.fleetengine.v1.VehicleMatch 1963 (*VehicleAttributeList)(nil), // 14: maps.fleetengine.v1.VehicleAttributeList 1964 (*RequestHeader)(nil), // 15: maps.fleetengine.v1.RequestHeader 1965 (*Vehicle)(nil), // 16: maps.fleetengine.v1.Vehicle 1966 (*timestamppb.Timestamp)(nil), // 17: google.protobuf.Timestamp 1967 (*fieldmaskpb.FieldMask)(nil), // 18: google.protobuf.FieldMask 1968 (*VehicleLocation)(nil), // 19: maps.fleetengine.v1.VehicleLocation 1969 (VehicleState)(0), // 20: maps.fleetengine.v1.VehicleState 1970 (*VehicleAttribute)(nil), // 21: maps.fleetengine.v1.VehicleAttribute 1971 (*TerminalLocation)(nil), // 22: maps.fleetengine.v1.TerminalLocation 1972 (TripType)(0), // 23: maps.fleetengine.v1.TripType 1973 (*durationpb.Duration)(nil), // 24: google.protobuf.Duration 1974 (*Vehicle_VehicleType)(nil), // 25: maps.fleetengine.v1.Vehicle.VehicleType 1975 (*wrapperspb.Int32Value)(nil), // 26: google.protobuf.Int32Value 1976 (Vehicle_VehicleType_Category)(0), // 27: maps.fleetengine.v1.Vehicle.VehicleType.Category 1977 (*latlng.LatLng)(nil), // 28: google.type.LatLng 1978} 1979var file_google_maps_fleetengine_v1_vehicle_api_proto_depIdxs = []int32{ 1980 15, // 0: maps.fleetengine.v1.CreateVehicleRequest.header:type_name -> maps.fleetengine.v1.RequestHeader 1981 16, // 1: maps.fleetengine.v1.CreateVehicleRequest.vehicle:type_name -> maps.fleetengine.v1.Vehicle 1982 15, // 2: maps.fleetengine.v1.GetVehicleRequest.header:type_name -> maps.fleetengine.v1.RequestHeader 1983 17, // 3: maps.fleetengine.v1.GetVehicleRequest.current_route_segment_version:type_name -> google.protobuf.Timestamp 1984 17, // 4: maps.fleetengine.v1.GetVehicleRequest.waypoints_version:type_name -> google.protobuf.Timestamp 1985 15, // 5: maps.fleetengine.v1.UpdateVehicleRequest.header:type_name -> maps.fleetengine.v1.RequestHeader 1986 16, // 6: maps.fleetengine.v1.UpdateVehicleRequest.vehicle:type_name -> maps.fleetengine.v1.Vehicle 1987 18, // 7: maps.fleetengine.v1.UpdateVehicleRequest.update_mask:type_name -> google.protobuf.FieldMask 1988 15, // 8: maps.fleetengine.v1.UpdateVehicleLocationRequest.header:type_name -> maps.fleetengine.v1.RequestHeader 1989 19, // 9: maps.fleetengine.v1.UpdateVehicleLocationRequest.current_location:type_name -> maps.fleetengine.v1.VehicleLocation 1990 20, // 10: maps.fleetengine.v1.UpdateVehicleLocationRequest.current_state:type_name -> maps.fleetengine.v1.VehicleState 1991 15, // 11: maps.fleetengine.v1.UpdateVehicleAttributesRequest.header:type_name -> maps.fleetengine.v1.RequestHeader 1992 21, // 12: maps.fleetengine.v1.UpdateVehicleAttributesRequest.attributes:type_name -> maps.fleetengine.v1.VehicleAttribute 1993 21, // 13: maps.fleetengine.v1.UpdateVehicleAttributesResponse.attributes:type_name -> maps.fleetengine.v1.VehicleAttribute 1994 15, // 14: maps.fleetengine.v1.SearchVehiclesRequest.header:type_name -> maps.fleetengine.v1.RequestHeader 1995 22, // 15: maps.fleetengine.v1.SearchVehiclesRequest.pickup_point:type_name -> maps.fleetengine.v1.TerminalLocation 1996 22, // 16: maps.fleetengine.v1.SearchVehiclesRequest.dropoff_point:type_name -> maps.fleetengine.v1.TerminalLocation 1997 23, // 17: maps.fleetengine.v1.SearchVehiclesRequest.trip_types:type_name -> maps.fleetengine.v1.TripType 1998 24, // 18: maps.fleetengine.v1.SearchVehiclesRequest.maximum_staleness:type_name -> google.protobuf.Duration 1999 25, // 19: maps.fleetengine.v1.SearchVehiclesRequest.vehicle_types:type_name -> maps.fleetengine.v1.Vehicle.VehicleType 2000 21, // 20: maps.fleetengine.v1.SearchVehiclesRequest.required_attributes:type_name -> maps.fleetengine.v1.VehicleAttribute 2001 14, // 21: maps.fleetengine.v1.SearchVehiclesRequest.required_one_of_attributes:type_name -> maps.fleetengine.v1.VehicleAttributeList 2002 14, // 22: maps.fleetengine.v1.SearchVehiclesRequest.required_one_of_attribute_sets:type_name -> maps.fleetengine.v1.VehicleAttributeList 2003 0, // 23: maps.fleetengine.v1.SearchVehiclesRequest.order_by:type_name -> maps.fleetengine.v1.SearchVehiclesRequest.VehicleMatchOrder 2004 13, // 24: maps.fleetengine.v1.SearchVehiclesResponse.matches:type_name -> maps.fleetengine.v1.VehicleMatch 2005 15, // 25: maps.fleetengine.v1.ListVehiclesRequest.header:type_name -> maps.fleetengine.v1.RequestHeader 2006 26, // 26: maps.fleetengine.v1.ListVehiclesRequest.minimum_capacity:type_name -> google.protobuf.Int32Value 2007 23, // 27: maps.fleetengine.v1.ListVehiclesRequest.trip_types:type_name -> maps.fleetengine.v1.TripType 2008 24, // 28: maps.fleetengine.v1.ListVehiclesRequest.maximum_staleness:type_name -> google.protobuf.Duration 2009 27, // 29: maps.fleetengine.v1.ListVehiclesRequest.vehicle_type_categories:type_name -> maps.fleetengine.v1.Vehicle.VehicleType.Category 2010 20, // 30: maps.fleetengine.v1.ListVehiclesRequest.vehicle_state:type_name -> maps.fleetengine.v1.VehicleState 2011 16, // 31: maps.fleetengine.v1.ListVehiclesResponse.vehicles:type_name -> maps.fleetengine.v1.Vehicle 2012 28, // 32: maps.fleetengine.v1.Waypoint.lat_lng:type_name -> google.type.LatLng 2013 17, // 33: maps.fleetengine.v1.Waypoint.eta:type_name -> google.protobuf.Timestamp 2014 16, // 34: maps.fleetengine.v1.VehicleMatch.vehicle:type_name -> maps.fleetengine.v1.Vehicle 2015 17, // 35: maps.fleetengine.v1.VehicleMatch.vehicle_pickup_eta:type_name -> google.protobuf.Timestamp 2016 26, // 36: maps.fleetengine.v1.VehicleMatch.vehicle_pickup_distance_meters:type_name -> google.protobuf.Int32Value 2017 26, // 37: maps.fleetengine.v1.VehicleMatch.vehicle_pickup_straight_line_distance_meters:type_name -> google.protobuf.Int32Value 2018 17, // 38: maps.fleetengine.v1.VehicleMatch.vehicle_dropoff_eta:type_name -> google.protobuf.Timestamp 2019 26, // 39: maps.fleetengine.v1.VehicleMatch.vehicle_pickup_to_dropoff_distance_meters:type_name -> google.protobuf.Int32Value 2020 23, // 40: maps.fleetengine.v1.VehicleMatch.trip_type:type_name -> maps.fleetengine.v1.TripType 2021 12, // 41: maps.fleetengine.v1.VehicleMatch.vehicle_trips_waypoints:type_name -> maps.fleetengine.v1.Waypoint 2022 1, // 42: maps.fleetengine.v1.VehicleMatch.vehicle_match_type:type_name -> maps.fleetengine.v1.VehicleMatch.VehicleMatchType 2023 0, // 43: maps.fleetengine.v1.VehicleMatch.requested_ordered_by:type_name -> maps.fleetengine.v1.SearchVehiclesRequest.VehicleMatchOrder 2024 0, // 44: maps.fleetengine.v1.VehicleMatch.ordered_by:type_name -> maps.fleetengine.v1.SearchVehiclesRequest.VehicleMatchOrder 2025 21, // 45: maps.fleetengine.v1.VehicleAttributeList.attributes:type_name -> maps.fleetengine.v1.VehicleAttribute 2026 2, // 46: maps.fleetengine.v1.VehicleService.CreateVehicle:input_type -> maps.fleetengine.v1.CreateVehicleRequest 2027 3, // 47: maps.fleetengine.v1.VehicleService.GetVehicle:input_type -> maps.fleetengine.v1.GetVehicleRequest 2028 4, // 48: maps.fleetengine.v1.VehicleService.UpdateVehicle:input_type -> maps.fleetengine.v1.UpdateVehicleRequest 2029 5, // 49: maps.fleetengine.v1.VehicleService.UpdateVehicleLocation:input_type -> maps.fleetengine.v1.UpdateVehicleLocationRequest 2030 6, // 50: maps.fleetengine.v1.VehicleService.UpdateVehicleAttributes:input_type -> maps.fleetengine.v1.UpdateVehicleAttributesRequest 2031 10, // 51: maps.fleetengine.v1.VehicleService.ListVehicles:input_type -> maps.fleetengine.v1.ListVehiclesRequest 2032 8, // 52: maps.fleetengine.v1.VehicleService.SearchVehicles:input_type -> maps.fleetengine.v1.SearchVehiclesRequest 2033 8, // 53: maps.fleetengine.v1.VehicleService.SearchFuzzedVehicles:input_type -> maps.fleetengine.v1.SearchVehiclesRequest 2034 16, // 54: maps.fleetengine.v1.VehicleService.CreateVehicle:output_type -> maps.fleetengine.v1.Vehicle 2035 16, // 55: maps.fleetengine.v1.VehicleService.GetVehicle:output_type -> maps.fleetengine.v1.Vehicle 2036 16, // 56: maps.fleetengine.v1.VehicleService.UpdateVehicle:output_type -> maps.fleetengine.v1.Vehicle 2037 19, // 57: maps.fleetengine.v1.VehicleService.UpdateVehicleLocation:output_type -> maps.fleetengine.v1.VehicleLocation 2038 7, // 58: maps.fleetengine.v1.VehicleService.UpdateVehicleAttributes:output_type -> maps.fleetengine.v1.UpdateVehicleAttributesResponse 2039 11, // 59: maps.fleetengine.v1.VehicleService.ListVehicles:output_type -> maps.fleetengine.v1.ListVehiclesResponse 2040 9, // 60: maps.fleetengine.v1.VehicleService.SearchVehicles:output_type -> maps.fleetengine.v1.SearchVehiclesResponse 2041 9, // 61: maps.fleetengine.v1.VehicleService.SearchFuzzedVehicles:output_type -> maps.fleetengine.v1.SearchVehiclesResponse 2042 54, // [54:62] is the sub-list for method output_type 2043 46, // [46:54] is the sub-list for method input_type 2044 46, // [46:46] is the sub-list for extension type_name 2045 46, // [46:46] is the sub-list for extension extendee 2046 0, // [0:46] is the sub-list for field type_name 2047} 2048 2049func init() { file_google_maps_fleetengine_v1_vehicle_api_proto_init() } 2050func file_google_maps_fleetengine_v1_vehicle_api_proto_init() { 2051 if File_google_maps_fleetengine_v1_vehicle_api_proto != nil { 2052 return 2053 } 2054 file_google_maps_fleetengine_v1_fleetengine_proto_init() 2055 file_google_maps_fleetengine_v1_header_proto_init() 2056 file_google_maps_fleetengine_v1_vehicles_proto_init() 2057 if !protoimpl.UnsafeEnabled { 2058 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 2059 switch v := v.(*CreateVehicleRequest); i { 2060 case 0: 2061 return &v.state 2062 case 1: 2063 return &v.sizeCache 2064 case 2: 2065 return &v.unknownFields 2066 default: 2067 return nil 2068 } 2069 } 2070 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 2071 switch v := v.(*GetVehicleRequest); i { 2072 case 0: 2073 return &v.state 2074 case 1: 2075 return &v.sizeCache 2076 case 2: 2077 return &v.unknownFields 2078 default: 2079 return nil 2080 } 2081 } 2082 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 2083 switch v := v.(*UpdateVehicleRequest); i { 2084 case 0: 2085 return &v.state 2086 case 1: 2087 return &v.sizeCache 2088 case 2: 2089 return &v.unknownFields 2090 default: 2091 return nil 2092 } 2093 } 2094 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 2095 switch v := v.(*UpdateVehicleLocationRequest); i { 2096 case 0: 2097 return &v.state 2098 case 1: 2099 return &v.sizeCache 2100 case 2: 2101 return &v.unknownFields 2102 default: 2103 return nil 2104 } 2105 } 2106 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 2107 switch v := v.(*UpdateVehicleAttributesRequest); i { 2108 case 0: 2109 return &v.state 2110 case 1: 2111 return &v.sizeCache 2112 case 2: 2113 return &v.unknownFields 2114 default: 2115 return nil 2116 } 2117 } 2118 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 2119 switch v := v.(*UpdateVehicleAttributesResponse); i { 2120 case 0: 2121 return &v.state 2122 case 1: 2123 return &v.sizeCache 2124 case 2: 2125 return &v.unknownFields 2126 default: 2127 return nil 2128 } 2129 } 2130 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 2131 switch v := v.(*SearchVehiclesRequest); i { 2132 case 0: 2133 return &v.state 2134 case 1: 2135 return &v.sizeCache 2136 case 2: 2137 return &v.unknownFields 2138 default: 2139 return nil 2140 } 2141 } 2142 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 2143 switch v := v.(*SearchVehiclesResponse); i { 2144 case 0: 2145 return &v.state 2146 case 1: 2147 return &v.sizeCache 2148 case 2: 2149 return &v.unknownFields 2150 default: 2151 return nil 2152 } 2153 } 2154 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 2155 switch v := v.(*ListVehiclesRequest); i { 2156 case 0: 2157 return &v.state 2158 case 1: 2159 return &v.sizeCache 2160 case 2: 2161 return &v.unknownFields 2162 default: 2163 return nil 2164 } 2165 } 2166 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 2167 switch v := v.(*ListVehiclesResponse); i { 2168 case 0: 2169 return &v.state 2170 case 1: 2171 return &v.sizeCache 2172 case 2: 2173 return &v.unknownFields 2174 default: 2175 return nil 2176 } 2177 } 2178 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 2179 switch v := v.(*Waypoint); i { 2180 case 0: 2181 return &v.state 2182 case 1: 2183 return &v.sizeCache 2184 case 2: 2185 return &v.unknownFields 2186 default: 2187 return nil 2188 } 2189 } 2190 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 2191 switch v := v.(*VehicleMatch); i { 2192 case 0: 2193 return &v.state 2194 case 1: 2195 return &v.sizeCache 2196 case 2: 2197 return &v.unknownFields 2198 default: 2199 return nil 2200 } 2201 } 2202 file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 2203 switch v := v.(*VehicleAttributeList); i { 2204 case 0: 2205 return &v.state 2206 case 1: 2207 return &v.sizeCache 2208 case 2: 2209 return &v.unknownFields 2210 default: 2211 return nil 2212 } 2213 } 2214 } 2215 type x struct{} 2216 out := protoimpl.TypeBuilder{ 2217 File: protoimpl.DescBuilder{ 2218 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 2219 RawDescriptor: file_google_maps_fleetengine_v1_vehicle_api_proto_rawDesc, 2220 NumEnums: 2, 2221 NumMessages: 13, 2222 NumExtensions: 0, 2223 NumServices: 1, 2224 }, 2225 GoTypes: file_google_maps_fleetengine_v1_vehicle_api_proto_goTypes, 2226 DependencyIndexes: file_google_maps_fleetengine_v1_vehicle_api_proto_depIdxs, 2227 EnumInfos: file_google_maps_fleetengine_v1_vehicle_api_proto_enumTypes, 2228 MessageInfos: file_google_maps_fleetengine_v1_vehicle_api_proto_msgTypes, 2229 }.Build() 2230 File_google_maps_fleetengine_v1_vehicle_api_proto = out.File 2231 file_google_maps_fleetengine_v1_vehicle_api_proto_rawDesc = nil 2232 file_google_maps_fleetengine_v1_vehicle_api_proto_goTypes = nil 2233 file_google_maps_fleetengine_v1_vehicle_api_proto_depIdxs = nil 2234} 2235 2236// Reference imports to suppress errors if they are not otherwise used. 2237var _ context.Context 2238var _ grpc.ClientConnInterface 2239 2240// This is a compile-time assertion to ensure that this generated file 2241// is compatible with the grpc package it is being compiled against. 2242const _ = grpc.SupportPackageIsVersion6 2243 2244// VehicleServiceClient is the client API for VehicleService service. 2245// 2246// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 2247type VehicleServiceClient interface { 2248 // CreateVehicle instantiates a new vehicle associated with a rideshare 2249 // provider in the Fleet Engine. Vehicles must have a unique vehicle ID. 2250 // 2251 // The following Vehicle fields are required when creating a Vehicle: 2252 // 2253 // * vehicleState 2254 // * supportedTripTypes 2255 // * maximumCapacity 2256 // * vehicleType 2257 // 2258 // The following Vehicle fields are ignored when creating a Vehicle: 2259 // 2260 // * name 2261 // * currentTrips 2262 // * availableCapacity 2263 // * current_route_segment 2264 // * current_route_segment_version 2265 // * waypoint 2266 // * waypoints_version 2267 // * remaining_distance_meters 2268 // * eta_to_next_waypoint 2269 // * navigation_status 2270 // 2271 // All other fields are optional and used if provided. 2272 CreateVehicle(ctx context.Context, in *CreateVehicleRequest, opts ...grpc.CallOption) (*Vehicle, error) 2273 // GetVehicle returns a vehicle from the Fleet Engine. 2274 GetVehicle(ctx context.Context, in *GetVehicleRequest, opts ...grpc.CallOption) (*Vehicle, error) 2275 // UpdateVehicle writes updated vehicle data to the Fleet Engine. 2276 // 2277 // When updating a Vehicle, the following fields cannot be updated since they 2278 // are managed by the Fleet Engine: 2279 // 2280 // * currentTrips 2281 // * availableCapacity 2282 // * current_route_segment_version 2283 // * waypoints_version 2284 // 2285 // The vehicle name also cannot be updated. 2286 // 2287 // The waypoints field can be updated, but must contain all the waypoints 2288 // currently on the vehicle, and no other waypoints. 2289 UpdateVehicle(ctx context.Context, in *UpdateVehicleRequest, opts ...grpc.CallOption) (*Vehicle, error) 2290 // Deprecated: Do not use. 2291 // UpdateVehicleLocation updates the location of the vehicle. 2292 // This method is deprecated. Use UpdateVehicle method instead. 2293 UpdateVehicleLocation(ctx context.Context, in *UpdateVehicleLocationRequest, opts ...grpc.CallOption) (*VehicleLocation, error) 2294 // UpdateVehicleAttributes partially updates a vehicle's attributes. 2295 // Only the attributes mentioned in the request will be updated, other 2296 // attributes will NOT be altered. Note: this is different in UpdateVehicle, 2297 // where the whole `attributes` field will be replaced by the one in 2298 // UpdateVehicleRequest, attributes not in the request would be removed. 2299 UpdateVehicleAttributes(ctx context.Context, in *UpdateVehicleAttributesRequest, opts ...grpc.CallOption) (*UpdateVehicleAttributesResponse, error) 2300 // ListVehicles returns a paginated list of vehicles associated with 2301 // a provider that match the request options. 2302 ListVehicles(ctx context.Context, in *ListVehiclesRequest, opts ...grpc.CallOption) (*ListVehiclesResponse, error) 2303 // SearchVehicles returns a list of vehicles that match the request options. 2304 SearchVehicles(ctx context.Context, in *SearchVehiclesRequest, opts ...grpc.CallOption) (*SearchVehiclesResponse, error) 2305 // SearchFuzzedVehicles returns a list of vehicles that match the request 2306 // options with their locations fuzzed. 2307 // Request does not support 'order_by' field. 2308 // Vehicle matches in response will be in order of distance from pickup point. 2309 // Vehicle matches in response will only have 'vehicle' and 'trip_type' field 2310 // set. 2311 SearchFuzzedVehicles(ctx context.Context, in *SearchVehiclesRequest, opts ...grpc.CallOption) (*SearchVehiclesResponse, error) 2312} 2313 2314type vehicleServiceClient struct { 2315 cc grpc.ClientConnInterface 2316} 2317 2318func NewVehicleServiceClient(cc grpc.ClientConnInterface) VehicleServiceClient { 2319 return &vehicleServiceClient{cc} 2320} 2321 2322func (c *vehicleServiceClient) CreateVehicle(ctx context.Context, in *CreateVehicleRequest, opts ...grpc.CallOption) (*Vehicle, error) { 2323 out := new(Vehicle) 2324 err := c.cc.Invoke(ctx, "/maps.fleetengine.v1.VehicleService/CreateVehicle", in, out, opts...) 2325 if err != nil { 2326 return nil, err 2327 } 2328 return out, nil 2329} 2330 2331func (c *vehicleServiceClient) GetVehicle(ctx context.Context, in *GetVehicleRequest, opts ...grpc.CallOption) (*Vehicle, error) { 2332 out := new(Vehicle) 2333 err := c.cc.Invoke(ctx, "/maps.fleetengine.v1.VehicleService/GetVehicle", in, out, opts...) 2334 if err != nil { 2335 return nil, err 2336 } 2337 return out, nil 2338} 2339 2340func (c *vehicleServiceClient) UpdateVehicle(ctx context.Context, in *UpdateVehicleRequest, opts ...grpc.CallOption) (*Vehicle, error) { 2341 out := new(Vehicle) 2342 err := c.cc.Invoke(ctx, "/maps.fleetengine.v1.VehicleService/UpdateVehicle", in, out, opts...) 2343 if err != nil { 2344 return nil, err 2345 } 2346 return out, nil 2347} 2348 2349// Deprecated: Do not use. 2350func (c *vehicleServiceClient) UpdateVehicleLocation(ctx context.Context, in *UpdateVehicleLocationRequest, opts ...grpc.CallOption) (*VehicleLocation, error) { 2351 out := new(VehicleLocation) 2352 err := c.cc.Invoke(ctx, "/maps.fleetengine.v1.VehicleService/UpdateVehicleLocation", in, out, opts...) 2353 if err != nil { 2354 return nil, err 2355 } 2356 return out, nil 2357} 2358 2359func (c *vehicleServiceClient) UpdateVehicleAttributes(ctx context.Context, in *UpdateVehicleAttributesRequest, opts ...grpc.CallOption) (*UpdateVehicleAttributesResponse, error) { 2360 out := new(UpdateVehicleAttributesResponse) 2361 err := c.cc.Invoke(ctx, "/maps.fleetengine.v1.VehicleService/UpdateVehicleAttributes", in, out, opts...) 2362 if err != nil { 2363 return nil, err 2364 } 2365 return out, nil 2366} 2367 2368func (c *vehicleServiceClient) ListVehicles(ctx context.Context, in *ListVehiclesRequest, opts ...grpc.CallOption) (*ListVehiclesResponse, error) { 2369 out := new(ListVehiclesResponse) 2370 err := c.cc.Invoke(ctx, "/maps.fleetengine.v1.VehicleService/ListVehicles", in, out, opts...) 2371 if err != nil { 2372 return nil, err 2373 } 2374 return out, nil 2375} 2376 2377func (c *vehicleServiceClient) SearchVehicles(ctx context.Context, in *SearchVehiclesRequest, opts ...grpc.CallOption) (*SearchVehiclesResponse, error) { 2378 out := new(SearchVehiclesResponse) 2379 err := c.cc.Invoke(ctx, "/maps.fleetengine.v1.VehicleService/SearchVehicles", in, out, opts...) 2380 if err != nil { 2381 return nil, err 2382 } 2383 return out, nil 2384} 2385 2386func (c *vehicleServiceClient) SearchFuzzedVehicles(ctx context.Context, in *SearchVehiclesRequest, opts ...grpc.CallOption) (*SearchVehiclesResponse, error) { 2387 out := new(SearchVehiclesResponse) 2388 err := c.cc.Invoke(ctx, "/maps.fleetengine.v1.VehicleService/SearchFuzzedVehicles", in, out, opts...) 2389 if err != nil { 2390 return nil, err 2391 } 2392 return out, nil 2393} 2394 2395// VehicleServiceServer is the server API for VehicleService service. 2396type VehicleServiceServer interface { 2397 // CreateVehicle instantiates a new vehicle associated with a rideshare 2398 // provider in the Fleet Engine. Vehicles must have a unique vehicle ID. 2399 // 2400 // The following Vehicle fields are required when creating a Vehicle: 2401 // 2402 // * vehicleState 2403 // * supportedTripTypes 2404 // * maximumCapacity 2405 // * vehicleType 2406 // 2407 // The following Vehicle fields are ignored when creating a Vehicle: 2408 // 2409 // * name 2410 // * currentTrips 2411 // * availableCapacity 2412 // * current_route_segment 2413 // * current_route_segment_version 2414 // * waypoint 2415 // * waypoints_version 2416 // * remaining_distance_meters 2417 // * eta_to_next_waypoint 2418 // * navigation_status 2419 // 2420 // All other fields are optional and used if provided. 2421 CreateVehicle(context.Context, *CreateVehicleRequest) (*Vehicle, error) 2422 // GetVehicle returns a vehicle from the Fleet Engine. 2423 GetVehicle(context.Context, *GetVehicleRequest) (*Vehicle, error) 2424 // UpdateVehicle writes updated vehicle data to the Fleet Engine. 2425 // 2426 // When updating a Vehicle, the following fields cannot be updated since they 2427 // are managed by the Fleet Engine: 2428 // 2429 // * currentTrips 2430 // * availableCapacity 2431 // * current_route_segment_version 2432 // * waypoints_version 2433 // 2434 // The vehicle name also cannot be updated. 2435 // 2436 // The waypoints field can be updated, but must contain all the waypoints 2437 // currently on the vehicle, and no other waypoints. 2438 UpdateVehicle(context.Context, *UpdateVehicleRequest) (*Vehicle, error) 2439 // Deprecated: Do not use. 2440 // UpdateVehicleLocation updates the location of the vehicle. 2441 // This method is deprecated. Use UpdateVehicle method instead. 2442 UpdateVehicleLocation(context.Context, *UpdateVehicleLocationRequest) (*VehicleLocation, error) 2443 // UpdateVehicleAttributes partially updates a vehicle's attributes. 2444 // Only the attributes mentioned in the request will be updated, other 2445 // attributes will NOT be altered. Note: this is different in UpdateVehicle, 2446 // where the whole `attributes` field will be replaced by the one in 2447 // UpdateVehicleRequest, attributes not in the request would be removed. 2448 UpdateVehicleAttributes(context.Context, *UpdateVehicleAttributesRequest) (*UpdateVehicleAttributesResponse, error) 2449 // ListVehicles returns a paginated list of vehicles associated with 2450 // a provider that match the request options. 2451 ListVehicles(context.Context, *ListVehiclesRequest) (*ListVehiclesResponse, error) 2452 // SearchVehicles returns a list of vehicles that match the request options. 2453 SearchVehicles(context.Context, *SearchVehiclesRequest) (*SearchVehiclesResponse, error) 2454 // SearchFuzzedVehicles returns a list of vehicles that match the request 2455 // options with their locations fuzzed. 2456 // Request does not support 'order_by' field. 2457 // Vehicle matches in response will be in order of distance from pickup point. 2458 // Vehicle matches in response will only have 'vehicle' and 'trip_type' field 2459 // set. 2460 SearchFuzzedVehicles(context.Context, *SearchVehiclesRequest) (*SearchVehiclesResponse, error) 2461} 2462 2463// UnimplementedVehicleServiceServer can be embedded to have forward compatible implementations. 2464type UnimplementedVehicleServiceServer struct { 2465} 2466 2467func (*UnimplementedVehicleServiceServer) CreateVehicle(context.Context, *CreateVehicleRequest) (*Vehicle, error) { 2468 return nil, status.Errorf(codes.Unimplemented, "method CreateVehicle not implemented") 2469} 2470func (*UnimplementedVehicleServiceServer) GetVehicle(context.Context, *GetVehicleRequest) (*Vehicle, error) { 2471 return nil, status.Errorf(codes.Unimplemented, "method GetVehicle not implemented") 2472} 2473func (*UnimplementedVehicleServiceServer) UpdateVehicle(context.Context, *UpdateVehicleRequest) (*Vehicle, error) { 2474 return nil, status.Errorf(codes.Unimplemented, "method UpdateVehicle not implemented") 2475} 2476func (*UnimplementedVehicleServiceServer) UpdateVehicleLocation(context.Context, *UpdateVehicleLocationRequest) (*VehicleLocation, error) { 2477 return nil, status.Errorf(codes.Unimplemented, "method UpdateVehicleLocation not implemented") 2478} 2479func (*UnimplementedVehicleServiceServer) UpdateVehicleAttributes(context.Context, *UpdateVehicleAttributesRequest) (*UpdateVehicleAttributesResponse, error) { 2480 return nil, status.Errorf(codes.Unimplemented, "method UpdateVehicleAttributes not implemented") 2481} 2482func (*UnimplementedVehicleServiceServer) ListVehicles(context.Context, *ListVehiclesRequest) (*ListVehiclesResponse, error) { 2483 return nil, status.Errorf(codes.Unimplemented, "method ListVehicles not implemented") 2484} 2485func (*UnimplementedVehicleServiceServer) SearchVehicles(context.Context, *SearchVehiclesRequest) (*SearchVehiclesResponse, error) { 2486 return nil, status.Errorf(codes.Unimplemented, "method SearchVehicles not implemented") 2487} 2488func (*UnimplementedVehicleServiceServer) SearchFuzzedVehicles(context.Context, *SearchVehiclesRequest) (*SearchVehiclesResponse, error) { 2489 return nil, status.Errorf(codes.Unimplemented, "method SearchFuzzedVehicles not implemented") 2490} 2491 2492func RegisterVehicleServiceServer(s *grpc.Server, srv VehicleServiceServer) { 2493 s.RegisterService(&_VehicleService_serviceDesc, srv) 2494} 2495 2496func _VehicleService_CreateVehicle_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2497 in := new(CreateVehicleRequest) 2498 if err := dec(in); err != nil { 2499 return nil, err 2500 } 2501 if interceptor == nil { 2502 return srv.(VehicleServiceServer).CreateVehicle(ctx, in) 2503 } 2504 info := &grpc.UnaryServerInfo{ 2505 Server: srv, 2506 FullMethod: "/maps.fleetengine.v1.VehicleService/CreateVehicle", 2507 } 2508 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2509 return srv.(VehicleServiceServer).CreateVehicle(ctx, req.(*CreateVehicleRequest)) 2510 } 2511 return interceptor(ctx, in, info, handler) 2512} 2513 2514func _VehicleService_GetVehicle_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2515 in := new(GetVehicleRequest) 2516 if err := dec(in); err != nil { 2517 return nil, err 2518 } 2519 if interceptor == nil { 2520 return srv.(VehicleServiceServer).GetVehicle(ctx, in) 2521 } 2522 info := &grpc.UnaryServerInfo{ 2523 Server: srv, 2524 FullMethod: "/maps.fleetengine.v1.VehicleService/GetVehicle", 2525 } 2526 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2527 return srv.(VehicleServiceServer).GetVehicle(ctx, req.(*GetVehicleRequest)) 2528 } 2529 return interceptor(ctx, in, info, handler) 2530} 2531 2532func _VehicleService_UpdateVehicle_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2533 in := new(UpdateVehicleRequest) 2534 if err := dec(in); err != nil { 2535 return nil, err 2536 } 2537 if interceptor == nil { 2538 return srv.(VehicleServiceServer).UpdateVehicle(ctx, in) 2539 } 2540 info := &grpc.UnaryServerInfo{ 2541 Server: srv, 2542 FullMethod: "/maps.fleetengine.v1.VehicleService/UpdateVehicle", 2543 } 2544 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2545 return srv.(VehicleServiceServer).UpdateVehicle(ctx, req.(*UpdateVehicleRequest)) 2546 } 2547 return interceptor(ctx, in, info, handler) 2548} 2549 2550func _VehicleService_UpdateVehicleLocation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2551 in := new(UpdateVehicleLocationRequest) 2552 if err := dec(in); err != nil { 2553 return nil, err 2554 } 2555 if interceptor == nil { 2556 return srv.(VehicleServiceServer).UpdateVehicleLocation(ctx, in) 2557 } 2558 info := &grpc.UnaryServerInfo{ 2559 Server: srv, 2560 FullMethod: "/maps.fleetengine.v1.VehicleService/UpdateVehicleLocation", 2561 } 2562 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2563 return srv.(VehicleServiceServer).UpdateVehicleLocation(ctx, req.(*UpdateVehicleLocationRequest)) 2564 } 2565 return interceptor(ctx, in, info, handler) 2566} 2567 2568func _VehicleService_UpdateVehicleAttributes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2569 in := new(UpdateVehicleAttributesRequest) 2570 if err := dec(in); err != nil { 2571 return nil, err 2572 } 2573 if interceptor == nil { 2574 return srv.(VehicleServiceServer).UpdateVehicleAttributes(ctx, in) 2575 } 2576 info := &grpc.UnaryServerInfo{ 2577 Server: srv, 2578 FullMethod: "/maps.fleetengine.v1.VehicleService/UpdateVehicleAttributes", 2579 } 2580 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2581 return srv.(VehicleServiceServer).UpdateVehicleAttributes(ctx, req.(*UpdateVehicleAttributesRequest)) 2582 } 2583 return interceptor(ctx, in, info, handler) 2584} 2585 2586func _VehicleService_ListVehicles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2587 in := new(ListVehiclesRequest) 2588 if err := dec(in); err != nil { 2589 return nil, err 2590 } 2591 if interceptor == nil { 2592 return srv.(VehicleServiceServer).ListVehicles(ctx, in) 2593 } 2594 info := &grpc.UnaryServerInfo{ 2595 Server: srv, 2596 FullMethod: "/maps.fleetengine.v1.VehicleService/ListVehicles", 2597 } 2598 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2599 return srv.(VehicleServiceServer).ListVehicles(ctx, req.(*ListVehiclesRequest)) 2600 } 2601 return interceptor(ctx, in, info, handler) 2602} 2603 2604func _VehicleService_SearchVehicles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2605 in := new(SearchVehiclesRequest) 2606 if err := dec(in); err != nil { 2607 return nil, err 2608 } 2609 if interceptor == nil { 2610 return srv.(VehicleServiceServer).SearchVehicles(ctx, in) 2611 } 2612 info := &grpc.UnaryServerInfo{ 2613 Server: srv, 2614 FullMethod: "/maps.fleetengine.v1.VehicleService/SearchVehicles", 2615 } 2616 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2617 return srv.(VehicleServiceServer).SearchVehicles(ctx, req.(*SearchVehiclesRequest)) 2618 } 2619 return interceptor(ctx, in, info, handler) 2620} 2621 2622func _VehicleService_SearchFuzzedVehicles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2623 in := new(SearchVehiclesRequest) 2624 if err := dec(in); err != nil { 2625 return nil, err 2626 } 2627 if interceptor == nil { 2628 return srv.(VehicleServiceServer).SearchFuzzedVehicles(ctx, in) 2629 } 2630 info := &grpc.UnaryServerInfo{ 2631 Server: srv, 2632 FullMethod: "/maps.fleetengine.v1.VehicleService/SearchFuzzedVehicles", 2633 } 2634 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2635 return srv.(VehicleServiceServer).SearchFuzzedVehicles(ctx, req.(*SearchVehiclesRequest)) 2636 } 2637 return interceptor(ctx, in, info, handler) 2638} 2639 2640var _VehicleService_serviceDesc = grpc.ServiceDesc{ 2641 ServiceName: "maps.fleetengine.v1.VehicleService", 2642 HandlerType: (*VehicleServiceServer)(nil), 2643 Methods: []grpc.MethodDesc{ 2644 { 2645 MethodName: "CreateVehicle", 2646 Handler: _VehicleService_CreateVehicle_Handler, 2647 }, 2648 { 2649 MethodName: "GetVehicle", 2650 Handler: _VehicleService_GetVehicle_Handler, 2651 }, 2652 { 2653 MethodName: "UpdateVehicle", 2654 Handler: _VehicleService_UpdateVehicle_Handler, 2655 }, 2656 { 2657 MethodName: "UpdateVehicleLocation", 2658 Handler: _VehicleService_UpdateVehicleLocation_Handler, 2659 }, 2660 { 2661 MethodName: "UpdateVehicleAttributes", 2662 Handler: _VehicleService_UpdateVehicleAttributes_Handler, 2663 }, 2664 { 2665 MethodName: "ListVehicles", 2666 Handler: _VehicleService_ListVehicles_Handler, 2667 }, 2668 { 2669 MethodName: "SearchVehicles", 2670 Handler: _VehicleService_SearchVehicles_Handler, 2671 }, 2672 { 2673 MethodName: "SearchFuzzedVehicles", 2674 Handler: _VehicleService_SearchFuzzedVehicles_Handler, 2675 }, 2676 }, 2677 Streams: []grpc.StreamDesc{}, 2678 Metadata: "google/maps/fleetengine/v1/vehicle_api.proto", 2679} 2680