google.golang.org/grpc@v1.62.1/internal/proto/grpc_lookup_v1/rls_config.pb.go (about) 1 // Copyright 2020 The gRPC Authors 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.32.0 18 // protoc v4.25.2 19 // source: grpc/lookup/v1/rls_config.proto 20 21 package grpc_lookup_v1 22 23 import ( 24 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 25 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 26 durationpb "google.golang.org/protobuf/types/known/durationpb" 27 reflect "reflect" 28 sync "sync" 29 ) 30 31 const ( 32 // Verify that this generated code is sufficiently up-to-date. 33 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 34 // Verify that runtime/protoimpl is sufficiently up-to-date. 35 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 36 ) 37 38 // Extract a key based on a given name (e.g. header name or query parameter 39 // name). The name must match one of the names listed in the "name" field. If 40 // the "required_match" field is true, one of the specified names must be 41 // present for the keybuilder to match. 42 type NameMatcher struct { 43 state protoimpl.MessageState 44 sizeCache protoimpl.SizeCache 45 unknownFields protoimpl.UnknownFields 46 47 // The name that will be used in the RLS key_map to refer to this value. 48 // If required_match is true, you may omit this field or set it to an empty 49 // string, in which case the matcher will require a match, but won't update 50 // the key_map. 51 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 52 // Ordered list of names (headers or query parameter names) that can supply 53 // this value; the first one with a non-empty value is used. 54 Names []string `protobuf:"bytes,2,rep,name=names,proto3" json:"names,omitempty"` 55 // If true, make this extraction required; the key builder will not match 56 // if no value is found. 57 RequiredMatch bool `protobuf:"varint,3,opt,name=required_match,json=requiredMatch,proto3" json:"required_match,omitempty"` 58 } 59 60 func (x *NameMatcher) Reset() { 61 *x = NameMatcher{} 62 if protoimpl.UnsafeEnabled { 63 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[0] 64 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 65 ms.StoreMessageInfo(mi) 66 } 67 } 68 69 func (x *NameMatcher) String() string { 70 return protoimpl.X.MessageStringOf(x) 71 } 72 73 func (*NameMatcher) ProtoMessage() {} 74 75 func (x *NameMatcher) ProtoReflect() protoreflect.Message { 76 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[0] 77 if protoimpl.UnsafeEnabled && x != nil { 78 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 79 if ms.LoadMessageInfo() == nil { 80 ms.StoreMessageInfo(mi) 81 } 82 return ms 83 } 84 return mi.MessageOf(x) 85 } 86 87 // Deprecated: Use NameMatcher.ProtoReflect.Descriptor instead. 88 func (*NameMatcher) Descriptor() ([]byte, []int) { 89 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{0} 90 } 91 92 func (x *NameMatcher) GetKey() string { 93 if x != nil { 94 return x.Key 95 } 96 return "" 97 } 98 99 func (x *NameMatcher) GetNames() []string { 100 if x != nil { 101 return x.Names 102 } 103 return nil 104 } 105 106 func (x *NameMatcher) GetRequiredMatch() bool { 107 if x != nil { 108 return x.RequiredMatch 109 } 110 return false 111 } 112 113 // A GrpcKeyBuilder applies to a given gRPC service, name, and headers. 114 type GrpcKeyBuilder struct { 115 state protoimpl.MessageState 116 sizeCache protoimpl.SizeCache 117 unknownFields protoimpl.UnknownFields 118 119 Names []*GrpcKeyBuilder_Name `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"` 120 ExtraKeys *GrpcKeyBuilder_ExtraKeys `protobuf:"bytes,3,opt,name=extra_keys,json=extraKeys,proto3" json:"extra_keys,omitempty"` 121 // Extract keys from all listed headers. 122 // For gRPC, it is an error to specify "required_match" on the NameMatcher 123 // protos. 124 Headers []*NameMatcher `protobuf:"bytes,2,rep,name=headers,proto3" json:"headers,omitempty"` 125 // You can optionally set one or more specific key/value pairs to be added to 126 // the key_map. This can be useful to identify which builder built the key, 127 // for example if you are suppressing the actual method, but need to 128 // separately cache and request all the matched methods. 129 ConstantKeys map[string]string `protobuf:"bytes,4,rep,name=constant_keys,json=constantKeys,proto3" json:"constant_keys,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 130 } 131 132 func (x *GrpcKeyBuilder) Reset() { 133 *x = GrpcKeyBuilder{} 134 if protoimpl.UnsafeEnabled { 135 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[1] 136 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 137 ms.StoreMessageInfo(mi) 138 } 139 } 140 141 func (x *GrpcKeyBuilder) String() string { 142 return protoimpl.X.MessageStringOf(x) 143 } 144 145 func (*GrpcKeyBuilder) ProtoMessage() {} 146 147 func (x *GrpcKeyBuilder) ProtoReflect() protoreflect.Message { 148 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[1] 149 if protoimpl.UnsafeEnabled && x != nil { 150 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 151 if ms.LoadMessageInfo() == nil { 152 ms.StoreMessageInfo(mi) 153 } 154 return ms 155 } 156 return mi.MessageOf(x) 157 } 158 159 // Deprecated: Use GrpcKeyBuilder.ProtoReflect.Descriptor instead. 160 func (*GrpcKeyBuilder) Descriptor() ([]byte, []int) { 161 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{1} 162 } 163 164 func (x *GrpcKeyBuilder) GetNames() []*GrpcKeyBuilder_Name { 165 if x != nil { 166 return x.Names 167 } 168 return nil 169 } 170 171 func (x *GrpcKeyBuilder) GetExtraKeys() *GrpcKeyBuilder_ExtraKeys { 172 if x != nil { 173 return x.ExtraKeys 174 } 175 return nil 176 } 177 178 func (x *GrpcKeyBuilder) GetHeaders() []*NameMatcher { 179 if x != nil { 180 return x.Headers 181 } 182 return nil 183 } 184 185 func (x *GrpcKeyBuilder) GetConstantKeys() map[string]string { 186 if x != nil { 187 return x.ConstantKeys 188 } 189 return nil 190 } 191 192 // An HttpKeyBuilder applies to a given HTTP URL and headers. 193 // 194 // Path and host patterns use the matching syntax from gRPC transcoding to 195 // extract named key/value pairs from the path and host components of the URL: 196 // https://github.com/googleapis/googleapis/blob/master/google/api/http.proto 197 // 198 // It is invalid to specify the same key name in multiple places in a pattern. 199 // 200 // For a service where the project id can be expressed either as a subdomain or 201 // in the path, separate HttpKeyBuilders must be used: 202 // 203 // host_pattern: 'example.com' path_pattern: '/{id}/{object}/**' 204 // host_pattern: '{id}.example.com' path_pattern: '/{object}/**' 205 // 206 // If the host is exactly 'example.com', the first path segment will be used as 207 // the id and the second segment as the object. If the host has a subdomain, the 208 // subdomain will be used as the id and the first segment as the object. If 209 // neither pattern matches, no keys will be extracted. 210 type HttpKeyBuilder struct { 211 state protoimpl.MessageState 212 sizeCache protoimpl.SizeCache 213 unknownFields protoimpl.UnknownFields 214 215 // host_pattern is an ordered list of host template patterns for the desired 216 // value. If any host_pattern values are specified, then at least one must 217 // match, and the last one wins and sets any specified variables. A host 218 // consists of labels separated by dots. Each label is matched against the 219 // label in the pattern as follows: 220 // - "*": Matches any single label. 221 // - "**": Matches zero or more labels (first or last part of host only). 222 // - "{<name>=...}": One or more label capture, where "..." can be any 223 // template that does not include a capture. 224 // - "{<name>}": A single label capture. Identical to {<name>=*}. 225 // 226 // Examples: 227 // - "example.com": Only applies to the exact host example.com. 228 // - "*.example.com": Matches subdomains of example.com. 229 // - "**.example.com": matches example.com, and all levels of subdomains. 230 // - "{project}.example.com": Extracts the third level subdomain. 231 // - "{project=**}.example.com": Extracts the third level+ subdomains. 232 // - "{project=**}": Extracts the entire host. 233 HostPatterns []string `protobuf:"bytes,1,rep,name=host_patterns,json=hostPatterns,proto3" json:"host_patterns,omitempty"` 234 // path_pattern is an ordered list of path template patterns for the desired 235 // value. If any path_pattern values are specified, then at least one must 236 // match, and the last one wins and sets any specified variables. A path 237 // consists of segments separated by slashes. Each segment is matched against 238 // the segment in the pattern as follows: 239 // - "*": Matches any single segment. 240 // - "**": Matches zero or more segments (first or last part of path only). 241 // - "{<name>=...}": One or more segment capture, where "..." can be any 242 // template that does not include a capture. 243 // - "{<name>}": A single segment capture. Identical to {<name>=*}. 244 // 245 // A custom method may also be specified by appending ":" and the custom 246 // method name or "*" to indicate any custom method (including no custom 247 // method). For example, "/*/projects/{project_id}/**:*" extracts 248 // `{project_id}` for any version, resource and custom method that includes 249 // it. By default, any custom method will be matched. 250 // 251 // Examples: 252 // - "/v1/{name=messages/*}": extracts a name like "messages/12345". 253 // - "/v1/messages/{message_id}": extracts a message_id like "12345". 254 // - "/v1/users/{user_id}/messages/{message_id}": extracts two key values. 255 PathPatterns []string `protobuf:"bytes,2,rep,name=path_patterns,json=pathPatterns,proto3" json:"path_patterns,omitempty"` 256 // List of query parameter names to try to match. 257 // For example: ["parent", "name", "resource.name"] 258 // We extract all the specified query_parameters (case-sensitively). If any 259 // are marked as "required_match" and are not present, this keybuilder fails 260 // to match. If a given parameter appears multiple times (?foo=a&foo=b) we 261 // will report it as a comma-separated string (foo=a,b). 262 QueryParameters []*NameMatcher `protobuf:"bytes,3,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty"` 263 // List of headers to try to match. 264 // We extract all the specified header values (case-insensitively). If any 265 // are marked as "required_match" and are not present, this keybuilder fails 266 // to match. If a given header appears multiple times in the request we will 267 // report it as a comma-separated string, in standard HTTP fashion. 268 Headers []*NameMatcher `protobuf:"bytes,4,rep,name=headers,proto3" json:"headers,omitempty"` 269 // You can optionally set one or more specific key/value pairs to be added to 270 // the key_map. This can be useful to identify which builder built the key, 271 // for example if you are suppressing a lot of information from the URL, but 272 // need to separately cache and request URLs with that content. 273 ConstantKeys map[string]string `protobuf:"bytes,5,rep,name=constant_keys,json=constantKeys,proto3" json:"constant_keys,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 274 } 275 276 func (x *HttpKeyBuilder) Reset() { 277 *x = HttpKeyBuilder{} 278 if protoimpl.UnsafeEnabled { 279 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[2] 280 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 281 ms.StoreMessageInfo(mi) 282 } 283 } 284 285 func (x *HttpKeyBuilder) String() string { 286 return protoimpl.X.MessageStringOf(x) 287 } 288 289 func (*HttpKeyBuilder) ProtoMessage() {} 290 291 func (x *HttpKeyBuilder) ProtoReflect() protoreflect.Message { 292 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[2] 293 if protoimpl.UnsafeEnabled && x != nil { 294 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 295 if ms.LoadMessageInfo() == nil { 296 ms.StoreMessageInfo(mi) 297 } 298 return ms 299 } 300 return mi.MessageOf(x) 301 } 302 303 // Deprecated: Use HttpKeyBuilder.ProtoReflect.Descriptor instead. 304 func (*HttpKeyBuilder) Descriptor() ([]byte, []int) { 305 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{2} 306 } 307 308 func (x *HttpKeyBuilder) GetHostPatterns() []string { 309 if x != nil { 310 return x.HostPatterns 311 } 312 return nil 313 } 314 315 func (x *HttpKeyBuilder) GetPathPatterns() []string { 316 if x != nil { 317 return x.PathPatterns 318 } 319 return nil 320 } 321 322 func (x *HttpKeyBuilder) GetQueryParameters() []*NameMatcher { 323 if x != nil { 324 return x.QueryParameters 325 } 326 return nil 327 } 328 329 func (x *HttpKeyBuilder) GetHeaders() []*NameMatcher { 330 if x != nil { 331 return x.Headers 332 } 333 return nil 334 } 335 336 func (x *HttpKeyBuilder) GetConstantKeys() map[string]string { 337 if x != nil { 338 return x.ConstantKeys 339 } 340 return nil 341 } 342 343 type RouteLookupConfig struct { 344 state protoimpl.MessageState 345 sizeCache protoimpl.SizeCache 346 unknownFields protoimpl.UnknownFields 347 348 // Ordered specifications for constructing keys for HTTP requests. Last 349 // match wins. If no HttpKeyBuilder matches, an empty key_map will be sent to 350 // the lookup service; it should likely reply with a global default route 351 // and raise an alert. 352 HttpKeybuilders []*HttpKeyBuilder `protobuf:"bytes,1,rep,name=http_keybuilders,json=httpKeybuilders,proto3" json:"http_keybuilders,omitempty"` 353 // Unordered specifications for constructing keys for gRPC requests. All 354 // GrpcKeyBuilders on this list must have unique "name" fields so that the 355 // client is free to prebuild a hash map keyed by name. If no GrpcKeyBuilder 356 // matches, an empty key_map will be sent to the lookup service; it should 357 // likely reply with a global default route and raise an alert. 358 GrpcKeybuilders []*GrpcKeyBuilder `protobuf:"bytes,2,rep,name=grpc_keybuilders,json=grpcKeybuilders,proto3" json:"grpc_keybuilders,omitempty"` 359 // The name of the lookup service as a gRPC URI. Typically, this will be 360 // a subdomain of the target, such as "lookup.datastore.googleapis.com". 361 LookupService string `protobuf:"bytes,3,opt,name=lookup_service,json=lookupService,proto3" json:"lookup_service,omitempty"` 362 // Configure a timeout value for lookup service requests. 363 // Defaults to 10 seconds if not specified. 364 LookupServiceTimeout *durationpb.Duration `protobuf:"bytes,4,opt,name=lookup_service_timeout,json=lookupServiceTimeout,proto3" json:"lookup_service_timeout,omitempty"` 365 // How long are responses valid for (like HTTP Cache-Control). 366 // If omitted or zero, the longest valid cache time is used. 367 // This value is clamped to 5 minutes to avoid unflushable bad responses. 368 MaxAge *durationpb.Duration `protobuf:"bytes,5,opt,name=max_age,json=maxAge,proto3" json:"max_age,omitempty"` 369 // After a response has been in the client cache for this amount of time 370 // and is re-requested, start an asynchronous RPC to re-validate it. 371 // This value should be less than max_age by at least the length of a 372 // typical RTT to the Route Lookup Service to fully mask the RTT latency. 373 // If omitted, keys are only re-requested after they have expired. 374 StaleAge *durationpb.Duration `protobuf:"bytes,6,opt,name=stale_age,json=staleAge,proto3" json:"stale_age,omitempty"` 375 // Rough indicator of amount of memory to use for the client cache. Some of 376 // the data structure overhead is not accounted for, so actual memory consumed 377 // will be somewhat greater than this value. If this field is omitted or set 378 // to zero, a client default will be used. The value may be capped to a lower 379 // amount based on client configuration. 380 CacheSizeBytes int64 `protobuf:"varint,7,opt,name=cache_size_bytes,json=cacheSizeBytes,proto3" json:"cache_size_bytes,omitempty"` 381 // This is a list of all the possible targets that can be returned by the 382 // lookup service. If a target not on this list is returned, it will be 383 // treated the same as an unhealthy target. 384 ValidTargets []string `protobuf:"bytes,8,rep,name=valid_targets,json=validTargets,proto3" json:"valid_targets,omitempty"` 385 // This value provides a default target to use if needed. If set, it will be 386 // used if RLS returns an error, times out, or returns an invalid response. 387 // Note that requests can be routed only to a subdomain of the original 388 // target, e.g. "us_east_1.cloudbigtable.googleapis.com". 389 DefaultTarget string `protobuf:"bytes,9,opt,name=default_target,json=defaultTarget,proto3" json:"default_target,omitempty"` 390 } 391 392 func (x *RouteLookupConfig) Reset() { 393 *x = RouteLookupConfig{} 394 if protoimpl.UnsafeEnabled { 395 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[3] 396 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 397 ms.StoreMessageInfo(mi) 398 } 399 } 400 401 func (x *RouteLookupConfig) String() string { 402 return protoimpl.X.MessageStringOf(x) 403 } 404 405 func (*RouteLookupConfig) ProtoMessage() {} 406 407 func (x *RouteLookupConfig) ProtoReflect() protoreflect.Message { 408 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[3] 409 if protoimpl.UnsafeEnabled && x != nil { 410 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 411 if ms.LoadMessageInfo() == nil { 412 ms.StoreMessageInfo(mi) 413 } 414 return ms 415 } 416 return mi.MessageOf(x) 417 } 418 419 // Deprecated: Use RouteLookupConfig.ProtoReflect.Descriptor instead. 420 func (*RouteLookupConfig) Descriptor() ([]byte, []int) { 421 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{3} 422 } 423 424 func (x *RouteLookupConfig) GetHttpKeybuilders() []*HttpKeyBuilder { 425 if x != nil { 426 return x.HttpKeybuilders 427 } 428 return nil 429 } 430 431 func (x *RouteLookupConfig) GetGrpcKeybuilders() []*GrpcKeyBuilder { 432 if x != nil { 433 return x.GrpcKeybuilders 434 } 435 return nil 436 } 437 438 func (x *RouteLookupConfig) GetLookupService() string { 439 if x != nil { 440 return x.LookupService 441 } 442 return "" 443 } 444 445 func (x *RouteLookupConfig) GetLookupServiceTimeout() *durationpb.Duration { 446 if x != nil { 447 return x.LookupServiceTimeout 448 } 449 return nil 450 } 451 452 func (x *RouteLookupConfig) GetMaxAge() *durationpb.Duration { 453 if x != nil { 454 return x.MaxAge 455 } 456 return nil 457 } 458 459 func (x *RouteLookupConfig) GetStaleAge() *durationpb.Duration { 460 if x != nil { 461 return x.StaleAge 462 } 463 return nil 464 } 465 466 func (x *RouteLookupConfig) GetCacheSizeBytes() int64 { 467 if x != nil { 468 return x.CacheSizeBytes 469 } 470 return 0 471 } 472 473 func (x *RouteLookupConfig) GetValidTargets() []string { 474 if x != nil { 475 return x.ValidTargets 476 } 477 return nil 478 } 479 480 func (x *RouteLookupConfig) GetDefaultTarget() string { 481 if x != nil { 482 return x.DefaultTarget 483 } 484 return "" 485 } 486 487 // RouteLookupClusterSpecifier is used in xDS to represent a cluster specifier 488 // plugin for RLS. 489 type RouteLookupClusterSpecifier struct { 490 state protoimpl.MessageState 491 sizeCache protoimpl.SizeCache 492 unknownFields protoimpl.UnknownFields 493 494 // The RLS config for this cluster specifier plugin instance. 495 RouteLookupConfig *RouteLookupConfig `protobuf:"bytes,1,opt,name=route_lookup_config,json=routeLookupConfig,proto3" json:"route_lookup_config,omitempty"` 496 } 497 498 func (x *RouteLookupClusterSpecifier) Reset() { 499 *x = RouteLookupClusterSpecifier{} 500 if protoimpl.UnsafeEnabled { 501 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[4] 502 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 503 ms.StoreMessageInfo(mi) 504 } 505 } 506 507 func (x *RouteLookupClusterSpecifier) String() string { 508 return protoimpl.X.MessageStringOf(x) 509 } 510 511 func (*RouteLookupClusterSpecifier) ProtoMessage() {} 512 513 func (x *RouteLookupClusterSpecifier) ProtoReflect() protoreflect.Message { 514 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[4] 515 if protoimpl.UnsafeEnabled && x != nil { 516 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 517 if ms.LoadMessageInfo() == nil { 518 ms.StoreMessageInfo(mi) 519 } 520 return ms 521 } 522 return mi.MessageOf(x) 523 } 524 525 // Deprecated: Use RouteLookupClusterSpecifier.ProtoReflect.Descriptor instead. 526 func (*RouteLookupClusterSpecifier) Descriptor() ([]byte, []int) { 527 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{4} 528 } 529 530 func (x *RouteLookupClusterSpecifier) GetRouteLookupConfig() *RouteLookupConfig { 531 if x != nil { 532 return x.RouteLookupConfig 533 } 534 return nil 535 } 536 537 // To match, one of the given Name fields must match; the service and method 538 // fields are specified as fixed strings. The service name is required and 539 // includes the proto package name. The method name may be omitted, in 540 // which case any method on the given service is matched. 541 type GrpcKeyBuilder_Name struct { 542 state protoimpl.MessageState 543 sizeCache protoimpl.SizeCache 544 unknownFields protoimpl.UnknownFields 545 546 Service string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"` 547 Method string `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"` 548 } 549 550 func (x *GrpcKeyBuilder_Name) Reset() { 551 *x = GrpcKeyBuilder_Name{} 552 if protoimpl.UnsafeEnabled { 553 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[5] 554 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 555 ms.StoreMessageInfo(mi) 556 } 557 } 558 559 func (x *GrpcKeyBuilder_Name) String() string { 560 return protoimpl.X.MessageStringOf(x) 561 } 562 563 func (*GrpcKeyBuilder_Name) ProtoMessage() {} 564 565 func (x *GrpcKeyBuilder_Name) ProtoReflect() protoreflect.Message { 566 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[5] 567 if protoimpl.UnsafeEnabled && x != nil { 568 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 569 if ms.LoadMessageInfo() == nil { 570 ms.StoreMessageInfo(mi) 571 } 572 return ms 573 } 574 return mi.MessageOf(x) 575 } 576 577 // Deprecated: Use GrpcKeyBuilder_Name.ProtoReflect.Descriptor instead. 578 func (*GrpcKeyBuilder_Name) Descriptor() ([]byte, []int) { 579 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{1, 0} 580 } 581 582 func (x *GrpcKeyBuilder_Name) GetService() string { 583 if x != nil { 584 return x.Service 585 } 586 return "" 587 } 588 589 func (x *GrpcKeyBuilder_Name) GetMethod() string { 590 if x != nil { 591 return x.Method 592 } 593 return "" 594 } 595 596 // If you wish to include the host, service, or method names as keys in the 597 // generated RouteLookupRequest, specify key names to use in the extra_keys 598 // submessage. If a key name is empty, no key will be set for that value. 599 // If this submessage is specified, the normal host/path fields will be left 600 // unset in the RouteLookupRequest. We are deprecating host/path in the 601 // RouteLookupRequest, so services should migrate to the ExtraKeys approach. 602 type GrpcKeyBuilder_ExtraKeys struct { 603 state protoimpl.MessageState 604 sizeCache protoimpl.SizeCache 605 unknownFields protoimpl.UnknownFields 606 607 Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"` 608 Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"` 609 Method string `protobuf:"bytes,3,opt,name=method,proto3" json:"method,omitempty"` 610 } 611 612 func (x *GrpcKeyBuilder_ExtraKeys) Reset() { 613 *x = GrpcKeyBuilder_ExtraKeys{} 614 if protoimpl.UnsafeEnabled { 615 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[6] 616 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 617 ms.StoreMessageInfo(mi) 618 } 619 } 620 621 func (x *GrpcKeyBuilder_ExtraKeys) String() string { 622 return protoimpl.X.MessageStringOf(x) 623 } 624 625 func (*GrpcKeyBuilder_ExtraKeys) ProtoMessage() {} 626 627 func (x *GrpcKeyBuilder_ExtraKeys) ProtoReflect() protoreflect.Message { 628 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[6] 629 if protoimpl.UnsafeEnabled && x != nil { 630 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 631 if ms.LoadMessageInfo() == nil { 632 ms.StoreMessageInfo(mi) 633 } 634 return ms 635 } 636 return mi.MessageOf(x) 637 } 638 639 // Deprecated: Use GrpcKeyBuilder_ExtraKeys.ProtoReflect.Descriptor instead. 640 func (*GrpcKeyBuilder_ExtraKeys) Descriptor() ([]byte, []int) { 641 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{1, 1} 642 } 643 644 func (x *GrpcKeyBuilder_ExtraKeys) GetHost() string { 645 if x != nil { 646 return x.Host 647 } 648 return "" 649 } 650 651 func (x *GrpcKeyBuilder_ExtraKeys) GetService() string { 652 if x != nil { 653 return x.Service 654 } 655 return "" 656 } 657 658 func (x *GrpcKeyBuilder_ExtraKeys) GetMethod() string { 659 if x != nil { 660 return x.Method 661 } 662 return "" 663 } 664 665 var File_grpc_lookup_v1_rls_config_proto protoreflect.FileDescriptor 666 667 var file_grpc_lookup_v1_rls_config_proto_rawDesc = []byte{ 668 0x0a, 0x1f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2f, 0x76, 0x31, 669 0x2f, 0x72, 0x6c, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 670 0x6f, 0x12, 0x0e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 671 0x31, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 672 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 673 0x6f, 0x22, 0x5c, 0x0a, 0x0b, 0x4e, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 674 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 675 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 676 0x09, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 677 0x69, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 678 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x22, 679 0xf0, 0x03, 0x0a, 0x0e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 680 0x65, 0x72, 0x12, 0x39, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 681 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 682 0x76, 0x31, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 683 0x72, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x47, 0x0a, 684 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 685 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 686 0x76, 0x31, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 687 0x72, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x09, 0x65, 0x78, 0x74, 688 0x72, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x35, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 689 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 690 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 691 0x63, 0x68, 0x65, 0x72, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x55, 0x0a, 692 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x04, 693 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 694 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 695 0x6c, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4b, 0x65, 0x79, 696 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 697 0x4b, 0x65, 0x79, 0x73, 0x1a, 0x38, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 698 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 699 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 700 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x1a, 0x51, 701 0x0a, 0x09, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 702 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 703 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 704 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 705 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 706 0x64, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4b, 0x65, 0x79, 707 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 708 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 709 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 710 0x38, 0x01, 0x22, 0xf1, 0x02, 0x0a, 0x0e, 0x48, 0x74, 0x74, 0x70, 0x4b, 0x65, 0x79, 0x42, 0x75, 711 0x69, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x61, 712 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x6f, 713 0x73, 0x74, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 714 0x74, 0x68, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 715 0x09, 0x52, 0x0c, 0x70, 0x61, 0x74, 0x68, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x12, 716 0x46, 0x0a, 0x10, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 717 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 718 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x4d, 719 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x52, 0x0f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 720 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x35, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 721 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 722 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x4d, 0x61, 723 0x74, 0x63, 0x68, 0x65, 0x72, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x55, 724 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 725 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 726 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x4b, 0x65, 0x79, 0x42, 0x75, 727 0x69, 0x6c, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4b, 0x65, 728 0x79, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 729 0x74, 0x4b, 0x65, 0x79, 0x73, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 730 0x74, 0x4b, 0x65, 0x79, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 731 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 732 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 733 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa6, 0x04, 0x0a, 0x11, 0x52, 0x6f, 0x75, 0x74, 0x65, 734 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 0x10, 735 0x68, 0x74, 0x74, 0x70, 0x5f, 0x6b, 0x65, 0x79, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 736 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 737 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x4b, 0x65, 0x79, 0x42, 738 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x52, 0x0f, 0x68, 0x74, 0x74, 0x70, 0x4b, 0x65, 0x79, 0x62, 739 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x12, 0x49, 0x0a, 0x10, 0x67, 0x72, 0x70, 0x63, 0x5f, 740 0x6b, 0x65, 0x79, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 741 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 742 0x76, 0x31, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 743 0x72, 0x52, 0x0f, 0x67, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 744 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x5f, 0x73, 0x65, 0x72, 745 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x6f, 0x6f, 0x6b, 746 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4f, 0x0a, 0x16, 0x6c, 0x6f, 0x6f, 747 0x6b, 0x75, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 748 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 749 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 750 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 751 0x69, 0x63, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x6d, 0x61, 752 0x78, 0x5f, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 753 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 754 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x41, 0x67, 0x65, 0x12, 0x36, 755 0x0a, 0x09, 0x73, 0x74, 0x61, 0x6c, 0x65, 0x5f, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 756 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 757 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x73, 0x74, 758 0x61, 0x6c, 0x65, 0x41, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 759 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 760 0x52, 0x0e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 761 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 762 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x61, 763 0x72, 0x67, 0x65, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 764 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 765 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4a, 0x04, 0x08, 0x0a, 766 0x10, 0x0b, 0x52, 0x1b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 767 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x22, 768 0x70, 0x0a, 0x1b, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x43, 0x6c, 769 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x51, 770 0x0a, 0x13, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x5f, 0x63, 771 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 772 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x75, 773 0x74, 0x65, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x11, 774 0x72, 0x6f, 0x75, 0x74, 0x65, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 775 0x67, 0x42, 0x53, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 776 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x52, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 777 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 778 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x72, 0x70, 0x63, 779 0x2f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x6c, 0x6f, 0x6f, 780 0x6b, 0x75, 0x70, 0x5f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 781 } 782 783 var ( 784 file_grpc_lookup_v1_rls_config_proto_rawDescOnce sync.Once 785 file_grpc_lookup_v1_rls_config_proto_rawDescData = file_grpc_lookup_v1_rls_config_proto_rawDesc 786 ) 787 788 func file_grpc_lookup_v1_rls_config_proto_rawDescGZIP() []byte { 789 file_grpc_lookup_v1_rls_config_proto_rawDescOnce.Do(func() { 790 file_grpc_lookup_v1_rls_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_grpc_lookup_v1_rls_config_proto_rawDescData) 791 }) 792 return file_grpc_lookup_v1_rls_config_proto_rawDescData 793 } 794 795 var file_grpc_lookup_v1_rls_config_proto_msgTypes = make([]protoimpl.MessageInfo, 9) 796 var file_grpc_lookup_v1_rls_config_proto_goTypes = []interface{}{ 797 (*NameMatcher)(nil), // 0: grpc.lookup.v1.NameMatcher 798 (*GrpcKeyBuilder)(nil), // 1: grpc.lookup.v1.GrpcKeyBuilder 799 (*HttpKeyBuilder)(nil), // 2: grpc.lookup.v1.HttpKeyBuilder 800 (*RouteLookupConfig)(nil), // 3: grpc.lookup.v1.RouteLookupConfig 801 (*RouteLookupClusterSpecifier)(nil), // 4: grpc.lookup.v1.RouteLookupClusterSpecifier 802 (*GrpcKeyBuilder_Name)(nil), // 5: grpc.lookup.v1.GrpcKeyBuilder.Name 803 (*GrpcKeyBuilder_ExtraKeys)(nil), // 6: grpc.lookup.v1.GrpcKeyBuilder.ExtraKeys 804 nil, // 7: grpc.lookup.v1.GrpcKeyBuilder.ConstantKeysEntry 805 nil, // 8: grpc.lookup.v1.HttpKeyBuilder.ConstantKeysEntry 806 (*durationpb.Duration)(nil), // 9: google.protobuf.Duration 807 } 808 var file_grpc_lookup_v1_rls_config_proto_depIdxs = []int32{ 809 5, // 0: grpc.lookup.v1.GrpcKeyBuilder.names:type_name -> grpc.lookup.v1.GrpcKeyBuilder.Name 810 6, // 1: grpc.lookup.v1.GrpcKeyBuilder.extra_keys:type_name -> grpc.lookup.v1.GrpcKeyBuilder.ExtraKeys 811 0, // 2: grpc.lookup.v1.GrpcKeyBuilder.headers:type_name -> grpc.lookup.v1.NameMatcher 812 7, // 3: grpc.lookup.v1.GrpcKeyBuilder.constant_keys:type_name -> grpc.lookup.v1.GrpcKeyBuilder.ConstantKeysEntry 813 0, // 4: grpc.lookup.v1.HttpKeyBuilder.query_parameters:type_name -> grpc.lookup.v1.NameMatcher 814 0, // 5: grpc.lookup.v1.HttpKeyBuilder.headers:type_name -> grpc.lookup.v1.NameMatcher 815 8, // 6: grpc.lookup.v1.HttpKeyBuilder.constant_keys:type_name -> grpc.lookup.v1.HttpKeyBuilder.ConstantKeysEntry 816 2, // 7: grpc.lookup.v1.RouteLookupConfig.http_keybuilders:type_name -> grpc.lookup.v1.HttpKeyBuilder 817 1, // 8: grpc.lookup.v1.RouteLookupConfig.grpc_keybuilders:type_name -> grpc.lookup.v1.GrpcKeyBuilder 818 9, // 9: grpc.lookup.v1.RouteLookupConfig.lookup_service_timeout:type_name -> google.protobuf.Duration 819 9, // 10: grpc.lookup.v1.RouteLookupConfig.max_age:type_name -> google.protobuf.Duration 820 9, // 11: grpc.lookup.v1.RouteLookupConfig.stale_age:type_name -> google.protobuf.Duration 821 3, // 12: grpc.lookup.v1.RouteLookupClusterSpecifier.route_lookup_config:type_name -> grpc.lookup.v1.RouteLookupConfig 822 13, // [13:13] is the sub-list for method output_type 823 13, // [13:13] is the sub-list for method input_type 824 13, // [13:13] is the sub-list for extension type_name 825 13, // [13:13] is the sub-list for extension extendee 826 0, // [0:13] is the sub-list for field type_name 827 } 828 829 func init() { file_grpc_lookup_v1_rls_config_proto_init() } 830 func file_grpc_lookup_v1_rls_config_proto_init() { 831 if File_grpc_lookup_v1_rls_config_proto != nil { 832 return 833 } 834 if !protoimpl.UnsafeEnabled { 835 file_grpc_lookup_v1_rls_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 836 switch v := v.(*NameMatcher); i { 837 case 0: 838 return &v.state 839 case 1: 840 return &v.sizeCache 841 case 2: 842 return &v.unknownFields 843 default: 844 return nil 845 } 846 } 847 file_grpc_lookup_v1_rls_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 848 switch v := v.(*GrpcKeyBuilder); i { 849 case 0: 850 return &v.state 851 case 1: 852 return &v.sizeCache 853 case 2: 854 return &v.unknownFields 855 default: 856 return nil 857 } 858 } 859 file_grpc_lookup_v1_rls_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 860 switch v := v.(*HttpKeyBuilder); i { 861 case 0: 862 return &v.state 863 case 1: 864 return &v.sizeCache 865 case 2: 866 return &v.unknownFields 867 default: 868 return nil 869 } 870 } 871 file_grpc_lookup_v1_rls_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 872 switch v := v.(*RouteLookupConfig); i { 873 case 0: 874 return &v.state 875 case 1: 876 return &v.sizeCache 877 case 2: 878 return &v.unknownFields 879 default: 880 return nil 881 } 882 } 883 file_grpc_lookup_v1_rls_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 884 switch v := v.(*RouteLookupClusterSpecifier); i { 885 case 0: 886 return &v.state 887 case 1: 888 return &v.sizeCache 889 case 2: 890 return &v.unknownFields 891 default: 892 return nil 893 } 894 } 895 file_grpc_lookup_v1_rls_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 896 switch v := v.(*GrpcKeyBuilder_Name); i { 897 case 0: 898 return &v.state 899 case 1: 900 return &v.sizeCache 901 case 2: 902 return &v.unknownFields 903 default: 904 return nil 905 } 906 } 907 file_grpc_lookup_v1_rls_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 908 switch v := v.(*GrpcKeyBuilder_ExtraKeys); i { 909 case 0: 910 return &v.state 911 case 1: 912 return &v.sizeCache 913 case 2: 914 return &v.unknownFields 915 default: 916 return nil 917 } 918 } 919 } 920 type x struct{} 921 out := protoimpl.TypeBuilder{ 922 File: protoimpl.DescBuilder{ 923 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 924 RawDescriptor: file_grpc_lookup_v1_rls_config_proto_rawDesc, 925 NumEnums: 0, 926 NumMessages: 9, 927 NumExtensions: 0, 928 NumServices: 0, 929 }, 930 GoTypes: file_grpc_lookup_v1_rls_config_proto_goTypes, 931 DependencyIndexes: file_grpc_lookup_v1_rls_config_proto_depIdxs, 932 MessageInfos: file_grpc_lookup_v1_rls_config_proto_msgTypes, 933 }.Build() 934 File_grpc_lookup_v1_rls_config_proto = out.File 935 file_grpc_lookup_v1_rls_config_proto_rawDesc = nil 936 file_grpc_lookup_v1_rls_config_proto_goTypes = nil 937 file_grpc_lookup_v1_rls_config_proto_depIdxs = nil 938 }