1// Copyright 2019 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
16// Code generated by protoc-gen-go. DO NOT EDIT.
17// versions:
18// 	protoc-gen-go v1.25.0-devel
19// 	protoc        v3.13.0
20// source: google/api/servicemanagement/v1/resources.proto
21
22package servicemanagement
23
24import (
25	reflect "reflect"
26	sync "sync"
27
28	proto "github.com/golang/protobuf/proto"
29	_ "google.golang.org/genproto/googleapis/api/annotations"
30	configchange "google.golang.org/genproto/googleapis/api/configchange"
31	_ "google.golang.org/genproto/googleapis/api/metric"
32	_ "google.golang.org/genproto/googleapis/api/serviceconfig"
33	_ "google.golang.org/genproto/googleapis/longrunning"
34	_ "google.golang.org/genproto/googleapis/rpc/status"
35	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
36	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
37	_ "google.golang.org/protobuf/types/known/anypb"
38	_ "google.golang.org/protobuf/types/known/fieldmaskpb"
39	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
40)
41
42const (
43	// Verify that this generated code is sufficiently up-to-date.
44	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
45	// Verify that runtime/protoimpl is sufficiently up-to-date.
46	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
47)
48
49// This is a compile-time assertion that a sufficiently up-to-date version
50// of the legacy proto package is being used.
51const _ = proto.ProtoPackageIsVersion4
52
53// Code describes the status of the operation (or one of its steps).
54type OperationMetadata_Status int32
55
56const (
57	// Unspecifed code.
58	OperationMetadata_STATUS_UNSPECIFIED OperationMetadata_Status = 0
59	// The operation or step has completed without errors.
60	OperationMetadata_DONE OperationMetadata_Status = 1
61	// The operation or step has not started yet.
62	OperationMetadata_NOT_STARTED OperationMetadata_Status = 2
63	// The operation or step is in progress.
64	OperationMetadata_IN_PROGRESS OperationMetadata_Status = 3
65	// The operation or step has completed with errors. If the operation is
66	// rollbackable, the rollback completed with errors too.
67	OperationMetadata_FAILED OperationMetadata_Status = 4
68	// The operation or step has completed with cancellation.
69	OperationMetadata_CANCELLED OperationMetadata_Status = 5
70)
71
72// Enum value maps for OperationMetadata_Status.
73var (
74	OperationMetadata_Status_name = map[int32]string{
75		0: "STATUS_UNSPECIFIED",
76		1: "DONE",
77		2: "NOT_STARTED",
78		3: "IN_PROGRESS",
79		4: "FAILED",
80		5: "CANCELLED",
81	}
82	OperationMetadata_Status_value = map[string]int32{
83		"STATUS_UNSPECIFIED": 0,
84		"DONE":               1,
85		"NOT_STARTED":        2,
86		"IN_PROGRESS":        3,
87		"FAILED":             4,
88		"CANCELLED":          5,
89	}
90)
91
92func (x OperationMetadata_Status) Enum() *OperationMetadata_Status {
93	p := new(OperationMetadata_Status)
94	*p = x
95	return p
96}
97
98func (x OperationMetadata_Status) String() string {
99	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
100}
101
102func (OperationMetadata_Status) Descriptor() protoreflect.EnumDescriptor {
103	return file_google_api_servicemanagement_v1_resources_proto_enumTypes[0].Descriptor()
104}
105
106func (OperationMetadata_Status) Type() protoreflect.EnumType {
107	return &file_google_api_servicemanagement_v1_resources_proto_enumTypes[0]
108}
109
110func (x OperationMetadata_Status) Number() protoreflect.EnumNumber {
111	return protoreflect.EnumNumber(x)
112}
113
114// Deprecated: Use OperationMetadata_Status.Descriptor instead.
115func (OperationMetadata_Status) EnumDescriptor() ([]byte, []int) {
116	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{1, 0}
117}
118
119// The kind of diagnostic information possible.
120type Diagnostic_Kind int32
121
122const (
123	// Warnings and errors
124	Diagnostic_WARNING Diagnostic_Kind = 0
125	// Only errors
126	Diagnostic_ERROR Diagnostic_Kind = 1
127)
128
129// Enum value maps for Diagnostic_Kind.
130var (
131	Diagnostic_Kind_name = map[int32]string{
132		0: "WARNING",
133		1: "ERROR",
134	}
135	Diagnostic_Kind_value = map[string]int32{
136		"WARNING": 0,
137		"ERROR":   1,
138	}
139)
140
141func (x Diagnostic_Kind) Enum() *Diagnostic_Kind {
142	p := new(Diagnostic_Kind)
143	*p = x
144	return p
145}
146
147func (x Diagnostic_Kind) String() string {
148	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
149}
150
151func (Diagnostic_Kind) Descriptor() protoreflect.EnumDescriptor {
152	return file_google_api_servicemanagement_v1_resources_proto_enumTypes[1].Descriptor()
153}
154
155func (Diagnostic_Kind) Type() protoreflect.EnumType {
156	return &file_google_api_servicemanagement_v1_resources_proto_enumTypes[1]
157}
158
159func (x Diagnostic_Kind) Number() protoreflect.EnumNumber {
160	return protoreflect.EnumNumber(x)
161}
162
163// Deprecated: Use Diagnostic_Kind.Descriptor instead.
164func (Diagnostic_Kind) EnumDescriptor() ([]byte, []int) {
165	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{2, 0}
166}
167
168type ConfigFile_FileType int32
169
170const (
171	// Unknown file type.
172	ConfigFile_FILE_TYPE_UNSPECIFIED ConfigFile_FileType = 0
173	// YAML-specification of service.
174	ConfigFile_SERVICE_CONFIG_YAML ConfigFile_FileType = 1
175	// OpenAPI specification, serialized in JSON.
176	ConfigFile_OPEN_API_JSON ConfigFile_FileType = 2
177	// OpenAPI specification, serialized in YAML.
178	ConfigFile_OPEN_API_YAML ConfigFile_FileType = 3
179	// FileDescriptorSet, generated by protoc.
180	//
181	// To generate, use protoc with imports and source info included.
182	// For an example test.proto file, the following command would put the value
183	// in a new file named out.pb.
184	//
185	// $protoc --include_imports --include_source_info test.proto -o out.pb
186	ConfigFile_FILE_DESCRIPTOR_SET_PROTO ConfigFile_FileType = 4
187	// Uncompiled Proto file. Used for storage and display purposes only,
188	// currently server-side compilation is not supported. Should match the
189	// inputs to 'protoc' command used to generated FILE_DESCRIPTOR_SET_PROTO. A
190	// file of this type can only be included if at least one file of type
191	// FILE_DESCRIPTOR_SET_PROTO is included.
192	ConfigFile_PROTO_FILE ConfigFile_FileType = 6
193)
194
195// Enum value maps for ConfigFile_FileType.
196var (
197	ConfigFile_FileType_name = map[int32]string{
198		0: "FILE_TYPE_UNSPECIFIED",
199		1: "SERVICE_CONFIG_YAML",
200		2: "OPEN_API_JSON",
201		3: "OPEN_API_YAML",
202		4: "FILE_DESCRIPTOR_SET_PROTO",
203		6: "PROTO_FILE",
204	}
205	ConfigFile_FileType_value = map[string]int32{
206		"FILE_TYPE_UNSPECIFIED":     0,
207		"SERVICE_CONFIG_YAML":       1,
208		"OPEN_API_JSON":             2,
209		"OPEN_API_YAML":             3,
210		"FILE_DESCRIPTOR_SET_PROTO": 4,
211		"PROTO_FILE":                6,
212	}
213)
214
215func (x ConfigFile_FileType) Enum() *ConfigFile_FileType {
216	p := new(ConfigFile_FileType)
217	*p = x
218	return p
219}
220
221func (x ConfigFile_FileType) String() string {
222	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
223}
224
225func (ConfigFile_FileType) Descriptor() protoreflect.EnumDescriptor {
226	return file_google_api_servicemanagement_v1_resources_proto_enumTypes[2].Descriptor()
227}
228
229func (ConfigFile_FileType) Type() protoreflect.EnumType {
230	return &file_google_api_servicemanagement_v1_resources_proto_enumTypes[2]
231}
232
233func (x ConfigFile_FileType) Number() protoreflect.EnumNumber {
234	return protoreflect.EnumNumber(x)
235}
236
237// Deprecated: Use ConfigFile_FileType.Descriptor instead.
238func (ConfigFile_FileType) EnumDescriptor() ([]byte, []int) {
239	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{4, 0}
240}
241
242// Status of a Rollout.
243type Rollout_RolloutStatus int32
244
245const (
246	// No status specified.
247	Rollout_ROLLOUT_STATUS_UNSPECIFIED Rollout_RolloutStatus = 0
248	// The Rollout is in progress.
249	Rollout_IN_PROGRESS Rollout_RolloutStatus = 1
250	// The Rollout has completed successfully.
251	Rollout_SUCCESS Rollout_RolloutStatus = 2
252	// The Rollout has been cancelled. This can happen if you have overlapping
253	// Rollout pushes, and the previous ones will be cancelled.
254	Rollout_CANCELLED Rollout_RolloutStatus = 3
255	// The Rollout has failed and the rollback attempt has failed too.
256	Rollout_FAILED Rollout_RolloutStatus = 4
257	// The Rollout has not started yet and is pending for execution.
258	Rollout_PENDING Rollout_RolloutStatus = 5
259	// The Rollout has failed and rolled back to the previous successful
260	// Rollout.
261	Rollout_FAILED_ROLLED_BACK Rollout_RolloutStatus = 6
262)
263
264// Enum value maps for Rollout_RolloutStatus.
265var (
266	Rollout_RolloutStatus_name = map[int32]string{
267		0: "ROLLOUT_STATUS_UNSPECIFIED",
268		1: "IN_PROGRESS",
269		2: "SUCCESS",
270		3: "CANCELLED",
271		4: "FAILED",
272		5: "PENDING",
273		6: "FAILED_ROLLED_BACK",
274	}
275	Rollout_RolloutStatus_value = map[string]int32{
276		"ROLLOUT_STATUS_UNSPECIFIED": 0,
277		"IN_PROGRESS":                1,
278		"SUCCESS":                    2,
279		"CANCELLED":                  3,
280		"FAILED":                     4,
281		"PENDING":                    5,
282		"FAILED_ROLLED_BACK":         6,
283	}
284)
285
286func (x Rollout_RolloutStatus) Enum() *Rollout_RolloutStatus {
287	p := new(Rollout_RolloutStatus)
288	*p = x
289	return p
290}
291
292func (x Rollout_RolloutStatus) String() string {
293	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
294}
295
296func (Rollout_RolloutStatus) Descriptor() protoreflect.EnumDescriptor {
297	return file_google_api_servicemanagement_v1_resources_proto_enumTypes[3].Descriptor()
298}
299
300func (Rollout_RolloutStatus) Type() protoreflect.EnumType {
301	return &file_google_api_servicemanagement_v1_resources_proto_enumTypes[3]
302}
303
304func (x Rollout_RolloutStatus) Number() protoreflect.EnumNumber {
305	return protoreflect.EnumNumber(x)
306}
307
308// Deprecated: Use Rollout_RolloutStatus.Descriptor instead.
309func (Rollout_RolloutStatus) EnumDescriptor() ([]byte, []int) {
310	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{7, 0}
311}
312
313// The full representation of a Service that is managed by
314// Google Service Management.
315type ManagedService struct {
316	state         protoimpl.MessageState
317	sizeCache     protoimpl.SizeCache
318	unknownFields protoimpl.UnknownFields
319
320	// The name of the service. See the [overview](https://cloud.google.com/service-management/overview)
321	// for naming requirements.
322	ServiceName string `protobuf:"bytes,2,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
323	// ID of the project that produces and owns this service.
324	ProducerProjectId string `protobuf:"bytes,3,opt,name=producer_project_id,json=producerProjectId,proto3" json:"producer_project_id,omitempty"`
325}
326
327func (x *ManagedService) Reset() {
328	*x = ManagedService{}
329	if protoimpl.UnsafeEnabled {
330		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[0]
331		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
332		ms.StoreMessageInfo(mi)
333	}
334}
335
336func (x *ManagedService) String() string {
337	return protoimpl.X.MessageStringOf(x)
338}
339
340func (*ManagedService) ProtoMessage() {}
341
342func (x *ManagedService) ProtoReflect() protoreflect.Message {
343	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[0]
344	if protoimpl.UnsafeEnabled && x != nil {
345		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
346		if ms.LoadMessageInfo() == nil {
347			ms.StoreMessageInfo(mi)
348		}
349		return ms
350	}
351	return mi.MessageOf(x)
352}
353
354// Deprecated: Use ManagedService.ProtoReflect.Descriptor instead.
355func (*ManagedService) Descriptor() ([]byte, []int) {
356	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{0}
357}
358
359func (x *ManagedService) GetServiceName() string {
360	if x != nil {
361		return x.ServiceName
362	}
363	return ""
364}
365
366func (x *ManagedService) GetProducerProjectId() string {
367	if x != nil {
368		return x.ProducerProjectId
369	}
370	return ""
371}
372
373// The metadata associated with a long running operation resource.
374type OperationMetadata struct {
375	state         protoimpl.MessageState
376	sizeCache     protoimpl.SizeCache
377	unknownFields protoimpl.UnknownFields
378
379	// The full name of the resources that this operation is directly
380	// associated with.
381	ResourceNames []string `protobuf:"bytes,1,rep,name=resource_names,json=resourceNames,proto3" json:"resource_names,omitempty"`
382	// Detailed status information for each step. The order is undetermined.
383	Steps []*OperationMetadata_Step `protobuf:"bytes,2,rep,name=steps,proto3" json:"steps,omitempty"`
384	// Percentage of completion of this operation, ranging from 0 to 100.
385	ProgressPercentage int32 `protobuf:"varint,3,opt,name=progress_percentage,json=progressPercentage,proto3" json:"progress_percentage,omitempty"`
386	// The start time of the operation.
387	StartTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
388}
389
390func (x *OperationMetadata) Reset() {
391	*x = OperationMetadata{}
392	if protoimpl.UnsafeEnabled {
393		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[1]
394		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
395		ms.StoreMessageInfo(mi)
396	}
397}
398
399func (x *OperationMetadata) String() string {
400	return protoimpl.X.MessageStringOf(x)
401}
402
403func (*OperationMetadata) ProtoMessage() {}
404
405func (x *OperationMetadata) ProtoReflect() protoreflect.Message {
406	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[1]
407	if protoimpl.UnsafeEnabled && x != nil {
408		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
409		if ms.LoadMessageInfo() == nil {
410			ms.StoreMessageInfo(mi)
411		}
412		return ms
413	}
414	return mi.MessageOf(x)
415}
416
417// Deprecated: Use OperationMetadata.ProtoReflect.Descriptor instead.
418func (*OperationMetadata) Descriptor() ([]byte, []int) {
419	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{1}
420}
421
422func (x *OperationMetadata) GetResourceNames() []string {
423	if x != nil {
424		return x.ResourceNames
425	}
426	return nil
427}
428
429func (x *OperationMetadata) GetSteps() []*OperationMetadata_Step {
430	if x != nil {
431		return x.Steps
432	}
433	return nil
434}
435
436func (x *OperationMetadata) GetProgressPercentage() int32 {
437	if x != nil {
438		return x.ProgressPercentage
439	}
440	return 0
441}
442
443func (x *OperationMetadata) GetStartTime() *timestamppb.Timestamp {
444	if x != nil {
445		return x.StartTime
446	}
447	return nil
448}
449
450// Represents a diagnostic message (error or warning)
451type Diagnostic struct {
452	state         protoimpl.MessageState
453	sizeCache     protoimpl.SizeCache
454	unknownFields protoimpl.UnknownFields
455
456	// File name and line number of the error or warning.
457	Location string `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"`
458	// The kind of diagnostic information provided.
459	Kind Diagnostic_Kind `protobuf:"varint,2,opt,name=kind,proto3,enum=google.api.servicemanagement.v1.Diagnostic_Kind" json:"kind,omitempty"`
460	// Message describing the error or warning.
461	Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
462}
463
464func (x *Diagnostic) Reset() {
465	*x = Diagnostic{}
466	if protoimpl.UnsafeEnabled {
467		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[2]
468		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
469		ms.StoreMessageInfo(mi)
470	}
471}
472
473func (x *Diagnostic) String() string {
474	return protoimpl.X.MessageStringOf(x)
475}
476
477func (*Diagnostic) ProtoMessage() {}
478
479func (x *Diagnostic) ProtoReflect() protoreflect.Message {
480	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[2]
481	if protoimpl.UnsafeEnabled && x != nil {
482		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
483		if ms.LoadMessageInfo() == nil {
484			ms.StoreMessageInfo(mi)
485		}
486		return ms
487	}
488	return mi.MessageOf(x)
489}
490
491// Deprecated: Use Diagnostic.ProtoReflect.Descriptor instead.
492func (*Diagnostic) Descriptor() ([]byte, []int) {
493	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{2}
494}
495
496func (x *Diagnostic) GetLocation() string {
497	if x != nil {
498		return x.Location
499	}
500	return ""
501}
502
503func (x *Diagnostic) GetKind() Diagnostic_Kind {
504	if x != nil {
505		return x.Kind
506	}
507	return Diagnostic_WARNING
508}
509
510func (x *Diagnostic) GetMessage() string {
511	if x != nil {
512		return x.Message
513	}
514	return ""
515}
516
517// Represents a source file which is used to generate the service configuration
518// defined by `google.api.Service`.
519type ConfigSource struct {
520	state         protoimpl.MessageState
521	sizeCache     protoimpl.SizeCache
522	unknownFields protoimpl.UnknownFields
523
524	// A unique ID for a specific instance of this message, typically assigned
525	// by the client for tracking purpose. If empty, the server may choose to
526	// generate one instead.
527	Id string `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"`
528	// Set of source configuration files that are used to generate a service
529	// configuration (`google.api.Service`).
530	Files []*ConfigFile `protobuf:"bytes,2,rep,name=files,proto3" json:"files,omitempty"`
531}
532
533func (x *ConfigSource) Reset() {
534	*x = ConfigSource{}
535	if protoimpl.UnsafeEnabled {
536		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[3]
537		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
538		ms.StoreMessageInfo(mi)
539	}
540}
541
542func (x *ConfigSource) String() string {
543	return protoimpl.X.MessageStringOf(x)
544}
545
546func (*ConfigSource) ProtoMessage() {}
547
548func (x *ConfigSource) ProtoReflect() protoreflect.Message {
549	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[3]
550	if protoimpl.UnsafeEnabled && x != nil {
551		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
552		if ms.LoadMessageInfo() == nil {
553			ms.StoreMessageInfo(mi)
554		}
555		return ms
556	}
557	return mi.MessageOf(x)
558}
559
560// Deprecated: Use ConfigSource.ProtoReflect.Descriptor instead.
561func (*ConfigSource) Descriptor() ([]byte, []int) {
562	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{3}
563}
564
565func (x *ConfigSource) GetId() string {
566	if x != nil {
567		return x.Id
568	}
569	return ""
570}
571
572func (x *ConfigSource) GetFiles() []*ConfigFile {
573	if x != nil {
574		return x.Files
575	}
576	return nil
577}
578
579// Generic specification of a source configuration file
580type ConfigFile struct {
581	state         protoimpl.MessageState
582	sizeCache     protoimpl.SizeCache
583	unknownFields protoimpl.UnknownFields
584
585	// The file name of the configuration file (full or relative path).
586	FilePath string `protobuf:"bytes,1,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
587	// The bytes that constitute the file.
588	FileContents []byte `protobuf:"bytes,3,opt,name=file_contents,json=fileContents,proto3" json:"file_contents,omitempty"`
589	// The type of configuration file this represents.
590	FileType ConfigFile_FileType `protobuf:"varint,4,opt,name=file_type,json=fileType,proto3,enum=google.api.servicemanagement.v1.ConfigFile_FileType" json:"file_type,omitempty"`
591}
592
593func (x *ConfigFile) Reset() {
594	*x = ConfigFile{}
595	if protoimpl.UnsafeEnabled {
596		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[4]
597		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
598		ms.StoreMessageInfo(mi)
599	}
600}
601
602func (x *ConfigFile) String() string {
603	return protoimpl.X.MessageStringOf(x)
604}
605
606func (*ConfigFile) ProtoMessage() {}
607
608func (x *ConfigFile) ProtoReflect() protoreflect.Message {
609	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[4]
610	if protoimpl.UnsafeEnabled && x != nil {
611		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
612		if ms.LoadMessageInfo() == nil {
613			ms.StoreMessageInfo(mi)
614		}
615		return ms
616	}
617	return mi.MessageOf(x)
618}
619
620// Deprecated: Use ConfigFile.ProtoReflect.Descriptor instead.
621func (*ConfigFile) Descriptor() ([]byte, []int) {
622	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{4}
623}
624
625func (x *ConfigFile) GetFilePath() string {
626	if x != nil {
627		return x.FilePath
628	}
629	return ""
630}
631
632func (x *ConfigFile) GetFileContents() []byte {
633	if x != nil {
634		return x.FileContents
635	}
636	return nil
637}
638
639func (x *ConfigFile) GetFileType() ConfigFile_FileType {
640	if x != nil {
641		return x.FileType
642	}
643	return ConfigFile_FILE_TYPE_UNSPECIFIED
644}
645
646// Represents a service configuration with its name and id.
647type ConfigRef struct {
648	state         protoimpl.MessageState
649	sizeCache     protoimpl.SizeCache
650	unknownFields protoimpl.UnknownFields
651
652	// Resource name of a service config. It must have the following
653	// format: "services/{service name}/configs/{config id}".
654	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
655}
656
657func (x *ConfigRef) Reset() {
658	*x = ConfigRef{}
659	if protoimpl.UnsafeEnabled {
660		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[5]
661		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
662		ms.StoreMessageInfo(mi)
663	}
664}
665
666func (x *ConfigRef) String() string {
667	return protoimpl.X.MessageStringOf(x)
668}
669
670func (*ConfigRef) ProtoMessage() {}
671
672func (x *ConfigRef) ProtoReflect() protoreflect.Message {
673	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[5]
674	if protoimpl.UnsafeEnabled && x != nil {
675		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
676		if ms.LoadMessageInfo() == nil {
677			ms.StoreMessageInfo(mi)
678		}
679		return ms
680	}
681	return mi.MessageOf(x)
682}
683
684// Deprecated: Use ConfigRef.ProtoReflect.Descriptor instead.
685func (*ConfigRef) Descriptor() ([]byte, []int) {
686	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{5}
687}
688
689func (x *ConfigRef) GetName() string {
690	if x != nil {
691		return x.Name
692	}
693	return ""
694}
695
696// Change report associated with a particular service configuration.
697//
698// It contains a list of ConfigChanges based on the comparison between
699// two service configurations.
700type ChangeReport struct {
701	state         protoimpl.MessageState
702	sizeCache     protoimpl.SizeCache
703	unknownFields protoimpl.UnknownFields
704
705	// List of changes between two service configurations.
706	// The changes will be alphabetically sorted based on the identifier
707	// of each change.
708	// A ConfigChange identifier is a dot separated path to the configuration.
709	// Example: visibility.rules[selector='LibraryService.CreateBook'].restriction
710	ConfigChanges []*configchange.ConfigChange `protobuf:"bytes,1,rep,name=config_changes,json=configChanges,proto3" json:"config_changes,omitempty"`
711}
712
713func (x *ChangeReport) Reset() {
714	*x = ChangeReport{}
715	if protoimpl.UnsafeEnabled {
716		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[6]
717		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
718		ms.StoreMessageInfo(mi)
719	}
720}
721
722func (x *ChangeReport) String() string {
723	return protoimpl.X.MessageStringOf(x)
724}
725
726func (*ChangeReport) ProtoMessage() {}
727
728func (x *ChangeReport) ProtoReflect() protoreflect.Message {
729	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[6]
730	if protoimpl.UnsafeEnabled && x != nil {
731		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
732		if ms.LoadMessageInfo() == nil {
733			ms.StoreMessageInfo(mi)
734		}
735		return ms
736	}
737	return mi.MessageOf(x)
738}
739
740// Deprecated: Use ChangeReport.ProtoReflect.Descriptor instead.
741func (*ChangeReport) Descriptor() ([]byte, []int) {
742	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{6}
743}
744
745func (x *ChangeReport) GetConfigChanges() []*configchange.ConfigChange {
746	if x != nil {
747		return x.ConfigChanges
748	}
749	return nil
750}
751
752// A rollout resource that defines how service configuration versions are pushed
753// to control plane systems. Typically, you create a new version of the
754// service config, and then create a Rollout to push the service config.
755type Rollout struct {
756	state         protoimpl.MessageState
757	sizeCache     protoimpl.SizeCache
758	unknownFields protoimpl.UnknownFields
759
760	// Optional. Unique identifier of this Rollout. Must be no longer than 63 characters
761	// and only lower case letters, digits, '.', '_' and '-' are allowed.
762	//
763	// If not specified by client, the server will generate one. The generated id
764	// will have the form of <date><revision number>, where "date" is the create
765	// date in ISO 8601 format.  "revision number" is a monotonically increasing
766	// positive number that is reset every day for each service.
767	// An example of the generated rollout_id is '2016-02-16r1'
768	RolloutId string `protobuf:"bytes,1,opt,name=rollout_id,json=rolloutId,proto3" json:"rollout_id,omitempty"`
769	// Creation time of the rollout. Readonly.
770	CreateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
771	// The user who created the Rollout. Readonly.
772	CreatedBy string `protobuf:"bytes,3,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"`
773	// The status of this rollout. Readonly. In case of a failed rollout,
774	// the system will automatically rollback to the current Rollout
775	// version. Readonly.
776	Status Rollout_RolloutStatus `protobuf:"varint,4,opt,name=status,proto3,enum=google.api.servicemanagement.v1.Rollout_RolloutStatus" json:"status,omitempty"`
777	// Strategy that defines which versions of service configurations should be
778	// pushed
779	// and how they should be used at runtime.
780	//
781	// Types that are assignable to Strategy:
782	//	*Rollout_TrafficPercentStrategy_
783	//	*Rollout_DeleteServiceStrategy_
784	Strategy isRollout_Strategy `protobuf_oneof:"strategy"`
785	// The name of the service associated with this Rollout.
786	ServiceName string `protobuf:"bytes,8,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
787}
788
789func (x *Rollout) Reset() {
790	*x = Rollout{}
791	if protoimpl.UnsafeEnabled {
792		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[7]
793		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
794		ms.StoreMessageInfo(mi)
795	}
796}
797
798func (x *Rollout) String() string {
799	return protoimpl.X.MessageStringOf(x)
800}
801
802func (*Rollout) ProtoMessage() {}
803
804func (x *Rollout) ProtoReflect() protoreflect.Message {
805	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[7]
806	if protoimpl.UnsafeEnabled && x != nil {
807		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
808		if ms.LoadMessageInfo() == nil {
809			ms.StoreMessageInfo(mi)
810		}
811		return ms
812	}
813	return mi.MessageOf(x)
814}
815
816// Deprecated: Use Rollout.ProtoReflect.Descriptor instead.
817func (*Rollout) Descriptor() ([]byte, []int) {
818	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{7}
819}
820
821func (x *Rollout) GetRolloutId() string {
822	if x != nil {
823		return x.RolloutId
824	}
825	return ""
826}
827
828func (x *Rollout) GetCreateTime() *timestamppb.Timestamp {
829	if x != nil {
830		return x.CreateTime
831	}
832	return nil
833}
834
835func (x *Rollout) GetCreatedBy() string {
836	if x != nil {
837		return x.CreatedBy
838	}
839	return ""
840}
841
842func (x *Rollout) GetStatus() Rollout_RolloutStatus {
843	if x != nil {
844		return x.Status
845	}
846	return Rollout_ROLLOUT_STATUS_UNSPECIFIED
847}
848
849func (m *Rollout) GetStrategy() isRollout_Strategy {
850	if m != nil {
851		return m.Strategy
852	}
853	return nil
854}
855
856func (x *Rollout) GetTrafficPercentStrategy() *Rollout_TrafficPercentStrategy {
857	if x, ok := x.GetStrategy().(*Rollout_TrafficPercentStrategy_); ok {
858		return x.TrafficPercentStrategy
859	}
860	return nil
861}
862
863func (x *Rollout) GetDeleteServiceStrategy() *Rollout_DeleteServiceStrategy {
864	if x, ok := x.GetStrategy().(*Rollout_DeleteServiceStrategy_); ok {
865		return x.DeleteServiceStrategy
866	}
867	return nil
868}
869
870func (x *Rollout) GetServiceName() string {
871	if x != nil {
872		return x.ServiceName
873	}
874	return ""
875}
876
877type isRollout_Strategy interface {
878	isRollout_Strategy()
879}
880
881type Rollout_TrafficPercentStrategy_ struct {
882	// Google Service Control selects service configurations based on
883	// traffic percentage.
884	TrafficPercentStrategy *Rollout_TrafficPercentStrategy `protobuf:"bytes,5,opt,name=traffic_percent_strategy,json=trafficPercentStrategy,proto3,oneof"`
885}
886
887type Rollout_DeleteServiceStrategy_ struct {
888	// The strategy associated with a rollout to delete a `ManagedService`.
889	// Readonly.
890	DeleteServiceStrategy *Rollout_DeleteServiceStrategy `protobuf:"bytes,200,opt,name=delete_service_strategy,json=deleteServiceStrategy,proto3,oneof"`
891}
892
893func (*Rollout_TrafficPercentStrategy_) isRollout_Strategy() {}
894
895func (*Rollout_DeleteServiceStrategy_) isRollout_Strategy() {}
896
897// Represents the status of one operation step.
898type OperationMetadata_Step struct {
899	state         protoimpl.MessageState
900	sizeCache     protoimpl.SizeCache
901	unknownFields protoimpl.UnknownFields
902
903	// The short description of the step.
904	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
905	// The status code.
906	Status OperationMetadata_Status `protobuf:"varint,4,opt,name=status,proto3,enum=google.api.servicemanagement.v1.OperationMetadata_Status" json:"status,omitempty"`
907}
908
909func (x *OperationMetadata_Step) Reset() {
910	*x = OperationMetadata_Step{}
911	if protoimpl.UnsafeEnabled {
912		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[8]
913		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
914		ms.StoreMessageInfo(mi)
915	}
916}
917
918func (x *OperationMetadata_Step) String() string {
919	return protoimpl.X.MessageStringOf(x)
920}
921
922func (*OperationMetadata_Step) ProtoMessage() {}
923
924func (x *OperationMetadata_Step) ProtoReflect() protoreflect.Message {
925	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[8]
926	if protoimpl.UnsafeEnabled && x != nil {
927		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
928		if ms.LoadMessageInfo() == nil {
929			ms.StoreMessageInfo(mi)
930		}
931		return ms
932	}
933	return mi.MessageOf(x)
934}
935
936// Deprecated: Use OperationMetadata_Step.ProtoReflect.Descriptor instead.
937func (*OperationMetadata_Step) Descriptor() ([]byte, []int) {
938	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{1, 0}
939}
940
941func (x *OperationMetadata_Step) GetDescription() string {
942	if x != nil {
943		return x.Description
944	}
945	return ""
946}
947
948func (x *OperationMetadata_Step) GetStatus() OperationMetadata_Status {
949	if x != nil {
950		return x.Status
951	}
952	return OperationMetadata_STATUS_UNSPECIFIED
953}
954
955// Strategy that specifies how clients of Google Service Controller want to
956// send traffic to use different config versions. This is generally
957// used by API proxy to split traffic based on your configured percentage for
958// each config version.
959//
960// One example of how to gradually rollout a new service configuration using
961// this
962// strategy:
963// Day 1
964//
965//     Rollout {
966//       id: "example.googleapis.com/rollout_20160206"
967//       traffic_percent_strategy {
968//         percentages: {
969//           "example.googleapis.com/20160201": 70.00
970//           "example.googleapis.com/20160206": 30.00
971//         }
972//       }
973//     }
974//
975// Day 2
976//
977//     Rollout {
978//       id: "example.googleapis.com/rollout_20160207"
979//       traffic_percent_strategy: {
980//         percentages: {
981//           "example.googleapis.com/20160206": 100.00
982//         }
983//       }
984//     }
985type Rollout_TrafficPercentStrategy struct {
986	state         protoimpl.MessageState
987	sizeCache     protoimpl.SizeCache
988	unknownFields protoimpl.UnknownFields
989
990	// Maps service configuration IDs to their corresponding traffic percentage.
991	// Key is the service configuration ID, Value is the traffic percentage
992	// which must be greater than 0.0 and the sum must equal to 100.0.
993	Percentages map[string]float64 `protobuf:"bytes,1,rep,name=percentages,proto3" json:"percentages,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"`
994}
995
996func (x *Rollout_TrafficPercentStrategy) Reset() {
997	*x = Rollout_TrafficPercentStrategy{}
998	if protoimpl.UnsafeEnabled {
999		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[9]
1000		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1001		ms.StoreMessageInfo(mi)
1002	}
1003}
1004
1005func (x *Rollout_TrafficPercentStrategy) String() string {
1006	return protoimpl.X.MessageStringOf(x)
1007}
1008
1009func (*Rollout_TrafficPercentStrategy) ProtoMessage() {}
1010
1011func (x *Rollout_TrafficPercentStrategy) ProtoReflect() protoreflect.Message {
1012	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[9]
1013	if protoimpl.UnsafeEnabled && x != nil {
1014		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1015		if ms.LoadMessageInfo() == nil {
1016			ms.StoreMessageInfo(mi)
1017		}
1018		return ms
1019	}
1020	return mi.MessageOf(x)
1021}
1022
1023// Deprecated: Use Rollout_TrafficPercentStrategy.ProtoReflect.Descriptor instead.
1024func (*Rollout_TrafficPercentStrategy) Descriptor() ([]byte, []int) {
1025	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{7, 0}
1026}
1027
1028func (x *Rollout_TrafficPercentStrategy) GetPercentages() map[string]float64 {
1029	if x != nil {
1030		return x.Percentages
1031	}
1032	return nil
1033}
1034
1035// Strategy used to delete a service. This strategy is a placeholder only
1036// used by the system generated rollout to delete a service.
1037type Rollout_DeleteServiceStrategy struct {
1038	state         protoimpl.MessageState
1039	sizeCache     protoimpl.SizeCache
1040	unknownFields protoimpl.UnknownFields
1041}
1042
1043func (x *Rollout_DeleteServiceStrategy) Reset() {
1044	*x = Rollout_DeleteServiceStrategy{}
1045	if protoimpl.UnsafeEnabled {
1046		mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[10]
1047		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1048		ms.StoreMessageInfo(mi)
1049	}
1050}
1051
1052func (x *Rollout_DeleteServiceStrategy) String() string {
1053	return protoimpl.X.MessageStringOf(x)
1054}
1055
1056func (*Rollout_DeleteServiceStrategy) ProtoMessage() {}
1057
1058func (x *Rollout_DeleteServiceStrategy) ProtoReflect() protoreflect.Message {
1059	mi := &file_google_api_servicemanagement_v1_resources_proto_msgTypes[10]
1060	if protoimpl.UnsafeEnabled && x != nil {
1061		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1062		if ms.LoadMessageInfo() == nil {
1063			ms.StoreMessageInfo(mi)
1064		}
1065		return ms
1066	}
1067	return mi.MessageOf(x)
1068}
1069
1070// Deprecated: Use Rollout_DeleteServiceStrategy.ProtoReflect.Descriptor instead.
1071func (*Rollout_DeleteServiceStrategy) Descriptor() ([]byte, []int) {
1072	return file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP(), []int{7, 1}
1073}
1074
1075var File_google_api_servicemanagement_v1_resources_proto protoreflect.FileDescriptor
1076
1077var file_google_api_servicemanagement_v1_resources_proto_rawDesc = []byte{
1078	0x0a, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72,
1079	0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x76,
1080	0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
1081	0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x65,
1082	0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
1083	0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61,
1084	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1085	0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e,
1086	0x66, 0x69, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1087	0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65,
1088	0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
1089	0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x65,
1090	0x74, 0x72, 0x69, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x6f, 0x6f, 0x67,
1091	0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f,
1092	0x74, 0x6f, 0x1a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73,
1093	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f,
1094	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67,
1095	0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
1096	0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
1097	0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f,
1098	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69,
1099	0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
1100	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
1101	0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
1102	0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74,
1103	0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x63, 0x0a, 0x0e, 0x4d, 0x61, 0x6e, 0x61,
1104	0x67, 0x65, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65,
1105	0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
1106	0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a,
1107	0x13, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
1108	0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x72, 0x6f, 0x64,
1109	0x75, 0x63, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x22, 0xdb, 0x03,
1110	0x0a, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64,
1111	0x61, 0x74, 0x61, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
1112	0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x73,
1113	0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x4d, 0x0a, 0x05, 0x73, 0x74,
1114	0x65, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1115	0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61,
1116	0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x70, 0x65, 0x72,
1117	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x74,
1118	0x65, 0x70, 0x52, 0x05, 0x73, 0x74, 0x65, 0x70, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x70, 0x72, 0x6f,
1119	0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65,
1120	0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73,
1121	0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74,
1122	0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
1123	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
1124	0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72,
1125	0x74, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x7b, 0x0a, 0x04, 0x53, 0x74, 0x65, 0x70, 0x12, 0x20, 0x0a,
1126	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
1127	0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
1128	0x51, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
1129	0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x65, 0x72,
1130	0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76,
1131	0x31, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64,
1132	0x61, 0x74, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
1133	0x75, 0x73, 0x22, 0x67, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12,
1134	0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
1135	0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x0f,
1136	0x0a, 0x0b, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12,
1137	0x0f, 0x0a, 0x0b, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f, 0x47, 0x52, 0x45, 0x53, 0x53, 0x10, 0x03,
1138	0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09,
1139	0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x22, 0xa8, 0x01, 0x0a, 0x0a,
1140	0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f,
1141	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f,
1142	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x44, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02,
1143	0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
1144	0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
1145	0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69,
1146	0x63, 0x2e, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07,
1147	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d,
1148	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x1e, 0x0a, 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x0b,
1149	0x0a, 0x07, 0x57, 0x41, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x45,
1150	0x52, 0x52, 0x4f, 0x52, 0x10, 0x01, 0x22, 0x61, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
1151	0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01,
1152	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18,
1153	0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
1154	0x70, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65,
1155	0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69,
1156	0x6c, 0x65, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x22, 0xb7, 0x02, 0x0a, 0x0a, 0x43, 0x6f,
1157	0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65,
1158	0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c,
1159	0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x63, 0x6f,
1160	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x66, 0x69,
1161	0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x51, 0x0a, 0x09, 0x66, 0x69,
1162	0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e,
1163	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
1164	0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e,
1165	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x54,
1166	0x79, 0x70, 0x65, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x93, 0x01,
1167	0x0a, 0x08, 0x46, 0x69, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x46, 0x49,
1168	0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
1169	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x45, 0x52, 0x56, 0x49, 0x43, 0x45,
1170	0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x59, 0x41, 0x4d, 0x4c, 0x10, 0x01, 0x12, 0x11,
1171	0x0a, 0x0d, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x41, 0x50, 0x49, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x10,
1172	0x02, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x41, 0x50, 0x49, 0x5f, 0x59, 0x41,
1173	0x4d, 0x4c, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x46, 0x49, 0x4c, 0x45, 0x5f, 0x44, 0x45, 0x53,
1174	0x43, 0x52, 0x49, 0x50, 0x54, 0x4f, 0x52, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x54,
1175	0x4f, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x5f, 0x46, 0x49, 0x4c,
1176	0x45, 0x10, 0x06, 0x22, 0x1f, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x66,
1177	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
1178	0x6e, 0x61, 0x6d, 0x65, 0x22, 0x4f, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65,
1179	0x70, 0x6f, 0x72, 0x74, 0x12, 0x3f, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x63,
1180	0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67,
1181	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
1182	0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x68,
1183	0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, 0xf8, 0x06, 0x0a, 0x07, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75,
1184	0x74, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x5f, 0x69, 0x64, 0x18,
1185	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x6c,
1186	0x6f, 0x75, 0x74, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f,
1187	0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
1188	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
1189	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69,
1190	0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79,
1191	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42,
1192	0x79, 0x12, 0x4e, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
1193	0x0e, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73,
1194	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74,
1195	0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x6c,
1196	0x6f, 0x75, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
1197	0x73, 0x12, 0x7b, 0x0a, 0x18, 0x74, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x5f, 0x70, 0x65, 0x72,
1198	0x63, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x05, 0x20,
1199	0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
1200	0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65,
1201	0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x54, 0x72,
1202	0x61, 0x66, 0x66, 0x69, 0x63, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, 0x61,
1203	0x74, 0x65, 0x67, 0x79, 0x48, 0x00, 0x52, 0x16, 0x74, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x50,
1204	0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x79,
1205	0x0a, 0x17, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
1206	0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b,
1207	0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x65,
1208	0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
1209	0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
1210	0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79,
1211	0x48, 0x00, 0x52, 0x15, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
1212	0x65, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72,
1213	0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
1214	0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0xcc, 0x01, 0x0a,
1215	0x16, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x53,
1216	0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x72, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x63, 0x65,
1217	0x6e, 0x74, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x67,
1218	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
1219	0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52,
1220	0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x50, 0x65,
1221	0x72, 0x63, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x2e, 0x50, 0x65,
1222	0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b,
1223	0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x73, 0x1a, 0x3e, 0x0a, 0x10, 0x50,
1224	0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
1225	0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
1226	0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01,
1227	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x17, 0x0a, 0x15, 0x44,
1228	0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x72, 0x61,
1229	0x74, 0x65, 0x67, 0x79, 0x22, 0x8d, 0x01, 0x0a, 0x0d, 0x52, 0x6f, 0x6c, 0x6c, 0x6f, 0x75, 0x74,
1230	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x1a, 0x52, 0x4f, 0x4c, 0x4c, 0x4f, 0x55,
1231	0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
1232	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f,
1233	0x47, 0x52, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45,
1234	0x53, 0x53, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x4c, 0x45,
1235	0x44, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x12,
1236	0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12,
1237	0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x5f, 0x52, 0x4f, 0x4c, 0x4c, 0x45, 0x44, 0x5f, 0x42, 0x41,
1238	0x43, 0x4b, 0x10, 0x06, 0x42, 0x0a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79,
1239	0x42, 0xff, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1240	0x61, 0x70, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67,
1241	0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
1242	0x63, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x50, 0x67, 0x6f, 0x6f, 0x67,
1243	0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65,
1244	0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
1245	0x73, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x6d, 0x61, 0x6e,
1246	0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x65, 0x72, 0x76, 0x69,
1247	0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0xa2, 0x02, 0x04, 0x47,
1248	0x41, 0x53, 0x4d, 0xaa, 0x02, 0x21, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f,
1249	0x75, 0x64, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65,
1250	0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x21, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1251	0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x61,
1252	0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5c, 0x56, 0x31, 0xea, 0x02, 0x24, 0x47, 0x6f,
1253	0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x53, 0x65, 0x72,
1254	0x76, 0x69, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x3a,
1255	0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
1256}
1257
1258var (
1259	file_google_api_servicemanagement_v1_resources_proto_rawDescOnce sync.Once
1260	file_google_api_servicemanagement_v1_resources_proto_rawDescData = file_google_api_servicemanagement_v1_resources_proto_rawDesc
1261)
1262
1263func file_google_api_servicemanagement_v1_resources_proto_rawDescGZIP() []byte {
1264	file_google_api_servicemanagement_v1_resources_proto_rawDescOnce.Do(func() {
1265		file_google_api_servicemanagement_v1_resources_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_servicemanagement_v1_resources_proto_rawDescData)
1266	})
1267	return file_google_api_servicemanagement_v1_resources_proto_rawDescData
1268}
1269
1270var file_google_api_servicemanagement_v1_resources_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
1271var file_google_api_servicemanagement_v1_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
1272var file_google_api_servicemanagement_v1_resources_proto_goTypes = []interface{}{
1273	(OperationMetadata_Status)(0),          // 0: google.api.servicemanagement.v1.OperationMetadata.Status
1274	(Diagnostic_Kind)(0),                   // 1: google.api.servicemanagement.v1.Diagnostic.Kind
1275	(ConfigFile_FileType)(0),               // 2: google.api.servicemanagement.v1.ConfigFile.FileType
1276	(Rollout_RolloutStatus)(0),             // 3: google.api.servicemanagement.v1.Rollout.RolloutStatus
1277	(*ManagedService)(nil),                 // 4: google.api.servicemanagement.v1.ManagedService
1278	(*OperationMetadata)(nil),              // 5: google.api.servicemanagement.v1.OperationMetadata
1279	(*Diagnostic)(nil),                     // 6: google.api.servicemanagement.v1.Diagnostic
1280	(*ConfigSource)(nil),                   // 7: google.api.servicemanagement.v1.ConfigSource
1281	(*ConfigFile)(nil),                     // 8: google.api.servicemanagement.v1.ConfigFile
1282	(*ConfigRef)(nil),                      // 9: google.api.servicemanagement.v1.ConfigRef
1283	(*ChangeReport)(nil),                   // 10: google.api.servicemanagement.v1.ChangeReport
1284	(*Rollout)(nil),                        // 11: google.api.servicemanagement.v1.Rollout
1285	(*OperationMetadata_Step)(nil),         // 12: google.api.servicemanagement.v1.OperationMetadata.Step
1286	(*Rollout_TrafficPercentStrategy)(nil), // 13: google.api.servicemanagement.v1.Rollout.TrafficPercentStrategy
1287	(*Rollout_DeleteServiceStrategy)(nil),  // 14: google.api.servicemanagement.v1.Rollout.DeleteServiceStrategy
1288	nil,                                    // 15: google.api.servicemanagement.v1.Rollout.TrafficPercentStrategy.PercentagesEntry
1289	(*timestamppb.Timestamp)(nil),          // 16: google.protobuf.Timestamp
1290	(*configchange.ConfigChange)(nil),      // 17: google.api.ConfigChange
1291}
1292var file_google_api_servicemanagement_v1_resources_proto_depIdxs = []int32{
1293	12, // 0: google.api.servicemanagement.v1.OperationMetadata.steps:type_name -> google.api.servicemanagement.v1.OperationMetadata.Step
1294	16, // 1: google.api.servicemanagement.v1.OperationMetadata.start_time:type_name -> google.protobuf.Timestamp
1295	1,  // 2: google.api.servicemanagement.v1.Diagnostic.kind:type_name -> google.api.servicemanagement.v1.Diagnostic.Kind
1296	8,  // 3: google.api.servicemanagement.v1.ConfigSource.files:type_name -> google.api.servicemanagement.v1.ConfigFile
1297	2,  // 4: google.api.servicemanagement.v1.ConfigFile.file_type:type_name -> google.api.servicemanagement.v1.ConfigFile.FileType
1298	17, // 5: google.api.servicemanagement.v1.ChangeReport.config_changes:type_name -> google.api.ConfigChange
1299	16, // 6: google.api.servicemanagement.v1.Rollout.create_time:type_name -> google.protobuf.Timestamp
1300	3,  // 7: google.api.servicemanagement.v1.Rollout.status:type_name -> google.api.servicemanagement.v1.Rollout.RolloutStatus
1301	13, // 8: google.api.servicemanagement.v1.Rollout.traffic_percent_strategy:type_name -> google.api.servicemanagement.v1.Rollout.TrafficPercentStrategy
1302	14, // 9: google.api.servicemanagement.v1.Rollout.delete_service_strategy:type_name -> google.api.servicemanagement.v1.Rollout.DeleteServiceStrategy
1303	0,  // 10: google.api.servicemanagement.v1.OperationMetadata.Step.status:type_name -> google.api.servicemanagement.v1.OperationMetadata.Status
1304	15, // 11: google.api.servicemanagement.v1.Rollout.TrafficPercentStrategy.percentages:type_name -> google.api.servicemanagement.v1.Rollout.TrafficPercentStrategy.PercentagesEntry
1305	12, // [12:12] is the sub-list for method output_type
1306	12, // [12:12] is the sub-list for method input_type
1307	12, // [12:12] is the sub-list for extension type_name
1308	12, // [12:12] is the sub-list for extension extendee
1309	0,  // [0:12] is the sub-list for field type_name
1310}
1311
1312func init() { file_google_api_servicemanagement_v1_resources_proto_init() }
1313func file_google_api_servicemanagement_v1_resources_proto_init() {
1314	if File_google_api_servicemanagement_v1_resources_proto != nil {
1315		return
1316	}
1317	if !protoimpl.UnsafeEnabled {
1318		file_google_api_servicemanagement_v1_resources_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
1319			switch v := v.(*ManagedService); i {
1320			case 0:
1321				return &v.state
1322			case 1:
1323				return &v.sizeCache
1324			case 2:
1325				return &v.unknownFields
1326			default:
1327				return nil
1328			}
1329		}
1330		file_google_api_servicemanagement_v1_resources_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
1331			switch v := v.(*OperationMetadata); i {
1332			case 0:
1333				return &v.state
1334			case 1:
1335				return &v.sizeCache
1336			case 2:
1337				return &v.unknownFields
1338			default:
1339				return nil
1340			}
1341		}
1342		file_google_api_servicemanagement_v1_resources_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
1343			switch v := v.(*Diagnostic); i {
1344			case 0:
1345				return &v.state
1346			case 1:
1347				return &v.sizeCache
1348			case 2:
1349				return &v.unknownFields
1350			default:
1351				return nil
1352			}
1353		}
1354		file_google_api_servicemanagement_v1_resources_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
1355			switch v := v.(*ConfigSource); i {
1356			case 0:
1357				return &v.state
1358			case 1:
1359				return &v.sizeCache
1360			case 2:
1361				return &v.unknownFields
1362			default:
1363				return nil
1364			}
1365		}
1366		file_google_api_servicemanagement_v1_resources_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
1367			switch v := v.(*ConfigFile); i {
1368			case 0:
1369				return &v.state
1370			case 1:
1371				return &v.sizeCache
1372			case 2:
1373				return &v.unknownFields
1374			default:
1375				return nil
1376			}
1377		}
1378		file_google_api_servicemanagement_v1_resources_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
1379			switch v := v.(*ConfigRef); i {
1380			case 0:
1381				return &v.state
1382			case 1:
1383				return &v.sizeCache
1384			case 2:
1385				return &v.unknownFields
1386			default:
1387				return nil
1388			}
1389		}
1390		file_google_api_servicemanagement_v1_resources_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1391			switch v := v.(*ChangeReport); i {
1392			case 0:
1393				return &v.state
1394			case 1:
1395				return &v.sizeCache
1396			case 2:
1397				return &v.unknownFields
1398			default:
1399				return nil
1400			}
1401		}
1402		file_google_api_servicemanagement_v1_resources_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
1403			switch v := v.(*Rollout); i {
1404			case 0:
1405				return &v.state
1406			case 1:
1407				return &v.sizeCache
1408			case 2:
1409				return &v.unknownFields
1410			default:
1411				return nil
1412			}
1413		}
1414		file_google_api_servicemanagement_v1_resources_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1415			switch v := v.(*OperationMetadata_Step); i {
1416			case 0:
1417				return &v.state
1418			case 1:
1419				return &v.sizeCache
1420			case 2:
1421				return &v.unknownFields
1422			default:
1423				return nil
1424			}
1425		}
1426		file_google_api_servicemanagement_v1_resources_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
1427			switch v := v.(*Rollout_TrafficPercentStrategy); i {
1428			case 0:
1429				return &v.state
1430			case 1:
1431				return &v.sizeCache
1432			case 2:
1433				return &v.unknownFields
1434			default:
1435				return nil
1436			}
1437		}
1438		file_google_api_servicemanagement_v1_resources_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
1439			switch v := v.(*Rollout_DeleteServiceStrategy); i {
1440			case 0:
1441				return &v.state
1442			case 1:
1443				return &v.sizeCache
1444			case 2:
1445				return &v.unknownFields
1446			default:
1447				return nil
1448			}
1449		}
1450	}
1451	file_google_api_servicemanagement_v1_resources_proto_msgTypes[7].OneofWrappers = []interface{}{
1452		(*Rollout_TrafficPercentStrategy_)(nil),
1453		(*Rollout_DeleteServiceStrategy_)(nil),
1454	}
1455	type x struct{}
1456	out := protoimpl.TypeBuilder{
1457		File: protoimpl.DescBuilder{
1458			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1459			RawDescriptor: file_google_api_servicemanagement_v1_resources_proto_rawDesc,
1460			NumEnums:      4,
1461			NumMessages:   12,
1462			NumExtensions: 0,
1463			NumServices:   0,
1464		},
1465		GoTypes:           file_google_api_servicemanagement_v1_resources_proto_goTypes,
1466		DependencyIndexes: file_google_api_servicemanagement_v1_resources_proto_depIdxs,
1467		EnumInfos:         file_google_api_servicemanagement_v1_resources_proto_enumTypes,
1468		MessageInfos:      file_google_api_servicemanagement_v1_resources_proto_msgTypes,
1469	}.Build()
1470	File_google_api_servicemanagement_v1_resources_proto = out.File
1471	file_google_api_servicemanagement_v1_resources_proto_rawDesc = nil
1472	file_google_api_servicemanagement_v1_resources_proto_goTypes = nil
1473	file_google_api_servicemanagement_v1_resources_proto_depIdxs = nil
1474}
1475