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