1// Copyright 2020 Google LLC
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.13.0
19// source: google/api/backend.proto
20
21package serviceconfig
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	proto "github.com/golang/protobuf/proto"
28	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
29	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
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// Path Translation specifies how to combine the backend address with the
44// request path in order to produce the appropriate forwarding URL for the
45// request.
46//
47// Path Translation is applicable only to HTTP-based backends. Backends which
48// do not accept requests over HTTP/HTTPS should leave `path_translation`
49// unspecified.
50type BackendRule_PathTranslation int32
51
52const (
53	BackendRule_PATH_TRANSLATION_UNSPECIFIED BackendRule_PathTranslation = 0
54	// Use the backend address as-is, with no modification to the path. If the
55	// URL pattern contains variables, the variable names and values will be
56	// appended to the query string. If a query string parameter and a URL
57	// pattern variable have the same name, this may result in duplicate keys in
58	// the query string.
59	//
60	// # Examples
61	//
62	// Given the following operation config:
63	//
64	//     Method path:        /api/company/{cid}/user/{uid}
65	//     Backend address:    https://example.cloudfunctions.net/getUser
66	//
67	// Requests to the following request paths will call the backend at the
68	// translated path:
69	//
70	//     Request path: /api/company/widgetworks/user/johndoe
71	//     Translated:
72	//     https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
73	//
74	//     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
75	//     Translated:
76	//     https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
77	BackendRule_CONSTANT_ADDRESS BackendRule_PathTranslation = 1
78	// The request path will be appended to the backend address.
79	//
80	// # Examples
81	//
82	// Given the following operation config:
83	//
84	//     Method path:        /api/company/{cid}/user/{uid}
85	//     Backend address:    https://example.appspot.com
86	//
87	// Requests to the following request paths will call the backend at the
88	// translated path:
89	//
90	//     Request path: /api/company/widgetworks/user/johndoe
91	//     Translated:
92	//     https://example.appspot.com/api/company/widgetworks/user/johndoe
93	//
94	//     Request path: /api/company/widgetworks/user/johndoe?timezone=EST
95	//     Translated:
96	//     https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
97	BackendRule_APPEND_PATH_TO_ADDRESS BackendRule_PathTranslation = 2
98)
99
100// Enum value maps for BackendRule_PathTranslation.
101var (
102	BackendRule_PathTranslation_name = map[int32]string{
103		0: "PATH_TRANSLATION_UNSPECIFIED",
104		1: "CONSTANT_ADDRESS",
105		2: "APPEND_PATH_TO_ADDRESS",
106	}
107	BackendRule_PathTranslation_value = map[string]int32{
108		"PATH_TRANSLATION_UNSPECIFIED": 0,
109		"CONSTANT_ADDRESS":             1,
110		"APPEND_PATH_TO_ADDRESS":       2,
111	}
112)
113
114func (x BackendRule_PathTranslation) Enum() *BackendRule_PathTranslation {
115	p := new(BackendRule_PathTranslation)
116	*p = x
117	return p
118}
119
120func (x BackendRule_PathTranslation) String() string {
121	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
122}
123
124func (BackendRule_PathTranslation) Descriptor() protoreflect.EnumDescriptor {
125	return file_google_api_backend_proto_enumTypes[0].Descriptor()
126}
127
128func (BackendRule_PathTranslation) Type() protoreflect.EnumType {
129	return &file_google_api_backend_proto_enumTypes[0]
130}
131
132func (x BackendRule_PathTranslation) Number() protoreflect.EnumNumber {
133	return protoreflect.EnumNumber(x)
134}
135
136// Deprecated: Use BackendRule_PathTranslation.Descriptor instead.
137func (BackendRule_PathTranslation) EnumDescriptor() ([]byte, []int) {
138	return file_google_api_backend_proto_rawDescGZIP(), []int{1, 0}
139}
140
141// `Backend` defines the backend configuration for a service.
142type Backend struct {
143	state         protoimpl.MessageState
144	sizeCache     protoimpl.SizeCache
145	unknownFields protoimpl.UnknownFields
146
147	// A list of API backend rules that apply to individual API methods.
148	//
149	// **NOTE:** All service configuration rules follow "last one wins" order.
150	Rules []*BackendRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
151}
152
153func (x *Backend) Reset() {
154	*x = Backend{}
155	if protoimpl.UnsafeEnabled {
156		mi := &file_google_api_backend_proto_msgTypes[0]
157		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
158		ms.StoreMessageInfo(mi)
159	}
160}
161
162func (x *Backend) String() string {
163	return protoimpl.X.MessageStringOf(x)
164}
165
166func (*Backend) ProtoMessage() {}
167
168func (x *Backend) ProtoReflect() protoreflect.Message {
169	mi := &file_google_api_backend_proto_msgTypes[0]
170	if protoimpl.UnsafeEnabled && x != nil {
171		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
172		if ms.LoadMessageInfo() == nil {
173			ms.StoreMessageInfo(mi)
174		}
175		return ms
176	}
177	return mi.MessageOf(x)
178}
179
180// Deprecated: Use Backend.ProtoReflect.Descriptor instead.
181func (*Backend) Descriptor() ([]byte, []int) {
182	return file_google_api_backend_proto_rawDescGZIP(), []int{0}
183}
184
185func (x *Backend) GetRules() []*BackendRule {
186	if x != nil {
187		return x.Rules
188	}
189	return nil
190}
191
192// A backend rule provides configuration for an individual API element.
193type BackendRule struct {
194	state         protoimpl.MessageState
195	sizeCache     protoimpl.SizeCache
196	unknownFields protoimpl.UnknownFields
197
198	// Selects the methods to which this rule applies.
199	//
200	// Refer to [selector][google.api.DocumentationRule.selector] for syntax details.
201	Selector string `protobuf:"bytes,1,opt,name=selector,proto3" json:"selector,omitempty"`
202	// The address of the API backend.
203	//
204	// The scheme is used to determine the backend protocol and security.
205	// The following schemes are accepted:
206	//
207	//    SCHEME        PROTOCOL    SECURITY
208	//    http://       HTTP        None
209	//    https://      HTTP        TLS
210	//    grpc://       gRPC        None
211	//    grpcs://      gRPC        TLS
212	//
213	// It is recommended to explicitly include a scheme. Leaving out the scheme
214	// may cause constrasting behaviors across platforms.
215	//
216	// If the port is unspecified, the default is:
217	// - 80 for schemes without TLS
218	// - 443 for schemes with TLS
219	//
220	// For HTTP backends, use [protocol][google.api.BackendRule.protocol]
221	// to specify the protocol version.
222	Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
223	// The number of seconds to wait for a response from a request. The default
224	// varies based on the request protocol and deployment environment.
225	Deadline float64 `protobuf:"fixed64,3,opt,name=deadline,proto3" json:"deadline,omitempty"`
226	// Minimum deadline in seconds needed for this method. Calls having deadline
227	// value lower than this will be rejected.
228	MinDeadline float64 `protobuf:"fixed64,4,opt,name=min_deadline,json=minDeadline,proto3" json:"min_deadline,omitempty"`
229	// The number of seconds to wait for the completion of a long running
230	// operation. The default is no deadline.
231	OperationDeadline float64                     `protobuf:"fixed64,5,opt,name=operation_deadline,json=operationDeadline,proto3" json:"operation_deadline,omitempty"`
232	PathTranslation   BackendRule_PathTranslation `protobuf:"varint,6,opt,name=path_translation,json=pathTranslation,proto3,enum=google.api.BackendRule_PathTranslation" json:"path_translation,omitempty"`
233	// Authentication settings used by the backend.
234	//
235	// These are typically used to provide service management functionality to
236	// a backend served on a publicly-routable URL. The `authentication`
237	// details should match the authentication behavior used by the backend.
238	//
239	// For example, specifying `jwt_audience` implies that the backend expects
240	// authentication via a JWT.
241	//
242	// When authentication is unspecified, the resulting behavior is the same
243	// as `disable_auth` set to `true`.
244	//
245	// Refer to https://developers.google.com/identity/protocols/OpenIDConnect for
246	// JWT ID token.
247	//
248	// Types that are assignable to Authentication:
249	//	*BackendRule_JwtAudience
250	//	*BackendRule_DisableAuth
251	Authentication isBackendRule_Authentication `protobuf_oneof:"authentication"`
252	// The protocol used for sending a request to the backend.
253	// The supported values are "http/1.1" and "h2".
254	//
255	// The default value is inferred from the scheme in the
256	// [address][google.api.BackendRule.address] field:
257	//
258	//    SCHEME        PROTOCOL
259	//    http://       http/1.1
260	//    https://      http/1.1
261	//    grpc://       h2
262	//    grpcs://      h2
263	//
264	// For secure HTTP backends (https://) that support HTTP/2, set this field
265	// to "h2" for improved performance.
266	//
267	// Configuring this field to non-default values is only supported for secure
268	// HTTP backends. This field will be ignored for all other backends.
269	//
270	// See
271	// https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids
272	// for more details on the supported values.
273	Protocol string `protobuf:"bytes,9,opt,name=protocol,proto3" json:"protocol,omitempty"`
274}
275
276func (x *BackendRule) Reset() {
277	*x = BackendRule{}
278	if protoimpl.UnsafeEnabled {
279		mi := &file_google_api_backend_proto_msgTypes[1]
280		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
281		ms.StoreMessageInfo(mi)
282	}
283}
284
285func (x *BackendRule) String() string {
286	return protoimpl.X.MessageStringOf(x)
287}
288
289func (*BackendRule) ProtoMessage() {}
290
291func (x *BackendRule) ProtoReflect() protoreflect.Message {
292	mi := &file_google_api_backend_proto_msgTypes[1]
293	if protoimpl.UnsafeEnabled && x != nil {
294		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
295		if ms.LoadMessageInfo() == nil {
296			ms.StoreMessageInfo(mi)
297		}
298		return ms
299	}
300	return mi.MessageOf(x)
301}
302
303// Deprecated: Use BackendRule.ProtoReflect.Descriptor instead.
304func (*BackendRule) Descriptor() ([]byte, []int) {
305	return file_google_api_backend_proto_rawDescGZIP(), []int{1}
306}
307
308func (x *BackendRule) GetSelector() string {
309	if x != nil {
310		return x.Selector
311	}
312	return ""
313}
314
315func (x *BackendRule) GetAddress() string {
316	if x != nil {
317		return x.Address
318	}
319	return ""
320}
321
322func (x *BackendRule) GetDeadline() float64 {
323	if x != nil {
324		return x.Deadline
325	}
326	return 0
327}
328
329func (x *BackendRule) GetMinDeadline() float64 {
330	if x != nil {
331		return x.MinDeadline
332	}
333	return 0
334}
335
336func (x *BackendRule) GetOperationDeadline() float64 {
337	if x != nil {
338		return x.OperationDeadline
339	}
340	return 0
341}
342
343func (x *BackendRule) GetPathTranslation() BackendRule_PathTranslation {
344	if x != nil {
345		return x.PathTranslation
346	}
347	return BackendRule_PATH_TRANSLATION_UNSPECIFIED
348}
349
350func (m *BackendRule) GetAuthentication() isBackendRule_Authentication {
351	if m != nil {
352		return m.Authentication
353	}
354	return nil
355}
356
357func (x *BackendRule) GetJwtAudience() string {
358	if x, ok := x.GetAuthentication().(*BackendRule_JwtAudience); ok {
359		return x.JwtAudience
360	}
361	return ""
362}
363
364func (x *BackendRule) GetDisableAuth() bool {
365	if x, ok := x.GetAuthentication().(*BackendRule_DisableAuth); ok {
366		return x.DisableAuth
367	}
368	return false
369}
370
371func (x *BackendRule) GetProtocol() string {
372	if x != nil {
373		return x.Protocol
374	}
375	return ""
376}
377
378type isBackendRule_Authentication interface {
379	isBackendRule_Authentication()
380}
381
382type BackendRule_JwtAudience struct {
383	// The JWT audience is used when generating a JWT ID token for the backend.
384	// This ID token will be added in the HTTP "authorization" header, and sent
385	// to the backend.
386	JwtAudience string `protobuf:"bytes,7,opt,name=jwt_audience,json=jwtAudience,proto3,oneof"`
387}
388
389type BackendRule_DisableAuth struct {
390	// When disable_auth is true, a JWT ID token won't be generated and the
391	// original "Authorization" HTTP header will be preserved. If the header is
392	// used to carry the original token and is expected by the backend, this
393	// field must be set to true to preserve the header.
394	DisableAuth bool `protobuf:"varint,8,opt,name=disable_auth,json=disableAuth,proto3,oneof"`
395}
396
397func (*BackendRule_JwtAudience) isBackendRule_Authentication() {}
398
399func (*BackendRule_DisableAuth) isBackendRule_Authentication() {}
400
401var File_google_api_backend_proto protoreflect.FileDescriptor
402
403var file_google_api_backend_proto_rawDesc = []byte{
404	0x0a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x62, 0x61, 0x63,
405	0x6b, 0x65, 0x6e, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x67, 0x6f, 0x6f, 0x67,
406	0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x22, 0x38, 0x0a, 0x07, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e,
407	0x64, 0x12, 0x2d, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
408	0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x42, 0x61,
409	0x63, 0x6b, 0x65, 0x6e, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73,
410	0x22, 0xe4, 0x03, 0x0a, 0x0b, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x52, 0x75, 0x6c, 0x65,
411	0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01,
412	0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07,
413	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61,
414	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69,
415	0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69,
416	0x6e, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69,
417	0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x44, 0x65, 0x61,
418	0x64, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
419	0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28,
420	0x01, 0x52, 0x11, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x61, 0x64,
421	0x6c, 0x69, 0x6e, 0x65, 0x12, 0x52, 0x0a, 0x10, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x74, 0x72, 0x61,
422	0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27,
423	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x42, 0x61, 0x63, 0x6b,
424	0x65, 0x6e, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x2e, 0x50, 0x61, 0x74, 0x68, 0x54, 0x72, 0x61, 0x6e,
425	0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x70, 0x61, 0x74, 0x68, 0x54, 0x72, 0x61,
426	0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0c, 0x6a, 0x77, 0x74, 0x5f,
427	0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
428	0x52, 0x0b, 0x6a, 0x77, 0x74, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x23, 0x0a,
429	0x0c, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x18, 0x08, 0x20,
430	0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x75,
431	0x74, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x09,
432	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x22, 0x65,
433	0x0a, 0x0f, 0x50, 0x61, 0x74, 0x68, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f,
434	0x6e, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x41, 0x54, 0x48, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4c,
435	0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
436	0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x41, 0x4e, 0x54, 0x5f,
437	0x41, 0x44, 0x44, 0x52, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x50, 0x50,
438	0x45, 0x4e, 0x44, 0x5f, 0x50, 0x41, 0x54, 0x48, 0x5f, 0x54, 0x4f, 0x5f, 0x41, 0x44, 0x44, 0x52,
439	0x45, 0x53, 0x53, 0x10, 0x02, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74,
440	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6e, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x2e, 0x67,
441	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x0c, 0x42, 0x61, 0x63, 0x6b, 0x65,
442	0x6e, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x45, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
443	0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e,
444	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
445	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x63, 0x6f, 0x6e, 0x66,
446	0x69, 0x67, 0x3b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
447	0xa2, 0x02, 0x04, 0x47, 0x41, 0x50, 0x49, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
448}
449
450var (
451	file_google_api_backend_proto_rawDescOnce sync.Once
452	file_google_api_backend_proto_rawDescData = file_google_api_backend_proto_rawDesc
453)
454
455func file_google_api_backend_proto_rawDescGZIP() []byte {
456	file_google_api_backend_proto_rawDescOnce.Do(func() {
457		file_google_api_backend_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_backend_proto_rawDescData)
458	})
459	return file_google_api_backend_proto_rawDescData
460}
461
462var file_google_api_backend_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
463var file_google_api_backend_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
464var file_google_api_backend_proto_goTypes = []interface{}{
465	(BackendRule_PathTranslation)(0), // 0: google.api.BackendRule.PathTranslation
466	(*Backend)(nil),                  // 1: google.api.Backend
467	(*BackendRule)(nil),              // 2: google.api.BackendRule
468}
469var file_google_api_backend_proto_depIdxs = []int32{
470	2, // 0: google.api.Backend.rules:type_name -> google.api.BackendRule
471	0, // 1: google.api.BackendRule.path_translation:type_name -> google.api.BackendRule.PathTranslation
472	2, // [2:2] is the sub-list for method output_type
473	2, // [2:2] is the sub-list for method input_type
474	2, // [2:2] is the sub-list for extension type_name
475	2, // [2:2] is the sub-list for extension extendee
476	0, // [0:2] is the sub-list for field type_name
477}
478
479func init() { file_google_api_backend_proto_init() }
480func file_google_api_backend_proto_init() {
481	if File_google_api_backend_proto != nil {
482		return
483	}
484	if !protoimpl.UnsafeEnabled {
485		file_google_api_backend_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
486			switch v := v.(*Backend); i {
487			case 0:
488				return &v.state
489			case 1:
490				return &v.sizeCache
491			case 2:
492				return &v.unknownFields
493			default:
494				return nil
495			}
496		}
497		file_google_api_backend_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
498			switch v := v.(*BackendRule); i {
499			case 0:
500				return &v.state
501			case 1:
502				return &v.sizeCache
503			case 2:
504				return &v.unknownFields
505			default:
506				return nil
507			}
508		}
509	}
510	file_google_api_backend_proto_msgTypes[1].OneofWrappers = []interface{}{
511		(*BackendRule_JwtAudience)(nil),
512		(*BackendRule_DisableAuth)(nil),
513	}
514	type x struct{}
515	out := protoimpl.TypeBuilder{
516		File: protoimpl.DescBuilder{
517			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
518			RawDescriptor: file_google_api_backend_proto_rawDesc,
519			NumEnums:      1,
520			NumMessages:   2,
521			NumExtensions: 0,
522			NumServices:   0,
523		},
524		GoTypes:           file_google_api_backend_proto_goTypes,
525		DependencyIndexes: file_google_api_backend_proto_depIdxs,
526		EnumInfos:         file_google_api_backend_proto_enumTypes,
527		MessageInfos:      file_google_api_backend_proto_msgTypes,
528	}.Build()
529	File_google_api_backend_proto = out.File
530	file_google_api_backend_proto_rawDesc = nil
531	file_google_api_backend_proto_goTypes = nil
532	file_google_api_backend_proto_depIdxs = nil
533}
534