1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: grpc/rls/grpc_lookup_v1/rls_config.proto 3 4package grpc_lookup_v1 5 6import ( 7 fmt "fmt" 8 proto "github.com/golang/protobuf/proto" 9 duration "github.com/golang/protobuf/ptypes/duration" 10 math "math" 11) 12 13// Reference imports to suppress errors if they are not otherwise used. 14var _ = proto.Marshal 15var _ = fmt.Errorf 16var _ = math.Inf 17 18// This is a compile-time assertion to ensure that this generated file 19// is compatible with the proto package it is being compiled against. 20// A compilation error at this line likely means your copy of the 21// proto package needs to be updated. 22const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 23 24// Specify how to process a request when not already in the cache. 25type RouteLookupConfig_RequestProcessingStrategy int32 26 27const ( 28 RouteLookupConfig_STRATEGY_UNSPECIFIED RouteLookupConfig_RequestProcessingStrategy = 0 29 // Query the RLS and process the request using target returned by the 30 // lookup. The target will then be cached and used for processing 31 // subsequent requests for the same key. Any errors during lookup service 32 // processing will fall back to default target for request processing. 33 RouteLookupConfig_SYNC_LOOKUP_DEFAULT_TARGET_ON_ERROR RouteLookupConfig_RequestProcessingStrategy = 1 34 // Query the RLS and process the request using target returned by the 35 // lookup. The target will then be cached and used for processing 36 // subsequent requests for the same key. Any errors during lookup service 37 // processing will return an error back to the client. Services with 38 // strict regional routing requirements should use this strategy. 39 RouteLookupConfig_SYNC_LOOKUP_CLIENT_SEES_ERROR RouteLookupConfig_RequestProcessingStrategy = 2 40 // Query the RLS asynchronously but respond with the default target. The 41 // target in the lookup response will then be cached and used for 42 // subsequent requests. Services with strict latency requirements (but not 43 // strict regional routing requirements) should use this strategy. 44 RouteLookupConfig_ASYNC_LOOKUP_DEFAULT_TARGET_ON_MISS RouteLookupConfig_RequestProcessingStrategy = 3 45) 46 47var RouteLookupConfig_RequestProcessingStrategy_name = map[int32]string{ 48 0: "STRATEGY_UNSPECIFIED", 49 1: "SYNC_LOOKUP_DEFAULT_TARGET_ON_ERROR", 50 2: "SYNC_LOOKUP_CLIENT_SEES_ERROR", 51 3: "ASYNC_LOOKUP_DEFAULT_TARGET_ON_MISS", 52} 53 54var RouteLookupConfig_RequestProcessingStrategy_value = map[string]int32{ 55 "STRATEGY_UNSPECIFIED": 0, 56 "SYNC_LOOKUP_DEFAULT_TARGET_ON_ERROR": 1, 57 "SYNC_LOOKUP_CLIENT_SEES_ERROR": 2, 58 "ASYNC_LOOKUP_DEFAULT_TARGET_ON_MISS": 3, 59} 60 61func (x RouteLookupConfig_RequestProcessingStrategy) String() string { 62 return proto.EnumName(RouteLookupConfig_RequestProcessingStrategy_name, int32(x)) 63} 64 65func (RouteLookupConfig_RequestProcessingStrategy) EnumDescriptor() ([]byte, []int) { 66 return fileDescriptor_f013e3228551a7a8, []int{3, 0} 67} 68 69// Extract a key based on a given name (e.g. header name or query parameter 70// name). The name must match one of the names listed in the "name" field. If 71// the "required_match" field is true, one of the specified names must be 72// present for the keybuilder to match. 73type NameMatcher struct { 74 // The name that will be used in the RLS key_map to refer to this value. 75 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 76 // Ordered list of names (headers or query parameter names) that can supply 77 // this value; the first one with a non-empty value is used. 78 Names []string `protobuf:"bytes,2,rep,name=names,proto3" json:"names,omitempty"` 79 // If true, make this extraction required; the key builder will not match 80 // if no value is found. 81 RequiredMatch bool `protobuf:"varint,3,opt,name=required_match,json=requiredMatch,proto3" json:"required_match,omitempty"` 82 XXX_NoUnkeyedLiteral struct{} `json:"-"` 83 XXX_unrecognized []byte `json:"-"` 84 XXX_sizecache int32 `json:"-"` 85} 86 87func (m *NameMatcher) Reset() { *m = NameMatcher{} } 88func (m *NameMatcher) String() string { return proto.CompactTextString(m) } 89func (*NameMatcher) ProtoMessage() {} 90func (*NameMatcher) Descriptor() ([]byte, []int) { 91 return fileDescriptor_f013e3228551a7a8, []int{0} 92} 93 94func (m *NameMatcher) XXX_Unmarshal(b []byte) error { 95 return xxx_messageInfo_NameMatcher.Unmarshal(m, b) 96} 97func (m *NameMatcher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 98 return xxx_messageInfo_NameMatcher.Marshal(b, m, deterministic) 99} 100func (m *NameMatcher) XXX_Merge(src proto.Message) { 101 xxx_messageInfo_NameMatcher.Merge(m, src) 102} 103func (m *NameMatcher) XXX_Size() int { 104 return xxx_messageInfo_NameMatcher.Size(m) 105} 106func (m *NameMatcher) XXX_DiscardUnknown() { 107 xxx_messageInfo_NameMatcher.DiscardUnknown(m) 108} 109 110var xxx_messageInfo_NameMatcher proto.InternalMessageInfo 111 112func (m *NameMatcher) GetKey() string { 113 if m != nil { 114 return m.Key 115 } 116 return "" 117} 118 119func (m *NameMatcher) GetNames() []string { 120 if m != nil { 121 return m.Names 122 } 123 return nil 124} 125 126func (m *NameMatcher) GetRequiredMatch() bool { 127 if m != nil { 128 return m.RequiredMatch 129 } 130 return false 131} 132 133// A GrpcKeyBuilder applies to a given gRPC service, name, and headers. 134type GrpcKeyBuilder struct { 135 Names []*GrpcKeyBuilder_Name `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"` 136 // Extract keys from all listed headers. 137 // For gRPC, it is an error to specify "required_match" on the NameMatcher 138 // protos, and we ignore it if set. 139 Headers []*NameMatcher `protobuf:"bytes,2,rep,name=headers,proto3" json:"headers,omitempty"` 140 XXX_NoUnkeyedLiteral struct{} `json:"-"` 141 XXX_unrecognized []byte `json:"-"` 142 XXX_sizecache int32 `json:"-"` 143} 144 145func (m *GrpcKeyBuilder) Reset() { *m = GrpcKeyBuilder{} } 146func (m *GrpcKeyBuilder) String() string { return proto.CompactTextString(m) } 147func (*GrpcKeyBuilder) ProtoMessage() {} 148func (*GrpcKeyBuilder) Descriptor() ([]byte, []int) { 149 return fileDescriptor_f013e3228551a7a8, []int{1} 150} 151 152func (m *GrpcKeyBuilder) XXX_Unmarshal(b []byte) error { 153 return xxx_messageInfo_GrpcKeyBuilder.Unmarshal(m, b) 154} 155func (m *GrpcKeyBuilder) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 156 return xxx_messageInfo_GrpcKeyBuilder.Marshal(b, m, deterministic) 157} 158func (m *GrpcKeyBuilder) XXX_Merge(src proto.Message) { 159 xxx_messageInfo_GrpcKeyBuilder.Merge(m, src) 160} 161func (m *GrpcKeyBuilder) XXX_Size() int { 162 return xxx_messageInfo_GrpcKeyBuilder.Size(m) 163} 164func (m *GrpcKeyBuilder) XXX_DiscardUnknown() { 165 xxx_messageInfo_GrpcKeyBuilder.DiscardUnknown(m) 166} 167 168var xxx_messageInfo_GrpcKeyBuilder proto.InternalMessageInfo 169 170func (m *GrpcKeyBuilder) GetNames() []*GrpcKeyBuilder_Name { 171 if m != nil { 172 return m.Names 173 } 174 return nil 175} 176 177func (m *GrpcKeyBuilder) GetHeaders() []*NameMatcher { 178 if m != nil { 179 return m.Headers 180 } 181 return nil 182} 183 184// To match, one of the given Name fields must match; the service and method 185// fields are specified as fixed strings. The service name is required and 186// includes the proto package name. The method name may be omitted, in 187// which case any method on the given service is matched. 188type GrpcKeyBuilder_Name struct { 189 Service string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"` 190 Method string `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"` 191 XXX_NoUnkeyedLiteral struct{} `json:"-"` 192 XXX_unrecognized []byte `json:"-"` 193 XXX_sizecache int32 `json:"-"` 194} 195 196func (m *GrpcKeyBuilder_Name) Reset() { *m = GrpcKeyBuilder_Name{} } 197func (m *GrpcKeyBuilder_Name) String() string { return proto.CompactTextString(m) } 198func (*GrpcKeyBuilder_Name) ProtoMessage() {} 199func (*GrpcKeyBuilder_Name) Descriptor() ([]byte, []int) { 200 return fileDescriptor_f013e3228551a7a8, []int{1, 0} 201} 202 203func (m *GrpcKeyBuilder_Name) XXX_Unmarshal(b []byte) error { 204 return xxx_messageInfo_GrpcKeyBuilder_Name.Unmarshal(m, b) 205} 206func (m *GrpcKeyBuilder_Name) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 207 return xxx_messageInfo_GrpcKeyBuilder_Name.Marshal(b, m, deterministic) 208} 209func (m *GrpcKeyBuilder_Name) XXX_Merge(src proto.Message) { 210 xxx_messageInfo_GrpcKeyBuilder_Name.Merge(m, src) 211} 212func (m *GrpcKeyBuilder_Name) XXX_Size() int { 213 return xxx_messageInfo_GrpcKeyBuilder_Name.Size(m) 214} 215func (m *GrpcKeyBuilder_Name) XXX_DiscardUnknown() { 216 xxx_messageInfo_GrpcKeyBuilder_Name.DiscardUnknown(m) 217} 218 219var xxx_messageInfo_GrpcKeyBuilder_Name proto.InternalMessageInfo 220 221func (m *GrpcKeyBuilder_Name) GetService() string { 222 if m != nil { 223 return m.Service 224 } 225 return "" 226} 227 228func (m *GrpcKeyBuilder_Name) GetMethod() string { 229 if m != nil { 230 return m.Method 231 } 232 return "" 233} 234 235// An HttpKeyBuilder applies to a given HTTP URL and headers. 236// 237// Path and host patterns use the matching syntax from gRPC transcoding to 238// extract named key/value pairs from the path and host components of the URL: 239// https://github.com/googleapis/googleapis/blob/master/google/api/http.proto 240// 241// It is invalid to specify the same key name in multiple places in a pattern. 242// 243// For a service where the project id can be expressed either as a subdomain or 244// in the path, separate HttpKeyBuilders must be used: 245// host_pattern: 'example.com' path_pattern: '/{id}/{object}/**' 246// host_pattern: '{id}.example.com' path_pattern: '/{object}/**' 247// If the host is exactly 'example.com', the first path segment will be used as 248// the id and the second segment as the object. If the host has a subdomain, the 249// subdomain will be used as the id and the first segment as the object. If 250// neither pattern matches, no keys will be extracted. 251type HttpKeyBuilder struct { 252 // host_pattern is an ordered list of host template patterns for the desired 253 // value. If any host_pattern values are specified, then at least one must 254 // match, and the last one wins and sets any specified variables. A host 255 // consists of labels separated by dots. Each label is matched against the 256 // label in the pattern as follows: 257 // - "*": Matches any single label. 258 // - "**": Matches zero or more labels (first or last part of host only). 259 // - "{<name>=...}": One or more label capture, where "..." can be any 260 // template that does not include a capture. 261 // - "{<name>}": A single label capture. Identical to {<name>=*}. 262 // 263 // Examples: 264 // - "example.com": Only applies to the exact host example.com. 265 // - "*.example.com": Matches subdomains of example.com. 266 // - "**.example.com": matches example.com, and all levels of subdomains. 267 // - "{project}.example.com": Extracts the third level subdomain. 268 // - "{project=**}.example.com": Extracts the third level+ subdomains. 269 // - "{project=**}": Extracts the entire host. 270 HostPatterns []string `protobuf:"bytes,1,rep,name=host_patterns,json=hostPatterns,proto3" json:"host_patterns,omitempty"` 271 // path_pattern is an ordered list of path template patterns for the desired 272 // value. If any path_pattern values are specified, then at least one must 273 // match, and the last one wins and sets any specified variables. A path 274 // consists of segments separated by slashes. Each segment is matched against 275 // the segment in the pattern as follows: 276 // - "*": Matches any single segment. 277 // - "**": Matches zero or more segments (first or last part of path only). 278 // - "{<name>=...}": One or more segment capture, where "..." can be any 279 // template that does not include a capture. 280 // - "{<name>}": A single segment capture. Identical to {<name>=*}. 281 // A custom method may also be specified by appending ":" and the custom 282 // method name or "*" to indicate any custom method (including no custom 283 // method). For example, "/*/projects/{project_id}/**:*" extracts 284 // `{project_id}` for any version, resource and custom method that includes 285 // it. By default, any custom method will be matched. 286 // 287 // Examples: 288 // - "/v1/{name=messages/*}": extracts a name like "messages/12345". 289 // - "/v1/messages/{message_id}": extracts a message_id like "12345". 290 // - "/v1/users/{user_id}/messages/{message_id}": extracts two key values. 291 PathPatterns []string `protobuf:"bytes,2,rep,name=path_patterns,json=pathPatterns,proto3" json:"path_patterns,omitempty"` 292 // List of query parameter names to try to match. 293 // For example: ["parent", "name", "resource.name"] 294 // We extract all the specified query_parameters (case-sensitively). If any 295 // are marked as "required_match" and are not present, this keybuilder fails 296 // to match. If a given parameter appears multiple times (?foo=a&foo=b) we 297 // will report it as a comma-separated string (foo=a,b). 298 QueryParameters []*NameMatcher `protobuf:"bytes,3,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty"` 299 // List of headers to try to match. 300 // We extract all the specified header values (case-insensitively). If any 301 // are marked as "required_match" and are not present, this keybuilder fails 302 // to match. If a given header appears multiple times in the request we will 303 // report it as a comma-separated string, in standard HTTP fashion. 304 Headers []*NameMatcher `protobuf:"bytes,4,rep,name=headers,proto3" json:"headers,omitempty"` 305 XXX_NoUnkeyedLiteral struct{} `json:"-"` 306 XXX_unrecognized []byte `json:"-"` 307 XXX_sizecache int32 `json:"-"` 308} 309 310func (m *HttpKeyBuilder) Reset() { *m = HttpKeyBuilder{} } 311func (m *HttpKeyBuilder) String() string { return proto.CompactTextString(m) } 312func (*HttpKeyBuilder) ProtoMessage() {} 313func (*HttpKeyBuilder) Descriptor() ([]byte, []int) { 314 return fileDescriptor_f013e3228551a7a8, []int{2} 315} 316 317func (m *HttpKeyBuilder) XXX_Unmarshal(b []byte) error { 318 return xxx_messageInfo_HttpKeyBuilder.Unmarshal(m, b) 319} 320func (m *HttpKeyBuilder) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 321 return xxx_messageInfo_HttpKeyBuilder.Marshal(b, m, deterministic) 322} 323func (m *HttpKeyBuilder) XXX_Merge(src proto.Message) { 324 xxx_messageInfo_HttpKeyBuilder.Merge(m, src) 325} 326func (m *HttpKeyBuilder) XXX_Size() int { 327 return xxx_messageInfo_HttpKeyBuilder.Size(m) 328} 329func (m *HttpKeyBuilder) XXX_DiscardUnknown() { 330 xxx_messageInfo_HttpKeyBuilder.DiscardUnknown(m) 331} 332 333var xxx_messageInfo_HttpKeyBuilder proto.InternalMessageInfo 334 335func (m *HttpKeyBuilder) GetHostPatterns() []string { 336 if m != nil { 337 return m.HostPatterns 338 } 339 return nil 340} 341 342func (m *HttpKeyBuilder) GetPathPatterns() []string { 343 if m != nil { 344 return m.PathPatterns 345 } 346 return nil 347} 348 349func (m *HttpKeyBuilder) GetQueryParameters() []*NameMatcher { 350 if m != nil { 351 return m.QueryParameters 352 } 353 return nil 354} 355 356func (m *HttpKeyBuilder) GetHeaders() []*NameMatcher { 357 if m != nil { 358 return m.Headers 359 } 360 return nil 361} 362 363type RouteLookupConfig struct { 364 // Ordered specifications for constructing keys for HTTP requests. Last 365 // match wins. If no HttpKeyBuilder matches, an empty key_map will be sent to 366 // the lookup service; it should likely reply with a global default route 367 // and raise an alert. 368 HttpKeybuilders []*HttpKeyBuilder `protobuf:"bytes,1,rep,name=http_keybuilders,json=httpKeybuilders,proto3" json:"http_keybuilders,omitempty"` 369 // Unordered specifications for constructing keys for gRPC requests. All 370 // GrpcKeyBuilders on this list must have unique "name" fields so that the 371 // client is free to prebuild a hash map keyed by name. If no GrpcKeyBuilder 372 // matches, an empty key_map will be sent to the lookup service; it should 373 // likely reply with a global default route and raise an alert. 374 GrpcKeybuilders []*GrpcKeyBuilder `protobuf:"bytes,2,rep,name=grpc_keybuilders,json=grpcKeybuilders,proto3" json:"grpc_keybuilders,omitempty"` 375 // The name of the lookup service as a gRPC URI. Typically, this will be 376 // a subdomain of the target, such as "lookup.datastore.googleapis.com". 377 LookupService string `protobuf:"bytes,3,opt,name=lookup_service,json=lookupService,proto3" json:"lookup_service,omitempty"` 378 // Configure a timeout value for lookup service requests. 379 // Defaults to 10 seconds if not specified. 380 LookupServiceTimeout *duration.Duration `protobuf:"bytes,4,opt,name=lookup_service_timeout,json=lookupServiceTimeout,proto3" json:"lookup_service_timeout,omitempty"` 381 // How long are responses valid for (like HTTP Cache-Control). 382 // If omitted (i.e. 0), responses are considered not to be cacheable. 383 // This value is clamped to 5 minutes to avoid unflushable bad responses. 384 MaxAge *duration.Duration `protobuf:"bytes,5,opt,name=max_age,json=maxAge,proto3" json:"max_age,omitempty"` 385 // After a response has been in the client cache for this amount of time 386 // and is re-requested, start an asynchronous RPC to re-validate it. 387 // This value should be less than max_age by at least the length of a 388 // typical RTT to the Route Lookup Service to fully mask the RTT latency. 389 // If omitted, keys are only re-requested after they have expired. 390 StaleAge *duration.Duration `protobuf:"bytes,6,opt,name=stale_age,json=staleAge,proto3" json:"stale_age,omitempty"` 391 // Rough indicator of amount of memory to use for the client cache. Some of 392 // the data structure overhead is not accounted for, so actual memory consumed 393 // will be somewhat greater than this value. If this field is omitted or set 394 // to zero, a client default will be used. The value may be capped to a lower 395 // amount based on client configuration. 396 CacheSizeBytes int64 `protobuf:"varint,7,opt,name=cache_size_bytes,json=cacheSizeBytes,proto3" json:"cache_size_bytes,omitempty"` 397 // This is a list of all the possible targets that can be returned by the 398 // lookup service. If a target not on this list is returned, it will be 399 // treated the same as an RPC error from the RLS. 400 ValidTargets []string `protobuf:"bytes,8,rep,name=valid_targets,json=validTargets,proto3" json:"valid_targets,omitempty"` 401 // This value provides a default target to use if needed. It will be used for 402 // request processing strategy SYNC_LOOKUP_DEFAULT_TARGET_ON_ERROR if RLS 403 // returns an error, or strategy ASYNC_LOOKUP_DEFAULT_TARGET_ON_MISS if RLS 404 // returns an error or there is a cache miss in the client. It will also be 405 // used if there are no healthy backends for an RLS target. Note that 406 // requests can be routed only to a subdomain of the original target, 407 // e.g. "us_east_1.cloudbigtable.googleapis.com". 408 DefaultTarget string `protobuf:"bytes,9,opt,name=default_target,json=defaultTarget,proto3" json:"default_target,omitempty"` 409 RequestProcessingStrategy RouteLookupConfig_RequestProcessingStrategy `protobuf:"varint,10,opt,name=request_processing_strategy,json=requestProcessingStrategy,proto3,enum=grpc.lookup.v1.RouteLookupConfig_RequestProcessingStrategy" json:"request_processing_strategy,omitempty"` 410 XXX_NoUnkeyedLiteral struct{} `json:"-"` 411 XXX_unrecognized []byte `json:"-"` 412 XXX_sizecache int32 `json:"-"` 413} 414 415func (m *RouteLookupConfig) Reset() { *m = RouteLookupConfig{} } 416func (m *RouteLookupConfig) String() string { return proto.CompactTextString(m) } 417func (*RouteLookupConfig) ProtoMessage() {} 418func (*RouteLookupConfig) Descriptor() ([]byte, []int) { 419 return fileDescriptor_f013e3228551a7a8, []int{3} 420} 421 422func (m *RouteLookupConfig) XXX_Unmarshal(b []byte) error { 423 return xxx_messageInfo_RouteLookupConfig.Unmarshal(m, b) 424} 425func (m *RouteLookupConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 426 return xxx_messageInfo_RouteLookupConfig.Marshal(b, m, deterministic) 427} 428func (m *RouteLookupConfig) XXX_Merge(src proto.Message) { 429 xxx_messageInfo_RouteLookupConfig.Merge(m, src) 430} 431func (m *RouteLookupConfig) XXX_Size() int { 432 return xxx_messageInfo_RouteLookupConfig.Size(m) 433} 434func (m *RouteLookupConfig) XXX_DiscardUnknown() { 435 xxx_messageInfo_RouteLookupConfig.DiscardUnknown(m) 436} 437 438var xxx_messageInfo_RouteLookupConfig proto.InternalMessageInfo 439 440func (m *RouteLookupConfig) GetHttpKeybuilders() []*HttpKeyBuilder { 441 if m != nil { 442 return m.HttpKeybuilders 443 } 444 return nil 445} 446 447func (m *RouteLookupConfig) GetGrpcKeybuilders() []*GrpcKeyBuilder { 448 if m != nil { 449 return m.GrpcKeybuilders 450 } 451 return nil 452} 453 454func (m *RouteLookupConfig) GetLookupService() string { 455 if m != nil { 456 return m.LookupService 457 } 458 return "" 459} 460 461func (m *RouteLookupConfig) GetLookupServiceTimeout() *duration.Duration { 462 if m != nil { 463 return m.LookupServiceTimeout 464 } 465 return nil 466} 467 468func (m *RouteLookupConfig) GetMaxAge() *duration.Duration { 469 if m != nil { 470 return m.MaxAge 471 } 472 return nil 473} 474 475func (m *RouteLookupConfig) GetStaleAge() *duration.Duration { 476 if m != nil { 477 return m.StaleAge 478 } 479 return nil 480} 481 482func (m *RouteLookupConfig) GetCacheSizeBytes() int64 { 483 if m != nil { 484 return m.CacheSizeBytes 485 } 486 return 0 487} 488 489func (m *RouteLookupConfig) GetValidTargets() []string { 490 if m != nil { 491 return m.ValidTargets 492 } 493 return nil 494} 495 496func (m *RouteLookupConfig) GetDefaultTarget() string { 497 if m != nil { 498 return m.DefaultTarget 499 } 500 return "" 501} 502 503func (m *RouteLookupConfig) GetRequestProcessingStrategy() RouteLookupConfig_RequestProcessingStrategy { 504 if m != nil { 505 return m.RequestProcessingStrategy 506 } 507 return RouteLookupConfig_STRATEGY_UNSPECIFIED 508} 509 510func init() { 511 proto.RegisterEnum("grpc.lookup.v1.RouteLookupConfig_RequestProcessingStrategy", RouteLookupConfig_RequestProcessingStrategy_name, RouteLookupConfig_RequestProcessingStrategy_value) 512 proto.RegisterType((*NameMatcher)(nil), "grpc.lookup.v1.NameMatcher") 513 proto.RegisterType((*GrpcKeyBuilder)(nil), "grpc.lookup.v1.GrpcKeyBuilder") 514 proto.RegisterType((*GrpcKeyBuilder_Name)(nil), "grpc.lookup.v1.GrpcKeyBuilder.Name") 515 proto.RegisterType((*HttpKeyBuilder)(nil), "grpc.lookup.v1.HttpKeyBuilder") 516 proto.RegisterType((*RouteLookupConfig)(nil), "grpc.lookup.v1.RouteLookupConfig") 517} 518 519func init() { 520 proto.RegisterFile("grpc/rls/grpc_lookup_v1/rls_config.proto", fileDescriptor_f013e3228551a7a8) 521} 522 523var fileDescriptor_f013e3228551a7a8 = []byte{ 524 // 742 bytes of a gzipped FileDescriptorProto 525 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x54, 0xdd, 0x6e, 0xdb, 0x36, 526 0x18, 0x9d, 0xa2, 0xd4, 0x89, 0x99, 0x46, 0x71, 0x85, 0xa0, 0x50, 0x5a, 0xac, 0xf0, 0x1c, 0x14, 527 0xd3, 0xc5, 0x20, 0xa3, 0x1e, 0x36, 0x6c, 0xd8, 0x95, 0xed, 0x28, 0x99, 0x51, 0xd7, 0x36, 0x28, 528 0xe5, 0xa2, 0xc3, 0x00, 0x82, 0x96, 0xbf, 0x48, 0x42, 0x24, 0x53, 0xa5, 0x28, 0xa3, 0xee, 0xde, 529 0x68, 0xc0, 0xde, 0x60, 0x2f, 0xb2, 0xb7, 0x19, 0x28, 0x4a, 0x9e, 0xed, 0x2d, 0x4b, 0xef, 0xf4, 530 0x1d, 0x9e, 0x73, 0xc4, 0xef, 0x8f, 0xc8, 0x0e, 0x79, 0x16, 0x74, 0x79, 0x92, 0x77, 0xe5, 0x07, 531 0x49, 0x18, 0xbb, 0x2f, 0x32, 0xb2, 0x7a, 0x23, 0x21, 0x12, 0xb0, 0xe5, 0x5d, 0x1c, 0x3a, 0x19, 532 0x67, 0x82, 0x99, 0x86, 0x24, 0x38, 0x8a, 0xe0, 0xac, 0xde, 0xbc, 0x78, 0x15, 0x32, 0x16, 0x26, 533 0xd0, 0x2d, 0x4f, 0xe7, 0xc5, 0x5d, 0x77, 0x51, 0x70, 0x2a, 0x62, 0xb6, 0x54, 0xfc, 0xce, 0xaf, 534 0xe8, 0x64, 0x42, 0x53, 0x78, 0x47, 0x45, 0x10, 0x01, 0x37, 0x5b, 0x48, 0xbf, 0x87, 0xb5, 0xa5, 535 0xb5, 0x35, 0xbb, 0x89, 0xe5, 0xa7, 0x79, 0x8e, 0x9e, 0x2c, 0x69, 0x0a, 0xb9, 0x75, 0xd0, 0xd6, 536 0xed, 0x26, 0x56, 0x81, 0xf9, 0x1a, 0x19, 0x1c, 0x3e, 0x14, 0x31, 0x87, 0x05, 0x49, 0xa5, 0xd6, 537 0xd2, 0xdb, 0x9a, 0x7d, 0x8c, 0x4f, 0x6b, 0xb4, 0x34, 0xec, 0xfc, 0xa9, 0x21, 0xe3, 0x86, 0x67, 538 0xc1, 0x5b, 0x58, 0x0f, 0x8a, 0x38, 0x59, 0x00, 0x37, 0x7f, 0xac, 0xfd, 0xb4, 0xb6, 0x6e, 0x9f, 539 0xf4, 0x2e, 0x9d, 0xdd, 0x0b, 0x3b, 0xbb, 0x74, 0x47, 0x5e, 0xae, 0xfe, 0xe9, 0x77, 0xe8, 0x28, 540 0x02, 0xba, 0x00, 0xae, 0x2e, 0x73, 0xd2, 0x7b, 0xb9, 0x2f, 0xde, 0x4a, 0x05, 0xd7, 0xdc, 0x17, 541 0x3f, 0xa0, 0x43, 0x89, 0x9b, 0x16, 0x3a, 0xca, 0x81, 0xaf, 0xe2, 0x00, 0xaa, 0xfc, 0xea, 0xd0, 542 0x7c, 0x8e, 0x1a, 0x29, 0x88, 0x88, 0x2d, 0xac, 0x83, 0xf2, 0xa0, 0x8a, 0x3a, 0x7f, 0x69, 0xc8, 543 0xf8, 0x59, 0x88, 0x6c, 0xeb, 0xfa, 0x97, 0xe8, 0x34, 0x62, 0xb9, 0x20, 0x19, 0x15, 0x02, 0xf8, 544 0x52, 0xa5, 0xd1, 0xc4, 0x4f, 0x25, 0x38, 0xab, 0x30, 0x49, 0xca, 0xa8, 0x88, 0xfe, 0x21, 0xa9, 545 0xda, 0x3d, 0x95, 0xe0, 0x86, 0x74, 0x8d, 0x5a, 0x1f, 0x0a, 0xe0, 0x6b, 0x92, 0x51, 0x4e, 0x53, 546 0x10, 0x32, 0x2d, 0xfd, 0xf1, 0xb4, 0xce, 0x4a, 0xd1, 0x6c, 0xa3, 0xd9, 0xae, 0xca, 0xe1, 0xe7, 547 0x57, 0xa5, 0xf3, 0x47, 0x03, 0x3d, 0xc3, 0xac, 0x10, 0x30, 0x2e, 0x79, 0xc3, 0x72, 0x88, 0xcc, 548 0x11, 0x6a, 0x45, 0x42, 0x64, 0xe4, 0x1e, 0xd6, 0x73, 0x95, 0x71, 0xdd, 0xa8, 0x57, 0xfb, 0xae, 549 0xbb, 0x85, 0xc1, 0x67, 0x91, 0x8a, 0x6b, 0x99, 0xb4, 0x2a, 0x87, 0x75, 0xdb, 0xea, 0xe0, 0xbf, 550 0xad, 0x76, 0x7b, 0x8e, 0xcf, 0x42, 0x15, 0x6f, 0xac, 0x5e, 0x23, 0xa3, 0x1a, 0xf9, 0xba, 0x81, 551 0x7a, 0xd9, 0xa7, 0x53, 0x85, 0x7a, 0x55, 0x1b, 0xa7, 0xe8, 0xf9, 0x2e, 0x8d, 0x88, 0x38, 0x05, 552 0x56, 0x08, 0xeb, 0xb0, 0xad, 0xd9, 0x27, 0xbd, 0x0b, 0x47, 0x2d, 0x83, 0x53, 0x2f, 0x83, 0x73, 553 0x55, 0x2d, 0x03, 0x3e, 0xdf, 0x71, 0xf2, 0x95, 0xcc, 0xec, 0xa1, 0xa3, 0x94, 0x7e, 0x24, 0x34, 554 0x04, 0xeb, 0xc9, 0x63, 0x0e, 0x8d, 0x94, 0x7e, 0xec, 0x87, 0x60, 0x7e, 0x8f, 0x9a, 0xb9, 0xa0, 555 0x09, 0x94, 0xaa, 0xc6, 0x63, 0xaa, 0xe3, 0x92, 0x2b, 0x75, 0x36, 0x6a, 0x05, 0x34, 0x88, 0x80, 556 0xe4, 0xf1, 0x27, 0x20, 0xf3, 0xb5, 0x80, 0xdc, 0x3a, 0x6a, 0x6b, 0xb6, 0x8e, 0x8d, 0x12, 0xf7, 557 0xe2, 0x4f, 0x30, 0x90, 0xa8, 0x9c, 0xae, 0x15, 0x4d, 0xe2, 0x05, 0x11, 0x94, 0x87, 0x20, 0x72, 558 0xeb, 0x58, 0x4d, 0x57, 0x09, 0xfa, 0x0a, 0x93, 0x25, 0x5b, 0xc0, 0x1d, 0x2d, 0x12, 0x51, 0xd1, 559 0xac, 0xa6, 0x2a, 0x59, 0x85, 0x2a, 0x9e, 0xf9, 0x1b, 0x7a, 0x29, 0x37, 0x16, 0xe4, 0x44, 0x73, 560 0x16, 0x40, 0x9e, 0xc7, 0xcb, 0x90, 0xe4, 0x82, 0x53, 0x01, 0xe1, 0xda, 0x42, 0x6d, 0xcd, 0x36, 561 0x7a, 0x3f, 0xed, 0xf7, 0xeb, 0x5f, 0x73, 0xe3, 0x60, 0x65, 0x32, 0xdb, 0x78, 0x78, 0x95, 0x05, 562 0xbe, 0xe0, 0x0f, 0x1d, 0x75, 0x7e, 0xd7, 0xd0, 0xc5, 0x83, 0x42, 0xd3, 0x42, 0xe7, 0x9e, 0x8f, 563 0xfb, 0xbe, 0x7b, 0xf3, 0x9e, 0xdc, 0x4e, 0xbc, 0x99, 0x3b, 0x1c, 0x5d, 0x8f, 0xdc, 0xab, 0xd6, 564 0x17, 0xe6, 0xd7, 0xe8, 0xd2, 0x7b, 0x3f, 0x19, 0x92, 0xf1, 0x74, 0xfa, 0xf6, 0x76, 0x46, 0xae, 565 0xdc, 0xeb, 0xfe, 0xed, 0xd8, 0x27, 0x7e, 0x1f, 0xdf, 0xb8, 0x3e, 0x99, 0x4e, 0x88, 0x8b, 0xf1, 566 0x14, 0xb7, 0x34, 0xf3, 0x2b, 0xf4, 0xe5, 0x36, 0x71, 0x38, 0x1e, 0xb9, 0x13, 0x9f, 0x78, 0xae, 567 0xeb, 0x55, 0x94, 0x03, 0xe9, 0xd5, 0xff, 0x7f, 0xb3, 0x77, 0x23, 0xcf, 0x6b, 0xe9, 0x03, 0x0f, 568 0x3d, 0x8b, 0xd9, 0x5e, 0x21, 0x06, 0x06, 0x4e, 0x72, 0x55, 0x81, 0x99, 0x6c, 0xed, 0x4c, 0xfb, 569 0xe5, 0x9b, 0xaa, 0xd5, 0x21, 0x4b, 0xe8, 0x32, 0x74, 0x18, 0x0f, 0xcb, 0x27, 0xbb, 0xab, 0x34, 570 0x7b, 0xcf, 0xf7, 0xbc, 0x51, 0x4e, 0xc4, 0xb7, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0x47, 0xa7, 571 0x94, 0xbe, 0xe0, 0x05, 0x00, 0x00, 572} 573