1// Copyright 2021 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-devel
18// 	protoc        v3.13.0
19// source: google/appengine/v1/app_yaml.proto
20
21package appengine
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	proto "github.com/golang/protobuf/proto"
28	_ "google.golang.org/genproto/googleapis/api/annotations"
29	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
30	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
31	durationpb "google.golang.org/protobuf/types/known/durationpb"
32)
33
34const (
35	// Verify that this generated code is sufficiently up-to-date.
36	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
37	// Verify that runtime/protoimpl is sufficiently up-to-date.
38	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
39)
40
41// This is a compile-time assertion that a sufficiently up-to-date version
42// of the legacy proto package is being used.
43const _ = proto.ProtoPackageIsVersion4
44
45// Actions to take when the user is not logged in.
46type AuthFailAction int32
47
48const (
49	// Not specified. `AUTH_FAIL_ACTION_REDIRECT` is assumed.
50	AuthFailAction_AUTH_FAIL_ACTION_UNSPECIFIED AuthFailAction = 0
51	// Redirects user to "accounts.google.com". The user is redirected back to the
52	// application URL after signing in or creating an account.
53	AuthFailAction_AUTH_FAIL_ACTION_REDIRECT AuthFailAction = 1
54	// Rejects request with a `401` HTTP status code and an error
55	// message.
56	AuthFailAction_AUTH_FAIL_ACTION_UNAUTHORIZED AuthFailAction = 2
57)
58
59// Enum value maps for AuthFailAction.
60var (
61	AuthFailAction_name = map[int32]string{
62		0: "AUTH_FAIL_ACTION_UNSPECIFIED",
63		1: "AUTH_FAIL_ACTION_REDIRECT",
64		2: "AUTH_FAIL_ACTION_UNAUTHORIZED",
65	}
66	AuthFailAction_value = map[string]int32{
67		"AUTH_FAIL_ACTION_UNSPECIFIED":  0,
68		"AUTH_FAIL_ACTION_REDIRECT":     1,
69		"AUTH_FAIL_ACTION_UNAUTHORIZED": 2,
70	}
71)
72
73func (x AuthFailAction) Enum() *AuthFailAction {
74	p := new(AuthFailAction)
75	*p = x
76	return p
77}
78
79func (x AuthFailAction) String() string {
80	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
81}
82
83func (AuthFailAction) Descriptor() protoreflect.EnumDescriptor {
84	return file_google_appengine_v1_app_yaml_proto_enumTypes[0].Descriptor()
85}
86
87func (AuthFailAction) Type() protoreflect.EnumType {
88	return &file_google_appengine_v1_app_yaml_proto_enumTypes[0]
89}
90
91func (x AuthFailAction) Number() protoreflect.EnumNumber {
92	return protoreflect.EnumNumber(x)
93}
94
95// Deprecated: Use AuthFailAction.Descriptor instead.
96func (AuthFailAction) EnumDescriptor() ([]byte, []int) {
97	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{0}
98}
99
100// Methods to restrict access to a URL based on login status.
101type LoginRequirement int32
102
103const (
104	// Not specified. `LOGIN_OPTIONAL` is assumed.
105	LoginRequirement_LOGIN_UNSPECIFIED LoginRequirement = 0
106	// Does not require that the user is signed in.
107	LoginRequirement_LOGIN_OPTIONAL LoginRequirement = 1
108	// If the user is not signed in, the `auth_fail_action` is taken.
109	// In addition, if the user is not an administrator for the
110	// application, they are given an error message regardless of
111	// `auth_fail_action`. If the user is an administrator, the handler
112	// proceeds.
113	LoginRequirement_LOGIN_ADMIN LoginRequirement = 2
114	// If the user has signed in, the handler proceeds normally. Otherwise, the
115	// auth_fail_action is taken.
116	LoginRequirement_LOGIN_REQUIRED LoginRequirement = 3
117)
118
119// Enum value maps for LoginRequirement.
120var (
121	LoginRequirement_name = map[int32]string{
122		0: "LOGIN_UNSPECIFIED",
123		1: "LOGIN_OPTIONAL",
124		2: "LOGIN_ADMIN",
125		3: "LOGIN_REQUIRED",
126	}
127	LoginRequirement_value = map[string]int32{
128		"LOGIN_UNSPECIFIED": 0,
129		"LOGIN_OPTIONAL":    1,
130		"LOGIN_ADMIN":       2,
131		"LOGIN_REQUIRED":    3,
132	}
133)
134
135func (x LoginRequirement) Enum() *LoginRequirement {
136	p := new(LoginRequirement)
137	*p = x
138	return p
139}
140
141func (x LoginRequirement) String() string {
142	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
143}
144
145func (LoginRequirement) Descriptor() protoreflect.EnumDescriptor {
146	return file_google_appengine_v1_app_yaml_proto_enumTypes[1].Descriptor()
147}
148
149func (LoginRequirement) Type() protoreflect.EnumType {
150	return &file_google_appengine_v1_app_yaml_proto_enumTypes[1]
151}
152
153func (x LoginRequirement) Number() protoreflect.EnumNumber {
154	return protoreflect.EnumNumber(x)
155}
156
157// Deprecated: Use LoginRequirement.Descriptor instead.
158func (LoginRequirement) EnumDescriptor() ([]byte, []int) {
159	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{1}
160}
161
162// Methods to enforce security (HTTPS) on a URL.
163type SecurityLevel int32
164
165const (
166	// Not specified.
167	SecurityLevel_SECURE_UNSPECIFIED SecurityLevel = 0
168	// Both HTTP and HTTPS requests with URLs that match the handler succeed
169	// without redirects. The application can examine the request to determine
170	// which protocol was used, and respond accordingly.
171	SecurityLevel_SECURE_DEFAULT SecurityLevel = 0
172	// Requests for a URL that match this handler that use HTTPS are automatically
173	// redirected to the HTTP equivalent URL.
174	SecurityLevel_SECURE_NEVER SecurityLevel = 1
175	// Both HTTP and HTTPS requests with URLs that match the handler succeed
176	// without redirects. The application can examine the request to determine
177	// which protocol was used and respond accordingly.
178	SecurityLevel_SECURE_OPTIONAL SecurityLevel = 2
179	// Requests for a URL that match this handler that do not use HTTPS are
180	// automatically redirected to the HTTPS URL with the same path. Query
181	// parameters are reserved for the redirect.
182	SecurityLevel_SECURE_ALWAYS SecurityLevel = 3
183)
184
185// Enum value maps for SecurityLevel.
186var (
187	SecurityLevel_name = map[int32]string{
188		0: "SECURE_UNSPECIFIED",
189		// Duplicate value: 0: "SECURE_DEFAULT",
190		1: "SECURE_NEVER",
191		2: "SECURE_OPTIONAL",
192		3: "SECURE_ALWAYS",
193	}
194	SecurityLevel_value = map[string]int32{
195		"SECURE_UNSPECIFIED": 0,
196		"SECURE_DEFAULT":     0,
197		"SECURE_NEVER":       1,
198		"SECURE_OPTIONAL":    2,
199		"SECURE_ALWAYS":      3,
200	}
201)
202
203func (x SecurityLevel) Enum() *SecurityLevel {
204	p := new(SecurityLevel)
205	*p = x
206	return p
207}
208
209func (x SecurityLevel) String() string {
210	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
211}
212
213func (SecurityLevel) Descriptor() protoreflect.EnumDescriptor {
214	return file_google_appengine_v1_app_yaml_proto_enumTypes[2].Descriptor()
215}
216
217func (SecurityLevel) Type() protoreflect.EnumType {
218	return &file_google_appengine_v1_app_yaml_proto_enumTypes[2]
219}
220
221func (x SecurityLevel) Number() protoreflect.EnumNumber {
222	return protoreflect.EnumNumber(x)
223}
224
225// Deprecated: Use SecurityLevel.Descriptor instead.
226func (SecurityLevel) EnumDescriptor() ([]byte, []int) {
227	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{2}
228}
229
230// Error codes.
231type ErrorHandler_ErrorCode int32
232
233const (
234	// Not specified. ERROR_CODE_DEFAULT is assumed.
235	ErrorHandler_ERROR_CODE_UNSPECIFIED ErrorHandler_ErrorCode = 0
236	// All other error types.
237	ErrorHandler_ERROR_CODE_DEFAULT ErrorHandler_ErrorCode = 0
238	// Application has exceeded a resource quota.
239	ErrorHandler_ERROR_CODE_OVER_QUOTA ErrorHandler_ErrorCode = 1
240	// Client blocked by the application's Denial of Service protection
241	// configuration.
242	ErrorHandler_ERROR_CODE_DOS_API_DENIAL ErrorHandler_ErrorCode = 2
243	// Deadline reached before the application responds.
244	ErrorHandler_ERROR_CODE_TIMEOUT ErrorHandler_ErrorCode = 3
245)
246
247// Enum value maps for ErrorHandler_ErrorCode.
248var (
249	ErrorHandler_ErrorCode_name = map[int32]string{
250		0: "ERROR_CODE_UNSPECIFIED",
251		// Duplicate value: 0: "ERROR_CODE_DEFAULT",
252		1: "ERROR_CODE_OVER_QUOTA",
253		2: "ERROR_CODE_DOS_API_DENIAL",
254		3: "ERROR_CODE_TIMEOUT",
255	}
256	ErrorHandler_ErrorCode_value = map[string]int32{
257		"ERROR_CODE_UNSPECIFIED":    0,
258		"ERROR_CODE_DEFAULT":        0,
259		"ERROR_CODE_OVER_QUOTA":     1,
260		"ERROR_CODE_DOS_API_DENIAL": 2,
261		"ERROR_CODE_TIMEOUT":        3,
262	}
263)
264
265func (x ErrorHandler_ErrorCode) Enum() *ErrorHandler_ErrorCode {
266	p := new(ErrorHandler_ErrorCode)
267	*p = x
268	return p
269}
270
271func (x ErrorHandler_ErrorCode) String() string {
272	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
273}
274
275func (ErrorHandler_ErrorCode) Descriptor() protoreflect.EnumDescriptor {
276	return file_google_appengine_v1_app_yaml_proto_enumTypes[3].Descriptor()
277}
278
279func (ErrorHandler_ErrorCode) Type() protoreflect.EnumType {
280	return &file_google_appengine_v1_app_yaml_proto_enumTypes[3]
281}
282
283func (x ErrorHandler_ErrorCode) Number() protoreflect.EnumNumber {
284	return protoreflect.EnumNumber(x)
285}
286
287// Deprecated: Use ErrorHandler_ErrorCode.Descriptor instead.
288func (ErrorHandler_ErrorCode) EnumDescriptor() ([]byte, []int) {
289	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{1, 0}
290}
291
292// Redirect codes.
293type UrlMap_RedirectHttpResponseCode int32
294
295const (
296	// Not specified. `302` is assumed.
297	UrlMap_REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED UrlMap_RedirectHttpResponseCode = 0
298	// `301 Moved Permanently` code.
299	UrlMap_REDIRECT_HTTP_RESPONSE_CODE_301 UrlMap_RedirectHttpResponseCode = 1
300	// `302 Moved Temporarily` code.
301	UrlMap_REDIRECT_HTTP_RESPONSE_CODE_302 UrlMap_RedirectHttpResponseCode = 2
302	// `303 See Other` code.
303	UrlMap_REDIRECT_HTTP_RESPONSE_CODE_303 UrlMap_RedirectHttpResponseCode = 3
304	// `307 Temporary Redirect` code.
305	UrlMap_REDIRECT_HTTP_RESPONSE_CODE_307 UrlMap_RedirectHttpResponseCode = 4
306)
307
308// Enum value maps for UrlMap_RedirectHttpResponseCode.
309var (
310	UrlMap_RedirectHttpResponseCode_name = map[int32]string{
311		0: "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED",
312		1: "REDIRECT_HTTP_RESPONSE_CODE_301",
313		2: "REDIRECT_HTTP_RESPONSE_CODE_302",
314		3: "REDIRECT_HTTP_RESPONSE_CODE_303",
315		4: "REDIRECT_HTTP_RESPONSE_CODE_307",
316	}
317	UrlMap_RedirectHttpResponseCode_value = map[string]int32{
318		"REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED": 0,
319		"REDIRECT_HTTP_RESPONSE_CODE_301":         1,
320		"REDIRECT_HTTP_RESPONSE_CODE_302":         2,
321		"REDIRECT_HTTP_RESPONSE_CODE_303":         3,
322		"REDIRECT_HTTP_RESPONSE_CODE_307":         4,
323	}
324)
325
326func (x UrlMap_RedirectHttpResponseCode) Enum() *UrlMap_RedirectHttpResponseCode {
327	p := new(UrlMap_RedirectHttpResponseCode)
328	*p = x
329	return p
330}
331
332func (x UrlMap_RedirectHttpResponseCode) String() string {
333	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
334}
335
336func (UrlMap_RedirectHttpResponseCode) Descriptor() protoreflect.EnumDescriptor {
337	return file_google_appengine_v1_app_yaml_proto_enumTypes[4].Descriptor()
338}
339
340func (UrlMap_RedirectHttpResponseCode) Type() protoreflect.EnumType {
341	return &file_google_appengine_v1_app_yaml_proto_enumTypes[4]
342}
343
344func (x UrlMap_RedirectHttpResponseCode) Number() protoreflect.EnumNumber {
345	return protoreflect.EnumNumber(x)
346}
347
348// Deprecated: Use UrlMap_RedirectHttpResponseCode.Descriptor instead.
349func (UrlMap_RedirectHttpResponseCode) EnumDescriptor() ([]byte, []int) {
350	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{2, 0}
351}
352
353// [Google Cloud Endpoints](https://cloud.google.com/appengine/docs/python/endpoints/)
354// configuration for API handlers.
355type ApiConfigHandler struct {
356	state         protoimpl.MessageState
357	sizeCache     protoimpl.SizeCache
358	unknownFields protoimpl.UnknownFields
359
360	// Action to take when users access resources that require
361	// authentication. Defaults to `redirect`.
362	AuthFailAction AuthFailAction `protobuf:"varint,1,opt,name=auth_fail_action,json=authFailAction,proto3,enum=google.appengine.v1.AuthFailAction" json:"auth_fail_action,omitempty"`
363	// Level of login required to access this resource. Defaults to
364	// `optional`.
365	Login LoginRequirement `protobuf:"varint,2,opt,name=login,proto3,enum=google.appengine.v1.LoginRequirement" json:"login,omitempty"`
366	// Path to the script from the application root directory.
367	Script string `protobuf:"bytes,3,opt,name=script,proto3" json:"script,omitempty"`
368	// Security (HTTPS) enforcement for this URL.
369	SecurityLevel SecurityLevel `protobuf:"varint,4,opt,name=security_level,json=securityLevel,proto3,enum=google.appengine.v1.SecurityLevel" json:"security_level,omitempty"`
370	// URL to serve the endpoint at.
371	Url string `protobuf:"bytes,5,opt,name=url,proto3" json:"url,omitempty"`
372}
373
374func (x *ApiConfigHandler) Reset() {
375	*x = ApiConfigHandler{}
376	if protoimpl.UnsafeEnabled {
377		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[0]
378		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
379		ms.StoreMessageInfo(mi)
380	}
381}
382
383func (x *ApiConfigHandler) String() string {
384	return protoimpl.X.MessageStringOf(x)
385}
386
387func (*ApiConfigHandler) ProtoMessage() {}
388
389func (x *ApiConfigHandler) ProtoReflect() protoreflect.Message {
390	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[0]
391	if protoimpl.UnsafeEnabled && x != nil {
392		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
393		if ms.LoadMessageInfo() == nil {
394			ms.StoreMessageInfo(mi)
395		}
396		return ms
397	}
398	return mi.MessageOf(x)
399}
400
401// Deprecated: Use ApiConfigHandler.ProtoReflect.Descriptor instead.
402func (*ApiConfigHandler) Descriptor() ([]byte, []int) {
403	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{0}
404}
405
406func (x *ApiConfigHandler) GetAuthFailAction() AuthFailAction {
407	if x != nil {
408		return x.AuthFailAction
409	}
410	return AuthFailAction_AUTH_FAIL_ACTION_UNSPECIFIED
411}
412
413func (x *ApiConfigHandler) GetLogin() LoginRequirement {
414	if x != nil {
415		return x.Login
416	}
417	return LoginRequirement_LOGIN_UNSPECIFIED
418}
419
420func (x *ApiConfigHandler) GetScript() string {
421	if x != nil {
422		return x.Script
423	}
424	return ""
425}
426
427func (x *ApiConfigHandler) GetSecurityLevel() SecurityLevel {
428	if x != nil {
429		return x.SecurityLevel
430	}
431	return SecurityLevel_SECURE_UNSPECIFIED
432}
433
434func (x *ApiConfigHandler) GetUrl() string {
435	if x != nil {
436		return x.Url
437	}
438	return ""
439}
440
441// Custom static error page to be served when an error occurs.
442type ErrorHandler struct {
443	state         protoimpl.MessageState
444	sizeCache     protoimpl.SizeCache
445	unknownFields protoimpl.UnknownFields
446
447	// Error condition this handler applies to.
448	ErrorCode ErrorHandler_ErrorCode `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3,enum=google.appengine.v1.ErrorHandler_ErrorCode" json:"error_code,omitempty"`
449	// Static file content to be served for this error.
450	StaticFile string `protobuf:"bytes,2,opt,name=static_file,json=staticFile,proto3" json:"static_file,omitempty"`
451	// MIME type of file. Defaults to `text/html`.
452	MimeType string `protobuf:"bytes,3,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"`
453}
454
455func (x *ErrorHandler) Reset() {
456	*x = ErrorHandler{}
457	if protoimpl.UnsafeEnabled {
458		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[1]
459		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
460		ms.StoreMessageInfo(mi)
461	}
462}
463
464func (x *ErrorHandler) String() string {
465	return protoimpl.X.MessageStringOf(x)
466}
467
468func (*ErrorHandler) ProtoMessage() {}
469
470func (x *ErrorHandler) ProtoReflect() protoreflect.Message {
471	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[1]
472	if protoimpl.UnsafeEnabled && x != nil {
473		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
474		if ms.LoadMessageInfo() == nil {
475			ms.StoreMessageInfo(mi)
476		}
477		return ms
478	}
479	return mi.MessageOf(x)
480}
481
482// Deprecated: Use ErrorHandler.ProtoReflect.Descriptor instead.
483func (*ErrorHandler) Descriptor() ([]byte, []int) {
484	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{1}
485}
486
487func (x *ErrorHandler) GetErrorCode() ErrorHandler_ErrorCode {
488	if x != nil {
489		return x.ErrorCode
490	}
491	return ErrorHandler_ERROR_CODE_UNSPECIFIED
492}
493
494func (x *ErrorHandler) GetStaticFile() string {
495	if x != nil {
496		return x.StaticFile
497	}
498	return ""
499}
500
501func (x *ErrorHandler) GetMimeType() string {
502	if x != nil {
503		return x.MimeType
504	}
505	return ""
506}
507
508// URL pattern and description of how the URL should be handled. App Engine can
509// handle URLs by executing application code or by serving static files
510// uploaded with the version, such as images, CSS, or JavaScript.
511type UrlMap struct {
512	state         protoimpl.MessageState
513	sizeCache     protoimpl.SizeCache
514	unknownFields protoimpl.UnknownFields
515
516	// URL prefix. Uses regular expression syntax, which means regexp
517	// special characters must be escaped, but should not contain groupings.
518	// All URLs that begin with this prefix are handled by this handler, using the
519	// portion of the URL after the prefix as part of the file path.
520	UrlRegex string `protobuf:"bytes,1,opt,name=url_regex,json=urlRegex,proto3" json:"url_regex,omitempty"`
521	// Type of handler for this URL pattern.
522	//
523	// Types that are assignable to HandlerType:
524	//	*UrlMap_StaticFiles
525	//	*UrlMap_Script
526	//	*UrlMap_ApiEndpoint
527	HandlerType isUrlMap_HandlerType `protobuf_oneof:"handler_type"`
528	// Security (HTTPS) enforcement for this URL.
529	SecurityLevel SecurityLevel `protobuf:"varint,5,opt,name=security_level,json=securityLevel,proto3,enum=google.appengine.v1.SecurityLevel" json:"security_level,omitempty"`
530	// Level of login required to access this resource. Not supported for Node.js
531	// in the App Engine standard environment.
532	Login LoginRequirement `protobuf:"varint,6,opt,name=login,proto3,enum=google.appengine.v1.LoginRequirement" json:"login,omitempty"`
533	// Action to take when users access resources that require
534	// authentication. Defaults to `redirect`.
535	AuthFailAction AuthFailAction `protobuf:"varint,7,opt,name=auth_fail_action,json=authFailAction,proto3,enum=google.appengine.v1.AuthFailAction" json:"auth_fail_action,omitempty"`
536	// `30x` code to use when performing redirects for the `secure` field.
537	// Defaults to `302`.
538	RedirectHttpResponseCode UrlMap_RedirectHttpResponseCode `protobuf:"varint,8,opt,name=redirect_http_response_code,json=redirectHttpResponseCode,proto3,enum=google.appengine.v1.UrlMap_RedirectHttpResponseCode" json:"redirect_http_response_code,omitempty"`
539}
540
541func (x *UrlMap) Reset() {
542	*x = UrlMap{}
543	if protoimpl.UnsafeEnabled {
544		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[2]
545		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
546		ms.StoreMessageInfo(mi)
547	}
548}
549
550func (x *UrlMap) String() string {
551	return protoimpl.X.MessageStringOf(x)
552}
553
554func (*UrlMap) ProtoMessage() {}
555
556func (x *UrlMap) ProtoReflect() protoreflect.Message {
557	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[2]
558	if protoimpl.UnsafeEnabled && x != nil {
559		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
560		if ms.LoadMessageInfo() == nil {
561			ms.StoreMessageInfo(mi)
562		}
563		return ms
564	}
565	return mi.MessageOf(x)
566}
567
568// Deprecated: Use UrlMap.ProtoReflect.Descriptor instead.
569func (*UrlMap) Descriptor() ([]byte, []int) {
570	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{2}
571}
572
573func (x *UrlMap) GetUrlRegex() string {
574	if x != nil {
575		return x.UrlRegex
576	}
577	return ""
578}
579
580func (m *UrlMap) GetHandlerType() isUrlMap_HandlerType {
581	if m != nil {
582		return m.HandlerType
583	}
584	return nil
585}
586
587func (x *UrlMap) GetStaticFiles() *StaticFilesHandler {
588	if x, ok := x.GetHandlerType().(*UrlMap_StaticFiles); ok {
589		return x.StaticFiles
590	}
591	return nil
592}
593
594func (x *UrlMap) GetScript() *ScriptHandler {
595	if x, ok := x.GetHandlerType().(*UrlMap_Script); ok {
596		return x.Script
597	}
598	return nil
599}
600
601func (x *UrlMap) GetApiEndpoint() *ApiEndpointHandler {
602	if x, ok := x.GetHandlerType().(*UrlMap_ApiEndpoint); ok {
603		return x.ApiEndpoint
604	}
605	return nil
606}
607
608func (x *UrlMap) GetSecurityLevel() SecurityLevel {
609	if x != nil {
610		return x.SecurityLevel
611	}
612	return SecurityLevel_SECURE_UNSPECIFIED
613}
614
615func (x *UrlMap) GetLogin() LoginRequirement {
616	if x != nil {
617		return x.Login
618	}
619	return LoginRequirement_LOGIN_UNSPECIFIED
620}
621
622func (x *UrlMap) GetAuthFailAction() AuthFailAction {
623	if x != nil {
624		return x.AuthFailAction
625	}
626	return AuthFailAction_AUTH_FAIL_ACTION_UNSPECIFIED
627}
628
629func (x *UrlMap) GetRedirectHttpResponseCode() UrlMap_RedirectHttpResponseCode {
630	if x != nil {
631		return x.RedirectHttpResponseCode
632	}
633	return UrlMap_REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED
634}
635
636type isUrlMap_HandlerType interface {
637	isUrlMap_HandlerType()
638}
639
640type UrlMap_StaticFiles struct {
641	// Returns the contents of a file, such as an image, as the response.
642	StaticFiles *StaticFilesHandler `protobuf:"bytes,2,opt,name=static_files,json=staticFiles,proto3,oneof"`
643}
644
645type UrlMap_Script struct {
646	// Executes a script to handle the requests that match this URL
647	// pattern. Only the `auto` value is supported for Node.js in the
648	// App Engine standard environment, for example `"script": "auto"`.
649	Script *ScriptHandler `protobuf:"bytes,3,opt,name=script,proto3,oneof"`
650}
651
652type UrlMap_ApiEndpoint struct {
653	// Uses API Endpoints to handle requests.
654	ApiEndpoint *ApiEndpointHandler `protobuf:"bytes,4,opt,name=api_endpoint,json=apiEndpoint,proto3,oneof"`
655}
656
657func (*UrlMap_StaticFiles) isUrlMap_HandlerType() {}
658
659func (*UrlMap_Script) isUrlMap_HandlerType() {}
660
661func (*UrlMap_ApiEndpoint) isUrlMap_HandlerType() {}
662
663// Files served directly to the user for a given URL, such as images, CSS
664// stylesheets, or JavaScript source files. Static file handlers describe which
665// files in the application directory are static files, and which URLs serve
666// them.
667type StaticFilesHandler struct {
668	state         protoimpl.MessageState
669	sizeCache     protoimpl.SizeCache
670	unknownFields protoimpl.UnknownFields
671
672	// Path to the static files matched by the URL pattern, from the
673	// application root directory. The path can refer to text matched in groupings
674	// in the URL pattern.
675	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
676	// Regular expression that matches the file paths for all files that should be
677	// referenced by this handler.
678	UploadPathRegex string `protobuf:"bytes,2,opt,name=upload_path_regex,json=uploadPathRegex,proto3" json:"upload_path_regex,omitempty"`
679	// HTTP headers to use for all responses from these URLs.
680	HttpHeaders map[string]string `protobuf:"bytes,3,rep,name=http_headers,json=httpHeaders,proto3" json:"http_headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
681	// MIME type used to serve all files served by this handler.
682	//
683	// Defaults to file-specific MIME types, which are derived from each file's
684	// filename extension.
685	MimeType string `protobuf:"bytes,4,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"`
686	// Time a static file served by this handler should be cached
687	// by web proxies and browsers.
688	Expiration *durationpb.Duration `protobuf:"bytes,5,opt,name=expiration,proto3" json:"expiration,omitempty"`
689	// Whether this handler should match the request if the file
690	// referenced by the handler does not exist.
691	RequireMatchingFile bool `protobuf:"varint,6,opt,name=require_matching_file,json=requireMatchingFile,proto3" json:"require_matching_file,omitempty"`
692	// Whether files should also be uploaded as code data. By default, files
693	// declared in static file handlers are uploaded as static
694	// data and are only served to end users; they cannot be read by the
695	// application. If enabled, uploads are charged against both your code and
696	// static data storage resource quotas.
697	ApplicationReadable bool `protobuf:"varint,7,opt,name=application_readable,json=applicationReadable,proto3" json:"application_readable,omitempty"`
698}
699
700func (x *StaticFilesHandler) Reset() {
701	*x = StaticFilesHandler{}
702	if protoimpl.UnsafeEnabled {
703		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[3]
704		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
705		ms.StoreMessageInfo(mi)
706	}
707}
708
709func (x *StaticFilesHandler) String() string {
710	return protoimpl.X.MessageStringOf(x)
711}
712
713func (*StaticFilesHandler) ProtoMessage() {}
714
715func (x *StaticFilesHandler) ProtoReflect() protoreflect.Message {
716	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[3]
717	if protoimpl.UnsafeEnabled && x != nil {
718		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
719		if ms.LoadMessageInfo() == nil {
720			ms.StoreMessageInfo(mi)
721		}
722		return ms
723	}
724	return mi.MessageOf(x)
725}
726
727// Deprecated: Use StaticFilesHandler.ProtoReflect.Descriptor instead.
728func (*StaticFilesHandler) Descriptor() ([]byte, []int) {
729	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{3}
730}
731
732func (x *StaticFilesHandler) GetPath() string {
733	if x != nil {
734		return x.Path
735	}
736	return ""
737}
738
739func (x *StaticFilesHandler) GetUploadPathRegex() string {
740	if x != nil {
741		return x.UploadPathRegex
742	}
743	return ""
744}
745
746func (x *StaticFilesHandler) GetHttpHeaders() map[string]string {
747	if x != nil {
748		return x.HttpHeaders
749	}
750	return nil
751}
752
753func (x *StaticFilesHandler) GetMimeType() string {
754	if x != nil {
755		return x.MimeType
756	}
757	return ""
758}
759
760func (x *StaticFilesHandler) GetExpiration() *durationpb.Duration {
761	if x != nil {
762		return x.Expiration
763	}
764	return nil
765}
766
767func (x *StaticFilesHandler) GetRequireMatchingFile() bool {
768	if x != nil {
769		return x.RequireMatchingFile
770	}
771	return false
772}
773
774func (x *StaticFilesHandler) GetApplicationReadable() bool {
775	if x != nil {
776		return x.ApplicationReadable
777	}
778	return false
779}
780
781// Executes a script to handle the request that matches the URL pattern.
782type ScriptHandler struct {
783	state         protoimpl.MessageState
784	sizeCache     protoimpl.SizeCache
785	unknownFields protoimpl.UnknownFields
786
787	// Path to the script from the application root directory.
788	ScriptPath string `protobuf:"bytes,1,opt,name=script_path,json=scriptPath,proto3" json:"script_path,omitempty"`
789}
790
791func (x *ScriptHandler) Reset() {
792	*x = ScriptHandler{}
793	if protoimpl.UnsafeEnabled {
794		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[4]
795		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
796		ms.StoreMessageInfo(mi)
797	}
798}
799
800func (x *ScriptHandler) String() string {
801	return protoimpl.X.MessageStringOf(x)
802}
803
804func (*ScriptHandler) ProtoMessage() {}
805
806func (x *ScriptHandler) ProtoReflect() protoreflect.Message {
807	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[4]
808	if protoimpl.UnsafeEnabled && x != nil {
809		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
810		if ms.LoadMessageInfo() == nil {
811			ms.StoreMessageInfo(mi)
812		}
813		return ms
814	}
815	return mi.MessageOf(x)
816}
817
818// Deprecated: Use ScriptHandler.ProtoReflect.Descriptor instead.
819func (*ScriptHandler) Descriptor() ([]byte, []int) {
820	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{4}
821}
822
823func (x *ScriptHandler) GetScriptPath() string {
824	if x != nil {
825		return x.ScriptPath
826	}
827	return ""
828}
829
830// Uses Google Cloud Endpoints to handle requests.
831type ApiEndpointHandler struct {
832	state         protoimpl.MessageState
833	sizeCache     protoimpl.SizeCache
834	unknownFields protoimpl.UnknownFields
835
836	// Path to the script from the application root directory.
837	ScriptPath string `protobuf:"bytes,1,opt,name=script_path,json=scriptPath,proto3" json:"script_path,omitempty"`
838}
839
840func (x *ApiEndpointHandler) Reset() {
841	*x = ApiEndpointHandler{}
842	if protoimpl.UnsafeEnabled {
843		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[5]
844		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
845		ms.StoreMessageInfo(mi)
846	}
847}
848
849func (x *ApiEndpointHandler) String() string {
850	return protoimpl.X.MessageStringOf(x)
851}
852
853func (*ApiEndpointHandler) ProtoMessage() {}
854
855func (x *ApiEndpointHandler) ProtoReflect() protoreflect.Message {
856	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[5]
857	if protoimpl.UnsafeEnabled && x != nil {
858		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
859		if ms.LoadMessageInfo() == nil {
860			ms.StoreMessageInfo(mi)
861		}
862		return ms
863	}
864	return mi.MessageOf(x)
865}
866
867// Deprecated: Use ApiEndpointHandler.ProtoReflect.Descriptor instead.
868func (*ApiEndpointHandler) Descriptor() ([]byte, []int) {
869	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{5}
870}
871
872func (x *ApiEndpointHandler) GetScriptPath() string {
873	if x != nil {
874		return x.ScriptPath
875	}
876	return ""
877}
878
879// Health checking configuration for VM instances. Unhealthy instances
880// are killed and replaced with new instances. Only applicable for
881// instances in App Engine flexible environment.
882type HealthCheck struct {
883	state         protoimpl.MessageState
884	sizeCache     protoimpl.SizeCache
885	unknownFields protoimpl.UnknownFields
886
887	// Whether to explicitly disable health checks for this instance.
888	DisableHealthCheck bool `protobuf:"varint,1,opt,name=disable_health_check,json=disableHealthCheck,proto3" json:"disable_health_check,omitempty"`
889	// Host header to send when performing an HTTP health check.
890	// Example: "myapp.appspot.com"
891	Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"`
892	// Number of consecutive successful health checks required before receiving
893	// traffic.
894	HealthyThreshold uint32 `protobuf:"varint,3,opt,name=healthy_threshold,json=healthyThreshold,proto3" json:"healthy_threshold,omitempty"`
895	// Number of consecutive failed health checks required before removing
896	// traffic.
897	UnhealthyThreshold uint32 `protobuf:"varint,4,opt,name=unhealthy_threshold,json=unhealthyThreshold,proto3" json:"unhealthy_threshold,omitempty"`
898	// Number of consecutive failed health checks required before an instance is
899	// restarted.
900	RestartThreshold uint32 `protobuf:"varint,5,opt,name=restart_threshold,json=restartThreshold,proto3" json:"restart_threshold,omitempty"`
901	// Interval between health checks.
902	CheckInterval *durationpb.Duration `protobuf:"bytes,6,opt,name=check_interval,json=checkInterval,proto3" json:"check_interval,omitempty"`
903	// Time before the health check is considered failed.
904	Timeout *durationpb.Duration `protobuf:"bytes,7,opt,name=timeout,proto3" json:"timeout,omitempty"`
905}
906
907func (x *HealthCheck) Reset() {
908	*x = HealthCheck{}
909	if protoimpl.UnsafeEnabled {
910		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[6]
911		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
912		ms.StoreMessageInfo(mi)
913	}
914}
915
916func (x *HealthCheck) String() string {
917	return protoimpl.X.MessageStringOf(x)
918}
919
920func (*HealthCheck) ProtoMessage() {}
921
922func (x *HealthCheck) ProtoReflect() protoreflect.Message {
923	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[6]
924	if protoimpl.UnsafeEnabled && x != nil {
925		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
926		if ms.LoadMessageInfo() == nil {
927			ms.StoreMessageInfo(mi)
928		}
929		return ms
930	}
931	return mi.MessageOf(x)
932}
933
934// Deprecated: Use HealthCheck.ProtoReflect.Descriptor instead.
935func (*HealthCheck) Descriptor() ([]byte, []int) {
936	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{6}
937}
938
939func (x *HealthCheck) GetDisableHealthCheck() bool {
940	if x != nil {
941		return x.DisableHealthCheck
942	}
943	return false
944}
945
946func (x *HealthCheck) GetHost() string {
947	if x != nil {
948		return x.Host
949	}
950	return ""
951}
952
953func (x *HealthCheck) GetHealthyThreshold() uint32 {
954	if x != nil {
955		return x.HealthyThreshold
956	}
957	return 0
958}
959
960func (x *HealthCheck) GetUnhealthyThreshold() uint32 {
961	if x != nil {
962		return x.UnhealthyThreshold
963	}
964	return 0
965}
966
967func (x *HealthCheck) GetRestartThreshold() uint32 {
968	if x != nil {
969		return x.RestartThreshold
970	}
971	return 0
972}
973
974func (x *HealthCheck) GetCheckInterval() *durationpb.Duration {
975	if x != nil {
976		return x.CheckInterval
977	}
978	return nil
979}
980
981func (x *HealthCheck) GetTimeout() *durationpb.Duration {
982	if x != nil {
983		return x.Timeout
984	}
985	return nil
986}
987
988// Readiness checking configuration for VM instances. Unhealthy instances
989// are removed from traffic rotation.
990type ReadinessCheck struct {
991	state         protoimpl.MessageState
992	sizeCache     protoimpl.SizeCache
993	unknownFields protoimpl.UnknownFields
994
995	// The request path.
996	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
997	// Host header to send when performing a HTTP Readiness check.
998	// Example: "myapp.appspot.com"
999	Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"`
1000	// Number of consecutive failed checks required before removing
1001	// traffic.
1002	FailureThreshold uint32 `protobuf:"varint,3,opt,name=failure_threshold,json=failureThreshold,proto3" json:"failure_threshold,omitempty"`
1003	// Number of consecutive successful checks required before receiving
1004	// traffic.
1005	SuccessThreshold uint32 `protobuf:"varint,4,opt,name=success_threshold,json=successThreshold,proto3" json:"success_threshold,omitempty"`
1006	// Interval between health checks.
1007	CheckInterval *durationpb.Duration `protobuf:"bytes,5,opt,name=check_interval,json=checkInterval,proto3" json:"check_interval,omitempty"`
1008	// Time before the check is considered failed.
1009	Timeout *durationpb.Duration `protobuf:"bytes,6,opt,name=timeout,proto3" json:"timeout,omitempty"`
1010	// A maximum time limit on application initialization, measured from moment
1011	// the application successfully replies to a healthcheck until it is ready to
1012	// serve traffic.
1013	AppStartTimeout *durationpb.Duration `protobuf:"bytes,7,opt,name=app_start_timeout,json=appStartTimeout,proto3" json:"app_start_timeout,omitempty"`
1014}
1015
1016func (x *ReadinessCheck) Reset() {
1017	*x = ReadinessCheck{}
1018	if protoimpl.UnsafeEnabled {
1019		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[7]
1020		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1021		ms.StoreMessageInfo(mi)
1022	}
1023}
1024
1025func (x *ReadinessCheck) String() string {
1026	return protoimpl.X.MessageStringOf(x)
1027}
1028
1029func (*ReadinessCheck) ProtoMessage() {}
1030
1031func (x *ReadinessCheck) ProtoReflect() protoreflect.Message {
1032	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[7]
1033	if protoimpl.UnsafeEnabled && x != nil {
1034		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1035		if ms.LoadMessageInfo() == nil {
1036			ms.StoreMessageInfo(mi)
1037		}
1038		return ms
1039	}
1040	return mi.MessageOf(x)
1041}
1042
1043// Deprecated: Use ReadinessCheck.ProtoReflect.Descriptor instead.
1044func (*ReadinessCheck) Descriptor() ([]byte, []int) {
1045	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{7}
1046}
1047
1048func (x *ReadinessCheck) GetPath() string {
1049	if x != nil {
1050		return x.Path
1051	}
1052	return ""
1053}
1054
1055func (x *ReadinessCheck) GetHost() string {
1056	if x != nil {
1057		return x.Host
1058	}
1059	return ""
1060}
1061
1062func (x *ReadinessCheck) GetFailureThreshold() uint32 {
1063	if x != nil {
1064		return x.FailureThreshold
1065	}
1066	return 0
1067}
1068
1069func (x *ReadinessCheck) GetSuccessThreshold() uint32 {
1070	if x != nil {
1071		return x.SuccessThreshold
1072	}
1073	return 0
1074}
1075
1076func (x *ReadinessCheck) GetCheckInterval() *durationpb.Duration {
1077	if x != nil {
1078		return x.CheckInterval
1079	}
1080	return nil
1081}
1082
1083func (x *ReadinessCheck) GetTimeout() *durationpb.Duration {
1084	if x != nil {
1085		return x.Timeout
1086	}
1087	return nil
1088}
1089
1090func (x *ReadinessCheck) GetAppStartTimeout() *durationpb.Duration {
1091	if x != nil {
1092		return x.AppStartTimeout
1093	}
1094	return nil
1095}
1096
1097// Health checking configuration for VM instances. Unhealthy instances
1098// are killed and replaced with new instances.
1099type LivenessCheck struct {
1100	state         protoimpl.MessageState
1101	sizeCache     protoimpl.SizeCache
1102	unknownFields protoimpl.UnknownFields
1103
1104	// The request path.
1105	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
1106	// Host header to send when performing a HTTP Liveness check.
1107	// Example: "myapp.appspot.com"
1108	Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"`
1109	// Number of consecutive failed checks required before considering the
1110	// VM unhealthy.
1111	FailureThreshold uint32 `protobuf:"varint,3,opt,name=failure_threshold,json=failureThreshold,proto3" json:"failure_threshold,omitempty"`
1112	// Number of consecutive successful checks required before considering
1113	// the VM healthy.
1114	SuccessThreshold uint32 `protobuf:"varint,4,opt,name=success_threshold,json=successThreshold,proto3" json:"success_threshold,omitempty"`
1115	// Interval between health checks.
1116	CheckInterval *durationpb.Duration `protobuf:"bytes,5,opt,name=check_interval,json=checkInterval,proto3" json:"check_interval,omitempty"`
1117	// Time before the check is considered failed.
1118	Timeout *durationpb.Duration `protobuf:"bytes,6,opt,name=timeout,proto3" json:"timeout,omitempty"`
1119	// The initial delay before starting to execute the checks.
1120	InitialDelay *durationpb.Duration `protobuf:"bytes,7,opt,name=initial_delay,json=initialDelay,proto3" json:"initial_delay,omitempty"`
1121}
1122
1123func (x *LivenessCheck) Reset() {
1124	*x = LivenessCheck{}
1125	if protoimpl.UnsafeEnabled {
1126		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[8]
1127		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1128		ms.StoreMessageInfo(mi)
1129	}
1130}
1131
1132func (x *LivenessCheck) String() string {
1133	return protoimpl.X.MessageStringOf(x)
1134}
1135
1136func (*LivenessCheck) ProtoMessage() {}
1137
1138func (x *LivenessCheck) ProtoReflect() protoreflect.Message {
1139	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[8]
1140	if protoimpl.UnsafeEnabled && x != nil {
1141		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1142		if ms.LoadMessageInfo() == nil {
1143			ms.StoreMessageInfo(mi)
1144		}
1145		return ms
1146	}
1147	return mi.MessageOf(x)
1148}
1149
1150// Deprecated: Use LivenessCheck.ProtoReflect.Descriptor instead.
1151func (*LivenessCheck) Descriptor() ([]byte, []int) {
1152	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{8}
1153}
1154
1155func (x *LivenessCheck) GetPath() string {
1156	if x != nil {
1157		return x.Path
1158	}
1159	return ""
1160}
1161
1162func (x *LivenessCheck) GetHost() string {
1163	if x != nil {
1164		return x.Host
1165	}
1166	return ""
1167}
1168
1169func (x *LivenessCheck) GetFailureThreshold() uint32 {
1170	if x != nil {
1171		return x.FailureThreshold
1172	}
1173	return 0
1174}
1175
1176func (x *LivenessCheck) GetSuccessThreshold() uint32 {
1177	if x != nil {
1178		return x.SuccessThreshold
1179	}
1180	return 0
1181}
1182
1183func (x *LivenessCheck) GetCheckInterval() *durationpb.Duration {
1184	if x != nil {
1185		return x.CheckInterval
1186	}
1187	return nil
1188}
1189
1190func (x *LivenessCheck) GetTimeout() *durationpb.Duration {
1191	if x != nil {
1192		return x.Timeout
1193	}
1194	return nil
1195}
1196
1197func (x *LivenessCheck) GetInitialDelay() *durationpb.Duration {
1198	if x != nil {
1199		return x.InitialDelay
1200	}
1201	return nil
1202}
1203
1204// Third-party Python runtime library that is required by the application.
1205type Library struct {
1206	state         protoimpl.MessageState
1207	sizeCache     protoimpl.SizeCache
1208	unknownFields protoimpl.UnknownFields
1209
1210	// Name of the library. Example: "django".
1211	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
1212	// Version of the library to select, or "latest".
1213	Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
1214}
1215
1216func (x *Library) Reset() {
1217	*x = Library{}
1218	if protoimpl.UnsafeEnabled {
1219		mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[9]
1220		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1221		ms.StoreMessageInfo(mi)
1222	}
1223}
1224
1225func (x *Library) String() string {
1226	return protoimpl.X.MessageStringOf(x)
1227}
1228
1229func (*Library) ProtoMessage() {}
1230
1231func (x *Library) ProtoReflect() protoreflect.Message {
1232	mi := &file_google_appengine_v1_app_yaml_proto_msgTypes[9]
1233	if protoimpl.UnsafeEnabled && x != nil {
1234		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1235		if ms.LoadMessageInfo() == nil {
1236			ms.StoreMessageInfo(mi)
1237		}
1238		return ms
1239	}
1240	return mi.MessageOf(x)
1241}
1242
1243// Deprecated: Use Library.ProtoReflect.Descriptor instead.
1244func (*Library) Descriptor() ([]byte, []int) {
1245	return file_google_appengine_v1_app_yaml_proto_rawDescGZIP(), []int{9}
1246}
1247
1248func (x *Library) GetName() string {
1249	if x != nil {
1250		return x.Name
1251	}
1252	return ""
1253}
1254
1255func (x *Library) GetVersion() string {
1256	if x != nil {
1257		return x.Version
1258	}
1259	return ""
1260}
1261
1262var File_google_appengine_v1_app_yaml_proto protoreflect.FileDescriptor
1263
1264var file_google_appengine_v1_app_yaml_proto_rawDesc = []byte{
1265	0x0a, 0x22, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69,
1266	0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x70, 0x70, 0x5f, 0x79, 0x61, 0x6d, 0x6c, 0x2e, 0x70,
1267	0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70,
1268	0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1269	0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74,
1270	0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1271	0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
1272	0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x93, 0x02, 0x0a, 0x10, 0x41, 0x70, 0x69, 0x43,
1273	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x10,
1274	0x61, 0x75, 0x74, 0x68, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
1275	0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1276	0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74,
1277	0x68, 0x46, 0x61, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x61, 0x75, 0x74,
1278	0x68, 0x46, 0x61, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x05, 0x6c,
1279	0x6f, 0x67, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f,
1280	0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
1281	0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e,
1282	0x74, 0x52, 0x05, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x72, 0x69,
1283	0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
1284	0x12, 0x49, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76,
1285	0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1286	0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53,
1287	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x0d, 0x73, 0x65,
1288	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x75,
1289	0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0xb0, 0x02,
1290	0x0a, 0x0c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x12, 0x4a,
1291	0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01,
1292	0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65,
1293	0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x48, 0x61,
1294	0x6e, 0x64, 0x6c, 0x65, 0x72, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52,
1295	0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74,
1296	0x61, 0x74, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
1297	0x0a, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d,
1298	0x69, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
1299	0x6d, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x95, 0x01, 0x0a, 0x09, 0x45, 0x72, 0x72,
1300	0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f,
1301	0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
1302	0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45,
1303	0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52,
1304	0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x51, 0x55,
1305	0x4f, 0x54, 0x41, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43,
1306	0x4f, 0x44, 0x45, 0x5f, 0x44, 0x4f, 0x53, 0x5f, 0x41, 0x50, 0x49, 0x5f, 0x44, 0x45, 0x4e, 0x49,
1307	0x41, 0x4c, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f,
1308	0x44, 0x45, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x03, 0x1a, 0x02, 0x10, 0x01,
1309	0x22, 0xb9, 0x06, 0x0a, 0x06, 0x55, 0x72, 0x6c, 0x4d, 0x61, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x75,
1310	0x72, 0x6c, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
1311	0x75, 0x72, 0x6c, 0x52, 0x65, 0x67, 0x65, 0x78, 0x12, 0x4c, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x74,
1312	0x69, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27,
1313	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e,
1314	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x73,
1315	0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x69,
1316	0x63, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x06, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
1317	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1318	0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x72,
1319	0x69, 0x70, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x48, 0x00, 0x52, 0x06, 0x73, 0x63,
1320	0x72, 0x69, 0x70, 0x74, 0x12, 0x4c, 0x0a, 0x0c, 0x61, 0x70, 0x69, 0x5f, 0x65, 0x6e, 0x64, 0x70,
1321	0x6f, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f,
1322	0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
1323	0x2e, 0x41, 0x70, 0x69, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64,
1324	0x6c, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x70, 0x69, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69,
1325	0x6e, 0x74, 0x12, 0x49, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6c,
1326	0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f,
1327	0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31,
1328	0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x0d,
1329	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x3b, 0x0a,
1330	0x05, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x67,
1331	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e,
1332	0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d,
1333	0x65, 0x6e, 0x74, 0x52, 0x05, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x4d, 0x0a, 0x10, 0x61, 0x75,
1334	0x74, 0x68, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07,
1335	0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
1336	0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x46,
1337	0x61, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x46,
1338	0x61, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x73, 0x0a, 0x1b, 0x72, 0x65, 0x64,
1339	0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f,
1340	0x6e, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34,
1341	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e,
1342	0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x72, 0x6c, 0x4d, 0x61, 0x70, 0x2e, 0x52, 0x65, 0x64, 0x69,
1343	0x72, 0x65, 0x63, 0x74, 0x48, 0x74, 0x74, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
1344	0x43, 0x6f, 0x64, 0x65, 0x52, 0x18, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x48, 0x74,
1345	0x74, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0xdb,
1346	0x01, 0x0a, 0x18, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x48, 0x74, 0x74, 0x70, 0x52,
1347	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2b, 0x0a, 0x27, 0x52,
1348	0x45, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x48, 0x54, 0x54, 0x50, 0x5f, 0x52, 0x45, 0x53,
1349	0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
1350	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x52, 0x45, 0x44, 0x49,
1351	0x52, 0x45, 0x43, 0x54, 0x5f, 0x48, 0x54, 0x54, 0x50, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e,
1352	0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x33, 0x30, 0x31, 0x10, 0x01, 0x12, 0x23, 0x0a,
1353	0x1f, 0x52, 0x45, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x48, 0x54, 0x54, 0x50, 0x5f, 0x52,
1354	0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x33, 0x30, 0x32,
1355	0x10, 0x02, 0x12, 0x23, 0x0a, 0x1f, 0x52, 0x45, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x48,
1356	0x54, 0x54, 0x50, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44,
1357	0x45, 0x5f, 0x33, 0x30, 0x33, 0x10, 0x03, 0x12, 0x23, 0x0a, 0x1f, 0x52, 0x45, 0x44, 0x49, 0x52,
1358	0x45, 0x43, 0x54, 0x5f, 0x48, 0x54, 0x54, 0x50, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53,
1359	0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x33, 0x30, 0x37, 0x10, 0x04, 0x42, 0x0e, 0x0a, 0x0c,
1360	0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0xb0, 0x03, 0x0a,
1361	0x12, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x48, 0x61, 0x6e, 0x64,
1362	0x6c, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28,
1363	0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x2a, 0x0a, 0x11, 0x75, 0x70, 0x6c, 0x6f, 0x61,
1364	0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01,
1365	0x28, 0x09, 0x52, 0x0f, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65,
1366	0x67, 0x65, 0x78, 0x12, 0x5b, 0x0a, 0x0c, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x68, 0x65, 0x61, 0x64,
1367	0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1368	0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e,
1369	0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x48, 0x61, 0x6e, 0x64, 0x6c,
1370	0x65, 0x72, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e,
1371	0x74, 0x72, 0x79, 0x52, 0x0b, 0x68, 0x74, 0x74, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
1372	0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20,
1373	0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x39, 0x0a,
1374	0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
1375	0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1376	0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x65, 0x78,
1377	0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x71, 0x75,
1378	0x69, 0x72, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x69, 0x6c,
1379	0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
1380	0x4d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x31, 0x0a, 0x14,
1381	0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x61, 0x64,
1382	0x61, 0x62, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x61, 0x70, 0x70, 0x6c,
1383	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x1a,
1384	0x3e, 0x0a, 0x10, 0x48, 0x74, 0x74, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e,
1385	0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
1386	0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
1387	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
1388	0x30, 0x0a, 0x0d, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72,
1389	0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18,
1390	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x61, 0x74,
1391	0x68, 0x22, 0x35, 0x0a, 0x12, 0x41, 0x70, 0x69, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
1392	0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x63, 0x72, 0x69, 0x70,
1393	0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63,
1394	0x72, 0x69, 0x70, 0x74, 0x50, 0x61, 0x74, 0x68, 0x22, 0xd5, 0x02, 0x0a, 0x0b, 0x48, 0x65, 0x61,
1395	0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x30, 0x0a, 0x14, 0x64, 0x69, 0x73, 0x61,
1396	0x62, 0x6c, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b,
1397	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x48,
1398	0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f,
1399	0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x2b,
1400	0x0a, 0x11, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68,
1401	0x6f, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x68, 0x65, 0x61, 0x6c, 0x74,
1402	0x68, 0x79, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x75,
1403	0x6e, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f,
1404	0x6c, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x75, 0x6e, 0x68, 0x65, 0x61, 0x6c,
1405	0x74, 0x68, 0x79, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11,
1406	0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c,
1407	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74,
1408	0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x40, 0x0a, 0x0e, 0x63, 0x68, 0x65,
1409	0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
1410	0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1411	0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x68,
1412	0x65, 0x63, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x33, 0x0a, 0x07, 0x74,
1413	0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67,
1414	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44,
1415	0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
1416	0x22, 0xd0, 0x02, 0x0a, 0x0e, 0x52, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x43, 0x68,
1417	0x65, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28,
1418	0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18,
1419	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x66,
1420	0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64,
1421	0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x54,
1422	0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x75, 0x63, 0x63,
1423	0x65, 0x73, 0x73, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x04, 0x20,
1424	0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x68, 0x72, 0x65,
1425	0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x40, 0x0a, 0x0e, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x69,
1426	0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
1427	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
1428	0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x49,
1429	0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x33, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f,
1430	0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1431	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,
1432	0x69, 0x6f, 0x6e, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x11,
1433	0x61, 0x70, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75,
1434	0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1435	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69,
1436	0x6f, 0x6e, 0x52, 0x0f, 0x61, 0x70, 0x70, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65,
1437	0x6f, 0x75, 0x74, 0x22, 0xc8, 0x02, 0x0a, 0x0d, 0x4c, 0x69, 0x76, 0x65, 0x6e, 0x65, 0x73, 0x73,
1438	0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20,
1439	0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73,
1440	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x2b, 0x0a,
1441	0x11, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f,
1442	0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72,
1443	0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x75,
1444	0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18,
1445	0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x68,
1446	0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x40, 0x0a, 0x0e, 0x63, 0x68, 0x65, 0x63, 0x6b,
1447	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
1448	0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
1449	0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x68, 0x65, 0x63,
1450	0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x33, 0x0a, 0x07, 0x74, 0x69, 0x6d,
1451	0x65, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f,
1452	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72,
1453	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x3e,
1454	0x0a, 0x0d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18,
1455	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
1456	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
1457	0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x22, 0x37,
1458	0x0a, 0x07, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
1459	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a,
1460	0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
1461	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2a, 0x74, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x46,
1462	0x61, 0x69, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x55, 0x54,
1463	0x48, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e,
1464	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x41,
1465	0x55, 0x54, 0x48, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
1466	0x52, 0x45, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x41, 0x55,
1467	0x54, 0x48, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55,
1468	0x4e, 0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, 0x5a, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x62, 0x0a,
1469	0x10, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e,
1470	0x74, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x4f, 0x47, 0x49, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
1471	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x4f, 0x47, 0x49,
1472	0x4e, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b,
1473	0x4c, 0x4f, 0x47, 0x49, 0x4e, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x12, 0x0a,
1474	0x0e, 0x4c, 0x4f, 0x47, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10,
1475	0x03, 0x2a, 0x79, 0x0a, 0x0d, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76,
1476	0x65, 0x6c, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x45, 0x43, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53,
1477	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x45,
1478	0x43, 0x55, 0x52, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x10,
1479	0x0a, 0x0c, 0x53, 0x45, 0x43, 0x55, 0x52, 0x45, 0x5f, 0x4e, 0x45, 0x56, 0x45, 0x52, 0x10, 0x01,
1480	0x12, 0x13, 0x0a, 0x0f, 0x53, 0x45, 0x43, 0x55, 0x52, 0x45, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f,
1481	0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x45, 0x43, 0x55, 0x52, 0x45, 0x5f,
1482	0x41, 0x4c, 0x57, 0x41, 0x59, 0x53, 0x10, 0x03, 0x1a, 0x02, 0x10, 0x01, 0x42, 0xbe, 0x01, 0x0a,
1483	0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65,
1484	0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x41, 0x70, 0x70, 0x59, 0x61, 0x6d,
1485	0x6c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1486	0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70,
1487	0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f,
1488	0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x61, 0x70, 0x70,
1489	0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0xaa, 0x02, 0x19, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1490	0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x70, 0x70, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e,
1491	0x56, 0x31, 0xca, 0x02, 0x19, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75,
1492	0x64, 0x5c, 0x41, 0x70, 0x70, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0xea, 0x02,
1493	0x1c, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a,
1494	0x41, 0x70, 0x70, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70,
1495	0x72, 0x6f, 0x74, 0x6f, 0x33,
1496}
1497
1498var (
1499	file_google_appengine_v1_app_yaml_proto_rawDescOnce sync.Once
1500	file_google_appengine_v1_app_yaml_proto_rawDescData = file_google_appengine_v1_app_yaml_proto_rawDesc
1501)
1502
1503func file_google_appengine_v1_app_yaml_proto_rawDescGZIP() []byte {
1504	file_google_appengine_v1_app_yaml_proto_rawDescOnce.Do(func() {
1505		file_google_appengine_v1_app_yaml_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_appengine_v1_app_yaml_proto_rawDescData)
1506	})
1507	return file_google_appengine_v1_app_yaml_proto_rawDescData
1508}
1509
1510var file_google_appengine_v1_app_yaml_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
1511var file_google_appengine_v1_app_yaml_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
1512var file_google_appengine_v1_app_yaml_proto_goTypes = []interface{}{
1513	(AuthFailAction)(0),                  // 0: google.appengine.v1.AuthFailAction
1514	(LoginRequirement)(0),                // 1: google.appengine.v1.LoginRequirement
1515	(SecurityLevel)(0),                   // 2: google.appengine.v1.SecurityLevel
1516	(ErrorHandler_ErrorCode)(0),          // 3: google.appengine.v1.ErrorHandler.ErrorCode
1517	(UrlMap_RedirectHttpResponseCode)(0), // 4: google.appengine.v1.UrlMap.RedirectHttpResponseCode
1518	(*ApiConfigHandler)(nil),             // 5: google.appengine.v1.ApiConfigHandler
1519	(*ErrorHandler)(nil),                 // 6: google.appengine.v1.ErrorHandler
1520	(*UrlMap)(nil),                       // 7: google.appengine.v1.UrlMap
1521	(*StaticFilesHandler)(nil),           // 8: google.appengine.v1.StaticFilesHandler
1522	(*ScriptHandler)(nil),                // 9: google.appengine.v1.ScriptHandler
1523	(*ApiEndpointHandler)(nil),           // 10: google.appengine.v1.ApiEndpointHandler
1524	(*HealthCheck)(nil),                  // 11: google.appengine.v1.HealthCheck
1525	(*ReadinessCheck)(nil),               // 12: google.appengine.v1.ReadinessCheck
1526	(*LivenessCheck)(nil),                // 13: google.appengine.v1.LivenessCheck
1527	(*Library)(nil),                      // 14: google.appengine.v1.Library
1528	nil,                                  // 15: google.appengine.v1.StaticFilesHandler.HttpHeadersEntry
1529	(*durationpb.Duration)(nil),          // 16: google.protobuf.Duration
1530}
1531var file_google_appengine_v1_app_yaml_proto_depIdxs = []int32{
1532	0,  // 0: google.appengine.v1.ApiConfigHandler.auth_fail_action:type_name -> google.appengine.v1.AuthFailAction
1533	1,  // 1: google.appengine.v1.ApiConfigHandler.login:type_name -> google.appengine.v1.LoginRequirement
1534	2,  // 2: google.appengine.v1.ApiConfigHandler.security_level:type_name -> google.appengine.v1.SecurityLevel
1535	3,  // 3: google.appengine.v1.ErrorHandler.error_code:type_name -> google.appengine.v1.ErrorHandler.ErrorCode
1536	8,  // 4: google.appengine.v1.UrlMap.static_files:type_name -> google.appengine.v1.StaticFilesHandler
1537	9,  // 5: google.appengine.v1.UrlMap.script:type_name -> google.appengine.v1.ScriptHandler
1538	10, // 6: google.appengine.v1.UrlMap.api_endpoint:type_name -> google.appengine.v1.ApiEndpointHandler
1539	2,  // 7: google.appengine.v1.UrlMap.security_level:type_name -> google.appengine.v1.SecurityLevel
1540	1,  // 8: google.appengine.v1.UrlMap.login:type_name -> google.appengine.v1.LoginRequirement
1541	0,  // 9: google.appengine.v1.UrlMap.auth_fail_action:type_name -> google.appengine.v1.AuthFailAction
1542	4,  // 10: google.appengine.v1.UrlMap.redirect_http_response_code:type_name -> google.appengine.v1.UrlMap.RedirectHttpResponseCode
1543	15, // 11: google.appengine.v1.StaticFilesHandler.http_headers:type_name -> google.appengine.v1.StaticFilesHandler.HttpHeadersEntry
1544	16, // 12: google.appengine.v1.StaticFilesHandler.expiration:type_name -> google.protobuf.Duration
1545	16, // 13: google.appengine.v1.HealthCheck.check_interval:type_name -> google.protobuf.Duration
1546	16, // 14: google.appengine.v1.HealthCheck.timeout:type_name -> google.protobuf.Duration
1547	16, // 15: google.appengine.v1.ReadinessCheck.check_interval:type_name -> google.protobuf.Duration
1548	16, // 16: google.appengine.v1.ReadinessCheck.timeout:type_name -> google.protobuf.Duration
1549	16, // 17: google.appengine.v1.ReadinessCheck.app_start_timeout:type_name -> google.protobuf.Duration
1550	16, // 18: google.appengine.v1.LivenessCheck.check_interval:type_name -> google.protobuf.Duration
1551	16, // 19: google.appengine.v1.LivenessCheck.timeout:type_name -> google.protobuf.Duration
1552	16, // 20: google.appengine.v1.LivenessCheck.initial_delay:type_name -> google.protobuf.Duration
1553	21, // [21:21] is the sub-list for method output_type
1554	21, // [21:21] is the sub-list for method input_type
1555	21, // [21:21] is the sub-list for extension type_name
1556	21, // [21:21] is the sub-list for extension extendee
1557	0,  // [0:21] is the sub-list for field type_name
1558}
1559
1560func init() { file_google_appengine_v1_app_yaml_proto_init() }
1561func file_google_appengine_v1_app_yaml_proto_init() {
1562	if File_google_appengine_v1_app_yaml_proto != nil {
1563		return
1564	}
1565	if !protoimpl.UnsafeEnabled {
1566		file_google_appengine_v1_app_yaml_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
1567			switch v := v.(*ApiConfigHandler); i {
1568			case 0:
1569				return &v.state
1570			case 1:
1571				return &v.sizeCache
1572			case 2:
1573				return &v.unknownFields
1574			default:
1575				return nil
1576			}
1577		}
1578		file_google_appengine_v1_app_yaml_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
1579			switch v := v.(*ErrorHandler); i {
1580			case 0:
1581				return &v.state
1582			case 1:
1583				return &v.sizeCache
1584			case 2:
1585				return &v.unknownFields
1586			default:
1587				return nil
1588			}
1589		}
1590		file_google_appengine_v1_app_yaml_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
1591			switch v := v.(*UrlMap); i {
1592			case 0:
1593				return &v.state
1594			case 1:
1595				return &v.sizeCache
1596			case 2:
1597				return &v.unknownFields
1598			default:
1599				return nil
1600			}
1601		}
1602		file_google_appengine_v1_app_yaml_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
1603			switch v := v.(*StaticFilesHandler); i {
1604			case 0:
1605				return &v.state
1606			case 1:
1607				return &v.sizeCache
1608			case 2:
1609				return &v.unknownFields
1610			default:
1611				return nil
1612			}
1613		}
1614		file_google_appengine_v1_app_yaml_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
1615			switch v := v.(*ScriptHandler); i {
1616			case 0:
1617				return &v.state
1618			case 1:
1619				return &v.sizeCache
1620			case 2:
1621				return &v.unknownFields
1622			default:
1623				return nil
1624			}
1625		}
1626		file_google_appengine_v1_app_yaml_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
1627			switch v := v.(*ApiEndpointHandler); i {
1628			case 0:
1629				return &v.state
1630			case 1:
1631				return &v.sizeCache
1632			case 2:
1633				return &v.unknownFields
1634			default:
1635				return nil
1636			}
1637		}
1638		file_google_appengine_v1_app_yaml_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1639			switch v := v.(*HealthCheck); i {
1640			case 0:
1641				return &v.state
1642			case 1:
1643				return &v.sizeCache
1644			case 2:
1645				return &v.unknownFields
1646			default:
1647				return nil
1648			}
1649		}
1650		file_google_appengine_v1_app_yaml_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
1651			switch v := v.(*ReadinessCheck); i {
1652			case 0:
1653				return &v.state
1654			case 1:
1655				return &v.sizeCache
1656			case 2:
1657				return &v.unknownFields
1658			default:
1659				return nil
1660			}
1661		}
1662		file_google_appengine_v1_app_yaml_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1663			switch v := v.(*LivenessCheck); i {
1664			case 0:
1665				return &v.state
1666			case 1:
1667				return &v.sizeCache
1668			case 2:
1669				return &v.unknownFields
1670			default:
1671				return nil
1672			}
1673		}
1674		file_google_appengine_v1_app_yaml_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
1675			switch v := v.(*Library); i {
1676			case 0:
1677				return &v.state
1678			case 1:
1679				return &v.sizeCache
1680			case 2:
1681				return &v.unknownFields
1682			default:
1683				return nil
1684			}
1685		}
1686	}
1687	file_google_appengine_v1_app_yaml_proto_msgTypes[2].OneofWrappers = []interface{}{
1688		(*UrlMap_StaticFiles)(nil),
1689		(*UrlMap_Script)(nil),
1690		(*UrlMap_ApiEndpoint)(nil),
1691	}
1692	type x struct{}
1693	out := protoimpl.TypeBuilder{
1694		File: protoimpl.DescBuilder{
1695			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1696			RawDescriptor: file_google_appengine_v1_app_yaml_proto_rawDesc,
1697			NumEnums:      5,
1698			NumMessages:   11,
1699			NumExtensions: 0,
1700			NumServices:   0,
1701		},
1702		GoTypes:           file_google_appengine_v1_app_yaml_proto_goTypes,
1703		DependencyIndexes: file_google_appengine_v1_app_yaml_proto_depIdxs,
1704		EnumInfos:         file_google_appengine_v1_app_yaml_proto_enumTypes,
1705		MessageInfos:      file_google_appengine_v1_app_yaml_proto_msgTypes,
1706	}.Build()
1707	File_google_appengine_v1_app_yaml_proto = out.File
1708	file_google_appengine_v1_app_yaml_proto_rawDesc = nil
1709	file_google_appengine_v1_app_yaml_proto_goTypes = nil
1710	file_google_appengine_v1_app_yaml_proto_depIdxs = nil
1711}
1712