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 21package grpc_lookup_v1 22 23import ( 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 32const ( 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. 41const _ = 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. 47type 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 65func (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 74func (x *NameMatcher) String() string { 75 return protoimpl.X.MessageStringOf(x) 76} 77 78func (*NameMatcher) ProtoMessage() {} 79 80func (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. 93func (*NameMatcher) Descriptor() ([]byte, []int) { 94 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{0} 95} 96 97func (x *NameMatcher) GetKey() string { 98 if x != nil { 99 return x.Key 100 } 101 return "" 102} 103 104func (x *NameMatcher) GetNames() []string { 105 if x != nil { 106 return x.Names 107 } 108 return nil 109} 110 111func (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. 119type 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 137func (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 146func (x *GrpcKeyBuilder) String() string { 147 return protoimpl.X.MessageStringOf(x) 148} 149 150func (*GrpcKeyBuilder) ProtoMessage() {} 151 152func (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. 165func (*GrpcKeyBuilder) Descriptor() ([]byte, []int) { 166 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{1} 167} 168 169func (x *GrpcKeyBuilder) GetNames() []*GrpcKeyBuilder_Name { 170 if x != nil { 171 return x.Names 172 } 173 return nil 174} 175 176func (x *GrpcKeyBuilder) GetExtraKeys() *GrpcKeyBuilder_ExtraKeys { 177 if x != nil { 178 return x.ExtraKeys 179 } 180 return nil 181} 182 183func (x *GrpcKeyBuilder) GetHeaders() []*NameMatcher { 184 if x != nil { 185 return x.Headers 186 } 187 return nil 188} 189 190func (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. 213type 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 278func (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 287func (x *HttpKeyBuilder) String() string { 288 return protoimpl.X.MessageStringOf(x) 289} 290 291func (*HttpKeyBuilder) ProtoMessage() {} 292 293func (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. 306func (*HttpKeyBuilder) Descriptor() ([]byte, []int) { 307 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{2} 308} 309 310func (x *HttpKeyBuilder) GetHostPatterns() []string { 311 if x != nil { 312 return x.HostPatterns 313 } 314 return nil 315} 316 317func (x *HttpKeyBuilder) GetPathPatterns() []string { 318 if x != nil { 319 return x.PathPatterns 320 } 321 return nil 322} 323 324func (x *HttpKeyBuilder) GetQueryParameters() []*NameMatcher { 325 if x != nil { 326 return x.QueryParameters 327 } 328 return nil 329} 330 331func (x *HttpKeyBuilder) GetHeaders() []*NameMatcher { 332 if x != nil { 333 return x.Headers 334 } 335 return nil 336} 337 338func (x *HttpKeyBuilder) GetConstantKeys() map[string]string { 339 if x != nil { 340 return x.ConstantKeys 341 } 342 return nil 343} 344 345type 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 394func (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 403func (x *RouteLookupConfig) String() string { 404 return protoimpl.X.MessageStringOf(x) 405} 406 407func (*RouteLookupConfig) ProtoMessage() {} 408 409func (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. 422func (*RouteLookupConfig) Descriptor() ([]byte, []int) { 423 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{3} 424} 425 426func (x *RouteLookupConfig) GetHttpKeybuilders() []*HttpKeyBuilder { 427 if x != nil { 428 return x.HttpKeybuilders 429 } 430 return nil 431} 432 433func (x *RouteLookupConfig) GetGrpcKeybuilders() []*GrpcKeyBuilder { 434 if x != nil { 435 return x.GrpcKeybuilders 436 } 437 return nil 438} 439 440func (x *RouteLookupConfig) GetLookupService() string { 441 if x != nil { 442 return x.LookupService 443 } 444 return "" 445} 446 447func (x *RouteLookupConfig) GetLookupServiceTimeout() *durationpb.Duration { 448 if x != nil { 449 return x.LookupServiceTimeout 450 } 451 return nil 452} 453 454func (x *RouteLookupConfig) GetMaxAge() *durationpb.Duration { 455 if x != nil { 456 return x.MaxAge 457 } 458 return nil 459} 460 461func (x *RouteLookupConfig) GetStaleAge() *durationpb.Duration { 462 if x != nil { 463 return x.StaleAge 464 } 465 return nil 466} 467 468func (x *RouteLookupConfig) GetCacheSizeBytes() int64 { 469 if x != nil { 470 return x.CacheSizeBytes 471 } 472 return 0 473} 474 475func (x *RouteLookupConfig) GetValidTargets() []string { 476 if x != nil { 477 return x.ValidTargets 478 } 479 return nil 480} 481 482func (x *RouteLookupConfig) GetDefaultTarget() string { 483 if x != nil { 484 return x.DefaultTarget 485 } 486 return "" 487} 488 489// To match, one of the given Name fields must match; the service and method 490// fields are specified as fixed strings. The service name is required and 491// includes the proto package name. The method name may be omitted, in 492// which case any method on the given service is matched. 493type GrpcKeyBuilder_Name struct { 494 state protoimpl.MessageState 495 sizeCache protoimpl.SizeCache 496 unknownFields protoimpl.UnknownFields 497 498 Service string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"` 499 Method string `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"` 500} 501 502func (x *GrpcKeyBuilder_Name) Reset() { 503 *x = GrpcKeyBuilder_Name{} 504 if protoimpl.UnsafeEnabled { 505 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[4] 506 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 507 ms.StoreMessageInfo(mi) 508 } 509} 510 511func (x *GrpcKeyBuilder_Name) String() string { 512 return protoimpl.X.MessageStringOf(x) 513} 514 515func (*GrpcKeyBuilder_Name) ProtoMessage() {} 516 517func (x *GrpcKeyBuilder_Name) ProtoReflect() protoreflect.Message { 518 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[4] 519 if protoimpl.UnsafeEnabled && x != nil { 520 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 521 if ms.LoadMessageInfo() == nil { 522 ms.StoreMessageInfo(mi) 523 } 524 return ms 525 } 526 return mi.MessageOf(x) 527} 528 529// Deprecated: Use GrpcKeyBuilder_Name.ProtoReflect.Descriptor instead. 530func (*GrpcKeyBuilder_Name) Descriptor() ([]byte, []int) { 531 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{1, 0} 532} 533 534func (x *GrpcKeyBuilder_Name) GetService() string { 535 if x != nil { 536 return x.Service 537 } 538 return "" 539} 540 541func (x *GrpcKeyBuilder_Name) GetMethod() string { 542 if x != nil { 543 return x.Method 544 } 545 return "" 546} 547 548// If you wish to include the host, service, or method names as keys in the 549// generated RouteLookupRequest, specify key names to use in the extra_keys 550// submessage. If a key name is empty, no key will be set for that value. 551// If this submessage is specified, the normal host/path fields will be left 552// unset in the RouteLookupRequest. We are deprecating host/path in the 553// RouteLookupRequest, so services should migrate to the ExtraKeys approach. 554type GrpcKeyBuilder_ExtraKeys struct { 555 state protoimpl.MessageState 556 sizeCache protoimpl.SizeCache 557 unknownFields protoimpl.UnknownFields 558 559 Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"` 560 Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"` 561 Method string `protobuf:"bytes,3,opt,name=method,proto3" json:"method,omitempty"` 562} 563 564func (x *GrpcKeyBuilder_ExtraKeys) Reset() { 565 *x = GrpcKeyBuilder_ExtraKeys{} 566 if protoimpl.UnsafeEnabled { 567 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[5] 568 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 569 ms.StoreMessageInfo(mi) 570 } 571} 572 573func (x *GrpcKeyBuilder_ExtraKeys) String() string { 574 return protoimpl.X.MessageStringOf(x) 575} 576 577func (*GrpcKeyBuilder_ExtraKeys) ProtoMessage() {} 578 579func (x *GrpcKeyBuilder_ExtraKeys) ProtoReflect() protoreflect.Message { 580 mi := &file_grpc_lookup_v1_rls_config_proto_msgTypes[5] 581 if protoimpl.UnsafeEnabled && x != nil { 582 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 583 if ms.LoadMessageInfo() == nil { 584 ms.StoreMessageInfo(mi) 585 } 586 return ms 587 } 588 return mi.MessageOf(x) 589} 590 591// Deprecated: Use GrpcKeyBuilder_ExtraKeys.ProtoReflect.Descriptor instead. 592func (*GrpcKeyBuilder_ExtraKeys) Descriptor() ([]byte, []int) { 593 return file_grpc_lookup_v1_rls_config_proto_rawDescGZIP(), []int{1, 1} 594} 595 596func (x *GrpcKeyBuilder_ExtraKeys) GetHost() string { 597 if x != nil { 598 return x.Host 599 } 600 return "" 601} 602 603func (x *GrpcKeyBuilder_ExtraKeys) GetService() string { 604 if x != nil { 605 return x.Service 606 } 607 return "" 608} 609 610func (x *GrpcKeyBuilder_ExtraKeys) GetMethod() string { 611 if x != nil { 612 return x.Method 613 } 614 return "" 615} 616 617var File_grpc_lookup_v1_rls_config_proto protoreflect.FileDescriptor 618 619var file_grpc_lookup_v1_rls_config_proto_rawDesc = []byte{ 620 0x0a, 0x1f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2f, 0x76, 0x31, 621 0x2f, 0x72, 0x6c, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 622 0x6f, 0x12, 0x0e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 623 0x31, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 624 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 625 0x6f, 0x22, 0x5c, 0x0a, 0x0b, 0x4e, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 626 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 627 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 628 0x09, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 629 0x69, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 630 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x22, 631 0xf0, 0x03, 0x0a, 0x0e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 632 0x65, 0x72, 0x12, 0x39, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 633 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 634 0x76, 0x31, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 635 0x72, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x47, 0x0a, 636 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 637 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 638 0x76, 0x31, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 639 0x72, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x09, 0x65, 0x78, 0x74, 640 0x72, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x35, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 641 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 642 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 643 0x63, 0x68, 0x65, 0x72, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x55, 0x0a, 644 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x04, 645 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 646 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 647 0x6c, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4b, 0x65, 0x79, 648 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 649 0x4b, 0x65, 0x79, 0x73, 0x1a, 0x38, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 650 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 651 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 652 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x1a, 0x51, 653 0x0a, 0x09, 0x45, 0x78, 0x74, 0x72, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 654 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 655 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 656 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 657 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 658 0x64, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4b, 0x65, 0x79, 659 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 660 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 661 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 662 0x38, 0x01, 0x22, 0xf1, 0x02, 0x0a, 0x0e, 0x48, 0x74, 0x74, 0x70, 0x4b, 0x65, 0x79, 0x42, 0x75, 663 0x69, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x61, 664 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x6f, 665 0x73, 0x74, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 666 0x74, 0x68, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 667 0x09, 0x52, 0x0c, 0x70, 0x61, 0x74, 0x68, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x12, 668 0x46, 0x0a, 0x10, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 669 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 670 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x4d, 671 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x52, 0x0f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 672 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x35, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 673 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 674 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x4d, 0x61, 675 0x74, 0x63, 0x68, 0x65, 0x72, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x55, 676 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 677 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 678 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x4b, 0x65, 0x79, 0x42, 0x75, 679 0x69, 0x6c, 0x64, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x4b, 0x65, 680 0x79, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 681 0x74, 0x4b, 0x65, 0x79, 0x73, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 682 0x74, 0x4b, 0x65, 0x79, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 683 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 684 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 685 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa6, 0x04, 0x0a, 0x11, 0x52, 0x6f, 0x75, 0x74, 0x65, 686 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 0x10, 687 0x68, 0x74, 0x74, 0x70, 0x5f, 0x6b, 0x65, 0x79, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 688 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 689 0x6f, 0x6b, 0x75, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x4b, 0x65, 0x79, 0x42, 690 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x52, 0x0f, 0x68, 0x74, 0x74, 0x70, 0x4b, 0x65, 0x79, 0x62, 691 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x12, 0x49, 0x0a, 0x10, 0x67, 0x72, 0x70, 0x63, 0x5f, 692 0x6b, 0x65, 0x79, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 693 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2e, 694 0x76, 0x31, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 695 0x72, 0x52, 0x0f, 0x67, 0x72, 0x70, 0x63, 0x4b, 0x65, 0x79, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 696 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x5f, 0x73, 0x65, 0x72, 697 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x6f, 0x6f, 0x6b, 698 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4f, 0x0a, 0x16, 0x6c, 0x6f, 0x6f, 699 0x6b, 0x75, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 700 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 701 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 702 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x53, 0x65, 0x72, 0x76, 703 0x69, 0x63, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x6d, 0x61, 704 0x78, 0x5f, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 705 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 706 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x41, 0x67, 0x65, 0x12, 0x36, 707 0x0a, 0x09, 0x73, 0x74, 0x61, 0x6c, 0x65, 0x5f, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 708 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 709 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x73, 0x74, 710 0x61, 0x6c, 0x65, 0x41, 0x67, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 711 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 712 0x52, 0x0e, 0x63, 0x61, 0x63, 0x68, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 713 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 714 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x61, 715 0x72, 0x67, 0x65, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 716 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 717 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4a, 0x04, 0x08, 0x0a, 718 0x10, 0x0b, 0x52, 0x1b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x72, 0x6f, 0x63, 719 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x42, 720 0x53, 0x0a, 0x11, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 721 0x70, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x52, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 722 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 723 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x6c, 724 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 725 0x70, 0x5f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 726} 727 728var ( 729 file_grpc_lookup_v1_rls_config_proto_rawDescOnce sync.Once 730 file_grpc_lookup_v1_rls_config_proto_rawDescData = file_grpc_lookup_v1_rls_config_proto_rawDesc 731) 732 733func file_grpc_lookup_v1_rls_config_proto_rawDescGZIP() []byte { 734 file_grpc_lookup_v1_rls_config_proto_rawDescOnce.Do(func() { 735 file_grpc_lookup_v1_rls_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_grpc_lookup_v1_rls_config_proto_rawDescData) 736 }) 737 return file_grpc_lookup_v1_rls_config_proto_rawDescData 738} 739 740var file_grpc_lookup_v1_rls_config_proto_msgTypes = make([]protoimpl.MessageInfo, 8) 741var file_grpc_lookup_v1_rls_config_proto_goTypes = []interface{}{ 742 (*NameMatcher)(nil), // 0: grpc.lookup.v1.NameMatcher 743 (*GrpcKeyBuilder)(nil), // 1: grpc.lookup.v1.GrpcKeyBuilder 744 (*HttpKeyBuilder)(nil), // 2: grpc.lookup.v1.HttpKeyBuilder 745 (*RouteLookupConfig)(nil), // 3: grpc.lookup.v1.RouteLookupConfig 746 (*GrpcKeyBuilder_Name)(nil), // 4: grpc.lookup.v1.GrpcKeyBuilder.Name 747 (*GrpcKeyBuilder_ExtraKeys)(nil), // 5: grpc.lookup.v1.GrpcKeyBuilder.ExtraKeys 748 nil, // 6: grpc.lookup.v1.GrpcKeyBuilder.ConstantKeysEntry 749 nil, // 7: grpc.lookup.v1.HttpKeyBuilder.ConstantKeysEntry 750 (*durationpb.Duration)(nil), // 8: google.protobuf.Duration 751} 752var file_grpc_lookup_v1_rls_config_proto_depIdxs = []int32{ 753 4, // 0: grpc.lookup.v1.GrpcKeyBuilder.names:type_name -> grpc.lookup.v1.GrpcKeyBuilder.Name 754 5, // 1: grpc.lookup.v1.GrpcKeyBuilder.extra_keys:type_name -> grpc.lookup.v1.GrpcKeyBuilder.ExtraKeys 755 0, // 2: grpc.lookup.v1.GrpcKeyBuilder.headers:type_name -> grpc.lookup.v1.NameMatcher 756 6, // 3: grpc.lookup.v1.GrpcKeyBuilder.constant_keys:type_name -> grpc.lookup.v1.GrpcKeyBuilder.ConstantKeysEntry 757 0, // 4: grpc.lookup.v1.HttpKeyBuilder.query_parameters:type_name -> grpc.lookup.v1.NameMatcher 758 0, // 5: grpc.lookup.v1.HttpKeyBuilder.headers:type_name -> grpc.lookup.v1.NameMatcher 759 7, // 6: grpc.lookup.v1.HttpKeyBuilder.constant_keys:type_name -> grpc.lookup.v1.HttpKeyBuilder.ConstantKeysEntry 760 2, // 7: grpc.lookup.v1.RouteLookupConfig.http_keybuilders:type_name -> grpc.lookup.v1.HttpKeyBuilder 761 1, // 8: grpc.lookup.v1.RouteLookupConfig.grpc_keybuilders:type_name -> grpc.lookup.v1.GrpcKeyBuilder 762 8, // 9: grpc.lookup.v1.RouteLookupConfig.lookup_service_timeout:type_name -> google.protobuf.Duration 763 8, // 10: grpc.lookup.v1.RouteLookupConfig.max_age:type_name -> google.protobuf.Duration 764 8, // 11: grpc.lookup.v1.RouteLookupConfig.stale_age:type_name -> google.protobuf.Duration 765 12, // [12:12] is the sub-list for method output_type 766 12, // [12:12] is the sub-list for method input_type 767 12, // [12:12] is the sub-list for extension type_name 768 12, // [12:12] is the sub-list for extension extendee 769 0, // [0:12] is the sub-list for field type_name 770} 771 772func init() { file_grpc_lookup_v1_rls_config_proto_init() } 773func file_grpc_lookup_v1_rls_config_proto_init() { 774 if File_grpc_lookup_v1_rls_config_proto != nil { 775 return 776 } 777 if !protoimpl.UnsafeEnabled { 778 file_grpc_lookup_v1_rls_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 779 switch v := v.(*NameMatcher); i { 780 case 0: 781 return &v.state 782 case 1: 783 return &v.sizeCache 784 case 2: 785 return &v.unknownFields 786 default: 787 return nil 788 } 789 } 790 file_grpc_lookup_v1_rls_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 791 switch v := v.(*GrpcKeyBuilder); i { 792 case 0: 793 return &v.state 794 case 1: 795 return &v.sizeCache 796 case 2: 797 return &v.unknownFields 798 default: 799 return nil 800 } 801 } 802 file_grpc_lookup_v1_rls_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 803 switch v := v.(*HttpKeyBuilder); i { 804 case 0: 805 return &v.state 806 case 1: 807 return &v.sizeCache 808 case 2: 809 return &v.unknownFields 810 default: 811 return nil 812 } 813 } 814 file_grpc_lookup_v1_rls_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 815 switch v := v.(*RouteLookupConfig); i { 816 case 0: 817 return &v.state 818 case 1: 819 return &v.sizeCache 820 case 2: 821 return &v.unknownFields 822 default: 823 return nil 824 } 825 } 826 file_grpc_lookup_v1_rls_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 827 switch v := v.(*GrpcKeyBuilder_Name); i { 828 case 0: 829 return &v.state 830 case 1: 831 return &v.sizeCache 832 case 2: 833 return &v.unknownFields 834 default: 835 return nil 836 } 837 } 838 file_grpc_lookup_v1_rls_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 839 switch v := v.(*GrpcKeyBuilder_ExtraKeys); i { 840 case 0: 841 return &v.state 842 case 1: 843 return &v.sizeCache 844 case 2: 845 return &v.unknownFields 846 default: 847 return nil 848 } 849 } 850 } 851 type x struct{} 852 out := protoimpl.TypeBuilder{ 853 File: protoimpl.DescBuilder{ 854 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 855 RawDescriptor: file_grpc_lookup_v1_rls_config_proto_rawDesc, 856 NumEnums: 0, 857 NumMessages: 8, 858 NumExtensions: 0, 859 NumServices: 0, 860 }, 861 GoTypes: file_grpc_lookup_v1_rls_config_proto_goTypes, 862 DependencyIndexes: file_grpc_lookup_v1_rls_config_proto_depIdxs, 863 MessageInfos: file_grpc_lookup_v1_rls_config_proto_msgTypes, 864 }.Build() 865 File_grpc_lookup_v1_rls_config_proto = out.File 866 file_grpc_lookup_v1_rls_config_proto_rawDesc = nil 867 file_grpc_lookup_v1_rls_config_proto_goTypes = nil 868 file_grpc_lookup_v1_rls_config_proto_depIdxs = nil 869} 870