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