1#![allow(unknown_lints)]
6#![allow(clippy::all)]
7
8#![allow(unused_attributes)]
9#![cfg_attr(rustfmt, rustfmt::skip)]
10
11#![allow(box_pointers)]
12#![allow(dead_code)]
13#![allow(missing_docs)]
14#![allow(non_camel_case_types)]
15#![allow(non_snake_case)]
16#![allow(non_upper_case_globals)]
17#![allow(trivial_casts)]
18#![allow(unused_imports)]
19#![allow(unused_results)]
20#[derive(PartialEq,Clone,Default)]
27pub struct ManagedService {
28 pub service_name: ::std::string::String,
30 pub producer_project_id: ::std::string::String,
31 pub unknown_fields: ::protobuf::UnknownFields,
33 pub cached_size: ::protobuf::CachedSize,
34}
35
36impl<'a> ::std::default::Default for &'a ManagedService {
37 fn default() -> &'a ManagedService {
38 <ManagedService as ::protobuf::Message>::default_instance()
39 }
40}
41
42impl ManagedService {
43 pub fn new() -> ManagedService {
44 ::std::default::Default::default()
45 }
46
47 pub fn get_service_name(&self) -> &str {
51 &self.service_name
52 }
53 pub fn clear_service_name(&mut self) {
54 self.service_name.clear();
55 }
56
57 pub fn set_service_name(&mut self, v: ::std::string::String) {
59 self.service_name = v;
60 }
61
62 pub fn mut_service_name(&mut self) -> &mut ::std::string::String {
65 &mut self.service_name
66 }
67
68 pub fn take_service_name(&mut self) -> ::std::string::String {
70 ::std::mem::replace(&mut self.service_name, ::std::string::String::new())
71 }
72
73 pub fn get_producer_project_id(&self) -> &str {
77 &self.producer_project_id
78 }
79 pub fn clear_producer_project_id(&mut self) {
80 self.producer_project_id.clear();
81 }
82
83 pub fn set_producer_project_id(&mut self, v: ::std::string::String) {
85 self.producer_project_id = v;
86 }
87
88 pub fn mut_producer_project_id(&mut self) -> &mut ::std::string::String {
91 &mut self.producer_project_id
92 }
93
94 pub fn take_producer_project_id(&mut self) -> ::std::string::String {
96 ::std::mem::replace(&mut self.producer_project_id, ::std::string::String::new())
97 }
98}
99
100impl ::protobuf::Message for ManagedService {
101 fn is_initialized(&self) -> bool {
102 true
103 }
104
105 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
106 while !is.eof()? {
107 let (field_number, wire_type) = is.read_tag_unpack()?;
108 match field_number {
109 2 => {
110 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_name)?;
111 },
112 3 => {
113 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.producer_project_id)?;
114 },
115 _ => {
116 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
117 },
118 };
119 }
120 ::std::result::Result::Ok(())
121 }
122
123 #[allow(unused_variables)]
125 fn compute_size(&self) -> u32 {
126 let mut my_size = 0;
127 if !self.service_name.is_empty() {
128 my_size += ::protobuf::rt::string_size(2, &self.service_name);
129 }
130 if !self.producer_project_id.is_empty() {
131 my_size += ::protobuf::rt::string_size(3, &self.producer_project_id);
132 }
133 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
134 self.cached_size.set(my_size);
135 my_size
136 }
137
138 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
139 if !self.service_name.is_empty() {
140 os.write_string(2, &self.service_name)?;
141 }
142 if !self.producer_project_id.is_empty() {
143 os.write_string(3, &self.producer_project_id)?;
144 }
145 os.write_unknown_fields(self.get_unknown_fields())?;
146 ::std::result::Result::Ok(())
147 }
148
149 fn get_cached_size(&self) -> u32 {
150 self.cached_size.get()
151 }
152
153 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
154 &self.unknown_fields
155 }
156
157 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
158 &mut self.unknown_fields
159 }
160
161 fn as_any(&self) -> &dyn (::std::any::Any) {
162 self as &dyn (::std::any::Any)
163 }
164 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
165 self as &mut dyn (::std::any::Any)
166 }
167 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
168 self
169 }
170
171 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
172 Self::descriptor_static()
173 }
174
175 fn new() -> ManagedService {
176 ManagedService::new()
177 }
178
179 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
180 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
181 descriptor.get(|| {
182 let mut fields = ::std::vec::Vec::new();
183 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
184 "service_name",
185 |m: &ManagedService| { &m.service_name },
186 |m: &mut ManagedService| { &mut m.service_name },
187 ));
188 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
189 "producer_project_id",
190 |m: &ManagedService| { &m.producer_project_id },
191 |m: &mut ManagedService| { &mut m.producer_project_id },
192 ));
193 ::protobuf::reflect::MessageDescriptor::new_pb_name::<ManagedService>(
194 "ManagedService",
195 fields,
196 file_descriptor_proto()
197 )
198 })
199 }
200
201 fn default_instance() -> &'static ManagedService {
202 static instance: ::protobuf::rt::LazyV2<ManagedService> = ::protobuf::rt::LazyV2::INIT;
203 instance.get(ManagedService::new)
204 }
205}
206
207impl ::protobuf::Clear for ManagedService {
208 fn clear(&mut self) {
209 self.service_name.clear();
210 self.producer_project_id.clear();
211 self.unknown_fields.clear();
212 }
213}
214
215impl ::std::fmt::Debug for ManagedService {
216 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
217 ::protobuf::text_format::fmt(self, f)
218 }
219}
220
221impl ::protobuf::reflect::ProtobufValue for ManagedService {
222 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
223 ::protobuf::reflect::ReflectValueRef::Message(self)
224 }
225}
226
227#[derive(PartialEq,Clone,Default)]
228pub struct OperationMetadata {
229 pub resource_names: ::protobuf::RepeatedField<::std::string::String>,
231 pub steps: ::protobuf::RepeatedField<OperationMetadata_Step>,
232 pub progress_percentage: i32,
233 pub start_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
234 pub unknown_fields: ::protobuf::UnknownFields,
236 pub cached_size: ::protobuf::CachedSize,
237}
238
239impl<'a> ::std::default::Default for &'a OperationMetadata {
240 fn default() -> &'a OperationMetadata {
241 <OperationMetadata as ::protobuf::Message>::default_instance()
242 }
243}
244
245impl OperationMetadata {
246 pub fn new() -> OperationMetadata {
247 ::std::default::Default::default()
248 }
249
250 pub fn get_resource_names(&self) -> &[::std::string::String] {
254 &self.resource_names
255 }
256 pub fn clear_resource_names(&mut self) {
257 self.resource_names.clear();
258 }
259
260 pub fn set_resource_names(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
262 self.resource_names = v;
263 }
264
265 pub fn mut_resource_names(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
267 &mut self.resource_names
268 }
269
270 pub fn take_resource_names(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
272 ::std::mem::replace(&mut self.resource_names, ::protobuf::RepeatedField::new())
273 }
274
275 pub fn get_steps(&self) -> &[OperationMetadata_Step] {
279 &self.steps
280 }
281 pub fn clear_steps(&mut self) {
282 self.steps.clear();
283 }
284
285 pub fn set_steps(&mut self, v: ::protobuf::RepeatedField<OperationMetadata_Step>) {
287 self.steps = v;
288 }
289
290 pub fn mut_steps(&mut self) -> &mut ::protobuf::RepeatedField<OperationMetadata_Step> {
292 &mut self.steps
293 }
294
295 pub fn take_steps(&mut self) -> ::protobuf::RepeatedField<OperationMetadata_Step> {
297 ::std::mem::replace(&mut self.steps, ::protobuf::RepeatedField::new())
298 }
299
300 pub fn get_progress_percentage(&self) -> i32 {
304 self.progress_percentage
305 }
306 pub fn clear_progress_percentage(&mut self) {
307 self.progress_percentage = 0;
308 }
309
310 pub fn set_progress_percentage(&mut self, v: i32) {
312 self.progress_percentage = v;
313 }
314
315 pub fn get_start_time(&self) -> &::protobuf::well_known_types::Timestamp {
319 self.start_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
320 }
321 pub fn clear_start_time(&mut self) {
322 self.start_time.clear();
323 }
324
325 pub fn has_start_time(&self) -> bool {
326 self.start_time.is_some()
327 }
328
329 pub fn set_start_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
331 self.start_time = ::protobuf::SingularPtrField::some(v);
332 }
333
334 pub fn mut_start_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
337 if self.start_time.is_none() {
338 self.start_time.set_default();
339 }
340 self.start_time.as_mut().unwrap()
341 }
342
343 pub fn take_start_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
345 self.start_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
346 }
347}
348
349impl ::protobuf::Message for OperationMetadata {
350 fn is_initialized(&self) -> bool {
351 for v in &self.steps {
352 if !v.is_initialized() {
353 return false;
354 }
355 };
356 for v in &self.start_time {
357 if !v.is_initialized() {
358 return false;
359 }
360 };
361 true
362 }
363
364 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
365 while !is.eof()? {
366 let (field_number, wire_type) = is.read_tag_unpack()?;
367 match field_number {
368 1 => {
369 ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.resource_names)?;
370 },
371 2 => {
372 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.steps)?;
373 },
374 3 => {
375 if wire_type != ::protobuf::wire_format::WireTypeVarint {
376 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
377 }
378 let tmp = is.read_int32()?;
379 self.progress_percentage = tmp;
380 },
381 4 => {
382 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.start_time)?;
383 },
384 _ => {
385 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
386 },
387 };
388 }
389 ::std::result::Result::Ok(())
390 }
391
392 #[allow(unused_variables)]
394 fn compute_size(&self) -> u32 {
395 let mut my_size = 0;
396 for value in &self.resource_names {
397 my_size += ::protobuf::rt::string_size(1, &value);
398 };
399 for value in &self.steps {
400 let len = value.compute_size();
401 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
402 };
403 if self.progress_percentage != 0 {
404 my_size += ::protobuf::rt::value_size(3, self.progress_percentage, ::protobuf::wire_format::WireTypeVarint);
405 }
406 if let Some(ref v) = self.start_time.as_ref() {
407 let len = v.compute_size();
408 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
409 }
410 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
411 self.cached_size.set(my_size);
412 my_size
413 }
414
415 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
416 for v in &self.resource_names {
417 os.write_string(1, &v)?;
418 };
419 for v in &self.steps {
420 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
421 os.write_raw_varint32(v.get_cached_size())?;
422 v.write_to_with_cached_sizes(os)?;
423 };
424 if self.progress_percentage != 0 {
425 os.write_int32(3, self.progress_percentage)?;
426 }
427 if let Some(ref v) = self.start_time.as_ref() {
428 os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
429 os.write_raw_varint32(v.get_cached_size())?;
430 v.write_to_with_cached_sizes(os)?;
431 }
432 os.write_unknown_fields(self.get_unknown_fields())?;
433 ::std::result::Result::Ok(())
434 }
435
436 fn get_cached_size(&self) -> u32 {
437 self.cached_size.get()
438 }
439
440 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
441 &self.unknown_fields
442 }
443
444 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
445 &mut self.unknown_fields
446 }
447
448 fn as_any(&self) -> &dyn (::std::any::Any) {
449 self as &dyn (::std::any::Any)
450 }
451 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
452 self as &mut dyn (::std::any::Any)
453 }
454 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
455 self
456 }
457
458 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
459 Self::descriptor_static()
460 }
461
462 fn new() -> OperationMetadata {
463 OperationMetadata::new()
464 }
465
466 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
467 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
468 descriptor.get(|| {
469 let mut fields = ::std::vec::Vec::new();
470 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
471 "resource_names",
472 |m: &OperationMetadata| { &m.resource_names },
473 |m: &mut OperationMetadata| { &mut m.resource_names },
474 ));
475 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OperationMetadata_Step>>(
476 "steps",
477 |m: &OperationMetadata| { &m.steps },
478 |m: &mut OperationMetadata| { &mut m.steps },
479 ));
480 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt32>(
481 "progress_percentage",
482 |m: &OperationMetadata| { &m.progress_percentage },
483 |m: &mut OperationMetadata| { &mut m.progress_percentage },
484 ));
485 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
486 "start_time",
487 |m: &OperationMetadata| { &m.start_time },
488 |m: &mut OperationMetadata| { &mut m.start_time },
489 ));
490 ::protobuf::reflect::MessageDescriptor::new_pb_name::<OperationMetadata>(
491 "OperationMetadata",
492 fields,
493 file_descriptor_proto()
494 )
495 })
496 }
497
498 fn default_instance() -> &'static OperationMetadata {
499 static instance: ::protobuf::rt::LazyV2<OperationMetadata> = ::protobuf::rt::LazyV2::INIT;
500 instance.get(OperationMetadata::new)
501 }
502}
503
504impl ::protobuf::Clear for OperationMetadata {
505 fn clear(&mut self) {
506 self.resource_names.clear();
507 self.steps.clear();
508 self.progress_percentage = 0;
509 self.start_time.clear();
510 self.unknown_fields.clear();
511 }
512}
513
514impl ::std::fmt::Debug for OperationMetadata {
515 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
516 ::protobuf::text_format::fmt(self, f)
517 }
518}
519
520impl ::protobuf::reflect::ProtobufValue for OperationMetadata {
521 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
522 ::protobuf::reflect::ReflectValueRef::Message(self)
523 }
524}
525
526#[derive(PartialEq,Clone,Default)]
527pub struct OperationMetadata_Step {
528 pub description: ::std::string::String,
530 pub status: OperationMetadata_Status,
531 pub unknown_fields: ::protobuf::UnknownFields,
533 pub cached_size: ::protobuf::CachedSize,
534}
535
536impl<'a> ::std::default::Default for &'a OperationMetadata_Step {
537 fn default() -> &'a OperationMetadata_Step {
538 <OperationMetadata_Step as ::protobuf::Message>::default_instance()
539 }
540}
541
542impl OperationMetadata_Step {
543 pub fn new() -> OperationMetadata_Step {
544 ::std::default::Default::default()
545 }
546
547 pub fn get_description(&self) -> &str {
551 &self.description
552 }
553 pub fn clear_description(&mut self) {
554 self.description.clear();
555 }
556
557 pub fn set_description(&mut self, v: ::std::string::String) {
559 self.description = v;
560 }
561
562 pub fn mut_description(&mut self) -> &mut ::std::string::String {
565 &mut self.description
566 }
567
568 pub fn take_description(&mut self) -> ::std::string::String {
570 ::std::mem::replace(&mut self.description, ::std::string::String::new())
571 }
572
573 pub fn get_status(&self) -> OperationMetadata_Status {
577 self.status
578 }
579 pub fn clear_status(&mut self) {
580 self.status = OperationMetadata_Status::STATUS_UNSPECIFIED;
581 }
582
583 pub fn set_status(&mut self, v: OperationMetadata_Status) {
585 self.status = v;
586 }
587}
588
589impl ::protobuf::Message for OperationMetadata_Step {
590 fn is_initialized(&self) -> bool {
591 true
592 }
593
594 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
595 while !is.eof()? {
596 let (field_number, wire_type) = is.read_tag_unpack()?;
597 match field_number {
598 2 => {
599 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.description)?;
600 },
601 4 => {
602 ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.status, 4, &mut self.unknown_fields)?
603 },
604 _ => {
605 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
606 },
607 };
608 }
609 ::std::result::Result::Ok(())
610 }
611
612 #[allow(unused_variables)]
614 fn compute_size(&self) -> u32 {
615 let mut my_size = 0;
616 if !self.description.is_empty() {
617 my_size += ::protobuf::rt::string_size(2, &self.description);
618 }
619 if self.status != OperationMetadata_Status::STATUS_UNSPECIFIED {
620 my_size += ::protobuf::rt::enum_size(4, self.status);
621 }
622 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
623 self.cached_size.set(my_size);
624 my_size
625 }
626
627 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
628 if !self.description.is_empty() {
629 os.write_string(2, &self.description)?;
630 }
631 if self.status != OperationMetadata_Status::STATUS_UNSPECIFIED {
632 os.write_enum(4, ::protobuf::ProtobufEnum::value(&self.status))?;
633 }
634 os.write_unknown_fields(self.get_unknown_fields())?;
635 ::std::result::Result::Ok(())
636 }
637
638 fn get_cached_size(&self) -> u32 {
639 self.cached_size.get()
640 }
641
642 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
643 &self.unknown_fields
644 }
645
646 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
647 &mut self.unknown_fields
648 }
649
650 fn as_any(&self) -> &dyn (::std::any::Any) {
651 self as &dyn (::std::any::Any)
652 }
653 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
654 self as &mut dyn (::std::any::Any)
655 }
656 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
657 self
658 }
659
660 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
661 Self::descriptor_static()
662 }
663
664 fn new() -> OperationMetadata_Step {
665 OperationMetadata_Step::new()
666 }
667
668 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
669 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
670 descriptor.get(|| {
671 let mut fields = ::std::vec::Vec::new();
672 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
673 "description",
674 |m: &OperationMetadata_Step| { &m.description },
675 |m: &mut OperationMetadata_Step| { &mut m.description },
676 ));
677 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<OperationMetadata_Status>>(
678 "status",
679 |m: &OperationMetadata_Step| { &m.status },
680 |m: &mut OperationMetadata_Step| { &mut m.status },
681 ));
682 ::protobuf::reflect::MessageDescriptor::new_pb_name::<OperationMetadata_Step>(
683 "OperationMetadata.Step",
684 fields,
685 file_descriptor_proto()
686 )
687 })
688 }
689
690 fn default_instance() -> &'static OperationMetadata_Step {
691 static instance: ::protobuf::rt::LazyV2<OperationMetadata_Step> = ::protobuf::rt::LazyV2::INIT;
692 instance.get(OperationMetadata_Step::new)
693 }
694}
695
696impl ::protobuf::Clear for OperationMetadata_Step {
697 fn clear(&mut self) {
698 self.description.clear();
699 self.status = OperationMetadata_Status::STATUS_UNSPECIFIED;
700 self.unknown_fields.clear();
701 }
702}
703
704impl ::std::fmt::Debug for OperationMetadata_Step {
705 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
706 ::protobuf::text_format::fmt(self, f)
707 }
708}
709
710impl ::protobuf::reflect::ProtobufValue for OperationMetadata_Step {
711 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
712 ::protobuf::reflect::ReflectValueRef::Message(self)
713 }
714}
715
716#[derive(Clone,PartialEq,Eq,Debug,Hash)]
717pub enum OperationMetadata_Status {
718 STATUS_UNSPECIFIED = 0,
719 DONE = 1,
720 NOT_STARTED = 2,
721 IN_PROGRESS = 3,
722 FAILED = 4,
723 CANCELLED = 5,
724}
725
726impl ::protobuf::ProtobufEnum for OperationMetadata_Status {
727 fn value(&self) -> i32 {
728 *self as i32
729 }
730
731 fn from_i32(value: i32) -> ::std::option::Option<OperationMetadata_Status> {
732 match value {
733 0 => ::std::option::Option::Some(OperationMetadata_Status::STATUS_UNSPECIFIED),
734 1 => ::std::option::Option::Some(OperationMetadata_Status::DONE),
735 2 => ::std::option::Option::Some(OperationMetadata_Status::NOT_STARTED),
736 3 => ::std::option::Option::Some(OperationMetadata_Status::IN_PROGRESS),
737 4 => ::std::option::Option::Some(OperationMetadata_Status::FAILED),
738 5 => ::std::option::Option::Some(OperationMetadata_Status::CANCELLED),
739 _ => ::std::option::Option::None
740 }
741 }
742
743 fn values() -> &'static [Self] {
744 static values: &'static [OperationMetadata_Status] = &[
745 OperationMetadata_Status::STATUS_UNSPECIFIED,
746 OperationMetadata_Status::DONE,
747 OperationMetadata_Status::NOT_STARTED,
748 OperationMetadata_Status::IN_PROGRESS,
749 OperationMetadata_Status::FAILED,
750 OperationMetadata_Status::CANCELLED,
751 ];
752 values
753 }
754
755 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
756 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
757 descriptor.get(|| {
758 ::protobuf::reflect::EnumDescriptor::new_pb_name::<OperationMetadata_Status>("OperationMetadata.Status", file_descriptor_proto())
759 })
760 }
761}
762
763impl ::std::marker::Copy for OperationMetadata_Status {
764}
765
766impl ::std::default::Default for OperationMetadata_Status {
767 fn default() -> Self {
768 OperationMetadata_Status::STATUS_UNSPECIFIED
769 }
770}
771
772impl ::protobuf::reflect::ProtobufValue for OperationMetadata_Status {
773 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
774 ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
775 }
776}
777
778#[derive(PartialEq,Clone,Default)]
779pub struct Diagnostic {
780 pub location: ::std::string::String,
782 pub kind: Diagnostic_Kind,
783 pub message: ::std::string::String,
784 pub unknown_fields: ::protobuf::UnknownFields,
786 pub cached_size: ::protobuf::CachedSize,
787}
788
789impl<'a> ::std::default::Default for &'a Diagnostic {
790 fn default() -> &'a Diagnostic {
791 <Diagnostic as ::protobuf::Message>::default_instance()
792 }
793}
794
795impl Diagnostic {
796 pub fn new() -> Diagnostic {
797 ::std::default::Default::default()
798 }
799
800 pub fn get_location(&self) -> &str {
804 &self.location
805 }
806 pub fn clear_location(&mut self) {
807 self.location.clear();
808 }
809
810 pub fn set_location(&mut self, v: ::std::string::String) {
812 self.location = v;
813 }
814
815 pub fn mut_location(&mut self) -> &mut ::std::string::String {
818 &mut self.location
819 }
820
821 pub fn take_location(&mut self) -> ::std::string::String {
823 ::std::mem::replace(&mut self.location, ::std::string::String::new())
824 }
825
826 pub fn get_kind(&self) -> Diagnostic_Kind {
830 self.kind
831 }
832 pub fn clear_kind(&mut self) {
833 self.kind = Diagnostic_Kind::WARNING;
834 }
835
836 pub fn set_kind(&mut self, v: Diagnostic_Kind) {
838 self.kind = v;
839 }
840
841 pub fn get_message(&self) -> &str {
845 &self.message
846 }
847 pub fn clear_message(&mut self) {
848 self.message.clear();
849 }
850
851 pub fn set_message(&mut self, v: ::std::string::String) {
853 self.message = v;
854 }
855
856 pub fn mut_message(&mut self) -> &mut ::std::string::String {
859 &mut self.message
860 }
861
862 pub fn take_message(&mut self) -> ::std::string::String {
864 ::std::mem::replace(&mut self.message, ::std::string::String::new())
865 }
866}
867
868impl ::protobuf::Message for Diagnostic {
869 fn is_initialized(&self) -> bool {
870 true
871 }
872
873 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
874 while !is.eof()? {
875 let (field_number, wire_type) = is.read_tag_unpack()?;
876 match field_number {
877 1 => {
878 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.location)?;
879 },
880 2 => {
881 ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.kind, 2, &mut self.unknown_fields)?
882 },
883 3 => {
884 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.message)?;
885 },
886 _ => {
887 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
888 },
889 };
890 }
891 ::std::result::Result::Ok(())
892 }
893
894 #[allow(unused_variables)]
896 fn compute_size(&self) -> u32 {
897 let mut my_size = 0;
898 if !self.location.is_empty() {
899 my_size += ::protobuf::rt::string_size(1, &self.location);
900 }
901 if self.kind != Diagnostic_Kind::WARNING {
902 my_size += ::protobuf::rt::enum_size(2, self.kind);
903 }
904 if !self.message.is_empty() {
905 my_size += ::protobuf::rt::string_size(3, &self.message);
906 }
907 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
908 self.cached_size.set(my_size);
909 my_size
910 }
911
912 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
913 if !self.location.is_empty() {
914 os.write_string(1, &self.location)?;
915 }
916 if self.kind != Diagnostic_Kind::WARNING {
917 os.write_enum(2, ::protobuf::ProtobufEnum::value(&self.kind))?;
918 }
919 if !self.message.is_empty() {
920 os.write_string(3, &self.message)?;
921 }
922 os.write_unknown_fields(self.get_unknown_fields())?;
923 ::std::result::Result::Ok(())
924 }
925
926 fn get_cached_size(&self) -> u32 {
927 self.cached_size.get()
928 }
929
930 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
931 &self.unknown_fields
932 }
933
934 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
935 &mut self.unknown_fields
936 }
937
938 fn as_any(&self) -> &dyn (::std::any::Any) {
939 self as &dyn (::std::any::Any)
940 }
941 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
942 self as &mut dyn (::std::any::Any)
943 }
944 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
945 self
946 }
947
948 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
949 Self::descriptor_static()
950 }
951
952 fn new() -> Diagnostic {
953 Diagnostic::new()
954 }
955
956 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
957 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
958 descriptor.get(|| {
959 let mut fields = ::std::vec::Vec::new();
960 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
961 "location",
962 |m: &Diagnostic| { &m.location },
963 |m: &mut Diagnostic| { &mut m.location },
964 ));
965 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Diagnostic_Kind>>(
966 "kind",
967 |m: &Diagnostic| { &m.kind },
968 |m: &mut Diagnostic| { &mut m.kind },
969 ));
970 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
971 "message",
972 |m: &Diagnostic| { &m.message },
973 |m: &mut Diagnostic| { &mut m.message },
974 ));
975 ::protobuf::reflect::MessageDescriptor::new_pb_name::<Diagnostic>(
976 "Diagnostic",
977 fields,
978 file_descriptor_proto()
979 )
980 })
981 }
982
983 fn default_instance() -> &'static Diagnostic {
984 static instance: ::protobuf::rt::LazyV2<Diagnostic> = ::protobuf::rt::LazyV2::INIT;
985 instance.get(Diagnostic::new)
986 }
987}
988
989impl ::protobuf::Clear for Diagnostic {
990 fn clear(&mut self) {
991 self.location.clear();
992 self.kind = Diagnostic_Kind::WARNING;
993 self.message.clear();
994 self.unknown_fields.clear();
995 }
996}
997
998impl ::std::fmt::Debug for Diagnostic {
999 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1000 ::protobuf::text_format::fmt(self, f)
1001 }
1002}
1003
1004impl ::protobuf::reflect::ProtobufValue for Diagnostic {
1005 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1006 ::protobuf::reflect::ReflectValueRef::Message(self)
1007 }
1008}
1009
1010#[derive(Clone,PartialEq,Eq,Debug,Hash)]
1011pub enum Diagnostic_Kind {
1012 WARNING = 0,
1013 ERROR = 1,
1014}
1015
1016impl ::protobuf::ProtobufEnum for Diagnostic_Kind {
1017 fn value(&self) -> i32 {
1018 *self as i32
1019 }
1020
1021 fn from_i32(value: i32) -> ::std::option::Option<Diagnostic_Kind> {
1022 match value {
1023 0 => ::std::option::Option::Some(Diagnostic_Kind::WARNING),
1024 1 => ::std::option::Option::Some(Diagnostic_Kind::ERROR),
1025 _ => ::std::option::Option::None
1026 }
1027 }
1028
1029 fn values() -> &'static [Self] {
1030 static values: &'static [Diagnostic_Kind] = &[
1031 Diagnostic_Kind::WARNING,
1032 Diagnostic_Kind::ERROR,
1033 ];
1034 values
1035 }
1036
1037 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
1038 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
1039 descriptor.get(|| {
1040 ::protobuf::reflect::EnumDescriptor::new_pb_name::<Diagnostic_Kind>("Diagnostic.Kind", file_descriptor_proto())
1041 })
1042 }
1043}
1044
1045impl ::std::marker::Copy for Diagnostic_Kind {
1046}
1047
1048impl ::std::default::Default for Diagnostic_Kind {
1049 fn default() -> Self {
1050 Diagnostic_Kind::WARNING
1051 }
1052}
1053
1054impl ::protobuf::reflect::ProtobufValue for Diagnostic_Kind {
1055 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1056 ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
1057 }
1058}
1059
1060#[derive(PartialEq,Clone,Default)]
1061pub struct ConfigSource {
1062 pub id: ::std::string::String,
1064 pub files: ::protobuf::RepeatedField<ConfigFile>,
1065 pub unknown_fields: ::protobuf::UnknownFields,
1067 pub cached_size: ::protobuf::CachedSize,
1068}
1069
1070impl<'a> ::std::default::Default for &'a ConfigSource {
1071 fn default() -> &'a ConfigSource {
1072 <ConfigSource as ::protobuf::Message>::default_instance()
1073 }
1074}
1075
1076impl ConfigSource {
1077 pub fn new() -> ConfigSource {
1078 ::std::default::Default::default()
1079 }
1080
1081 pub fn get_id(&self) -> &str {
1085 &self.id
1086 }
1087 pub fn clear_id(&mut self) {
1088 self.id.clear();
1089 }
1090
1091 pub fn set_id(&mut self, v: ::std::string::String) {
1093 self.id = v;
1094 }
1095
1096 pub fn mut_id(&mut self) -> &mut ::std::string::String {
1099 &mut self.id
1100 }
1101
1102 pub fn take_id(&mut self) -> ::std::string::String {
1104 ::std::mem::replace(&mut self.id, ::std::string::String::new())
1105 }
1106
1107 pub fn get_files(&self) -> &[ConfigFile] {
1111 &self.files
1112 }
1113 pub fn clear_files(&mut self) {
1114 self.files.clear();
1115 }
1116
1117 pub fn set_files(&mut self, v: ::protobuf::RepeatedField<ConfigFile>) {
1119 self.files = v;
1120 }
1121
1122 pub fn mut_files(&mut self) -> &mut ::protobuf::RepeatedField<ConfigFile> {
1124 &mut self.files
1125 }
1126
1127 pub fn take_files(&mut self) -> ::protobuf::RepeatedField<ConfigFile> {
1129 ::std::mem::replace(&mut self.files, ::protobuf::RepeatedField::new())
1130 }
1131}
1132
1133impl ::protobuf::Message for ConfigSource {
1134 fn is_initialized(&self) -> bool {
1135 for v in &self.files {
1136 if !v.is_initialized() {
1137 return false;
1138 }
1139 };
1140 true
1141 }
1142
1143 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1144 while !is.eof()? {
1145 let (field_number, wire_type) = is.read_tag_unpack()?;
1146 match field_number {
1147 5 => {
1148 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.id)?;
1149 },
1150 2 => {
1151 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.files)?;
1152 },
1153 _ => {
1154 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1155 },
1156 };
1157 }
1158 ::std::result::Result::Ok(())
1159 }
1160
1161 #[allow(unused_variables)]
1163 fn compute_size(&self) -> u32 {
1164 let mut my_size = 0;
1165 if !self.id.is_empty() {
1166 my_size += ::protobuf::rt::string_size(5, &self.id);
1167 }
1168 for value in &self.files {
1169 let len = value.compute_size();
1170 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1171 };
1172 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1173 self.cached_size.set(my_size);
1174 my_size
1175 }
1176
1177 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1178 if !self.id.is_empty() {
1179 os.write_string(5, &self.id)?;
1180 }
1181 for v in &self.files {
1182 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1183 os.write_raw_varint32(v.get_cached_size())?;
1184 v.write_to_with_cached_sizes(os)?;
1185 };
1186 os.write_unknown_fields(self.get_unknown_fields())?;
1187 ::std::result::Result::Ok(())
1188 }
1189
1190 fn get_cached_size(&self) -> u32 {
1191 self.cached_size.get()
1192 }
1193
1194 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1195 &self.unknown_fields
1196 }
1197
1198 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1199 &mut self.unknown_fields
1200 }
1201
1202 fn as_any(&self) -> &dyn (::std::any::Any) {
1203 self as &dyn (::std::any::Any)
1204 }
1205 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1206 self as &mut dyn (::std::any::Any)
1207 }
1208 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1209 self
1210 }
1211
1212 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1213 Self::descriptor_static()
1214 }
1215
1216 fn new() -> ConfigSource {
1217 ConfigSource::new()
1218 }
1219
1220 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1221 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1222 descriptor.get(|| {
1223 let mut fields = ::std::vec::Vec::new();
1224 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1225 "id",
1226 |m: &ConfigSource| { &m.id },
1227 |m: &mut ConfigSource| { &mut m.id },
1228 ));
1229 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<ConfigFile>>(
1230 "files",
1231 |m: &ConfigSource| { &m.files },
1232 |m: &mut ConfigSource| { &mut m.files },
1233 ));
1234 ::protobuf::reflect::MessageDescriptor::new_pb_name::<ConfigSource>(
1235 "ConfigSource",
1236 fields,
1237 file_descriptor_proto()
1238 )
1239 })
1240 }
1241
1242 fn default_instance() -> &'static ConfigSource {
1243 static instance: ::protobuf::rt::LazyV2<ConfigSource> = ::protobuf::rt::LazyV2::INIT;
1244 instance.get(ConfigSource::new)
1245 }
1246}
1247
1248impl ::protobuf::Clear for ConfigSource {
1249 fn clear(&mut self) {
1250 self.id.clear();
1251 self.files.clear();
1252 self.unknown_fields.clear();
1253 }
1254}
1255
1256impl ::std::fmt::Debug for ConfigSource {
1257 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1258 ::protobuf::text_format::fmt(self, f)
1259 }
1260}
1261
1262impl ::protobuf::reflect::ProtobufValue for ConfigSource {
1263 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1264 ::protobuf::reflect::ReflectValueRef::Message(self)
1265 }
1266}
1267
1268#[derive(PartialEq,Clone,Default)]
1269pub struct ConfigFile {
1270 pub file_path: ::std::string::String,
1272 pub file_contents: ::std::vec::Vec<u8>,
1273 pub file_type: ConfigFile_FileType,
1274 pub unknown_fields: ::protobuf::UnknownFields,
1276 pub cached_size: ::protobuf::CachedSize,
1277}
1278
1279impl<'a> ::std::default::Default for &'a ConfigFile {
1280 fn default() -> &'a ConfigFile {
1281 <ConfigFile as ::protobuf::Message>::default_instance()
1282 }
1283}
1284
1285impl ConfigFile {
1286 pub fn new() -> ConfigFile {
1287 ::std::default::Default::default()
1288 }
1289
1290 pub fn get_file_path(&self) -> &str {
1294 &self.file_path
1295 }
1296 pub fn clear_file_path(&mut self) {
1297 self.file_path.clear();
1298 }
1299
1300 pub fn set_file_path(&mut self, v: ::std::string::String) {
1302 self.file_path = v;
1303 }
1304
1305 pub fn mut_file_path(&mut self) -> &mut ::std::string::String {
1308 &mut self.file_path
1309 }
1310
1311 pub fn take_file_path(&mut self) -> ::std::string::String {
1313 ::std::mem::replace(&mut self.file_path, ::std::string::String::new())
1314 }
1315
1316 pub fn get_file_contents(&self) -> &[u8] {
1320 &self.file_contents
1321 }
1322 pub fn clear_file_contents(&mut self) {
1323 self.file_contents.clear();
1324 }
1325
1326 pub fn set_file_contents(&mut self, v: ::std::vec::Vec<u8>) {
1328 self.file_contents = v;
1329 }
1330
1331 pub fn mut_file_contents(&mut self) -> &mut ::std::vec::Vec<u8> {
1334 &mut self.file_contents
1335 }
1336
1337 pub fn take_file_contents(&mut self) -> ::std::vec::Vec<u8> {
1339 ::std::mem::replace(&mut self.file_contents, ::std::vec::Vec::new())
1340 }
1341
1342 pub fn get_file_type(&self) -> ConfigFile_FileType {
1346 self.file_type
1347 }
1348 pub fn clear_file_type(&mut self) {
1349 self.file_type = ConfigFile_FileType::FILE_TYPE_UNSPECIFIED;
1350 }
1351
1352 pub fn set_file_type(&mut self, v: ConfigFile_FileType) {
1354 self.file_type = v;
1355 }
1356}
1357
1358impl ::protobuf::Message for ConfigFile {
1359 fn is_initialized(&self) -> bool {
1360 true
1361 }
1362
1363 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1364 while !is.eof()? {
1365 let (field_number, wire_type) = is.read_tag_unpack()?;
1366 match field_number {
1367 1 => {
1368 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.file_path)?;
1369 },
1370 3 => {
1371 ::protobuf::rt::read_singular_proto3_bytes_into(wire_type, is, &mut self.file_contents)?;
1372 },
1373 4 => {
1374 ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.file_type, 4, &mut self.unknown_fields)?
1375 },
1376 _ => {
1377 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1378 },
1379 };
1380 }
1381 ::std::result::Result::Ok(())
1382 }
1383
1384 #[allow(unused_variables)]
1386 fn compute_size(&self) -> u32 {
1387 let mut my_size = 0;
1388 if !self.file_path.is_empty() {
1389 my_size += ::protobuf::rt::string_size(1, &self.file_path);
1390 }
1391 if !self.file_contents.is_empty() {
1392 my_size += ::protobuf::rt::bytes_size(3, &self.file_contents);
1393 }
1394 if self.file_type != ConfigFile_FileType::FILE_TYPE_UNSPECIFIED {
1395 my_size += ::protobuf::rt::enum_size(4, self.file_type);
1396 }
1397 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1398 self.cached_size.set(my_size);
1399 my_size
1400 }
1401
1402 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1403 if !self.file_path.is_empty() {
1404 os.write_string(1, &self.file_path)?;
1405 }
1406 if !self.file_contents.is_empty() {
1407 os.write_bytes(3, &self.file_contents)?;
1408 }
1409 if self.file_type != ConfigFile_FileType::FILE_TYPE_UNSPECIFIED {
1410 os.write_enum(4, ::protobuf::ProtobufEnum::value(&self.file_type))?;
1411 }
1412 os.write_unknown_fields(self.get_unknown_fields())?;
1413 ::std::result::Result::Ok(())
1414 }
1415
1416 fn get_cached_size(&self) -> u32 {
1417 self.cached_size.get()
1418 }
1419
1420 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1421 &self.unknown_fields
1422 }
1423
1424 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1425 &mut self.unknown_fields
1426 }
1427
1428 fn as_any(&self) -> &dyn (::std::any::Any) {
1429 self as &dyn (::std::any::Any)
1430 }
1431 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1432 self as &mut dyn (::std::any::Any)
1433 }
1434 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1435 self
1436 }
1437
1438 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1439 Self::descriptor_static()
1440 }
1441
1442 fn new() -> ConfigFile {
1443 ConfigFile::new()
1444 }
1445
1446 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1447 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1448 descriptor.get(|| {
1449 let mut fields = ::std::vec::Vec::new();
1450 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1451 "file_path",
1452 |m: &ConfigFile| { &m.file_path },
1453 |m: &mut ConfigFile| { &mut m.file_path },
1454 ));
1455 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
1456 "file_contents",
1457 |m: &ConfigFile| { &m.file_contents },
1458 |m: &mut ConfigFile| { &mut m.file_contents },
1459 ));
1460 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<ConfigFile_FileType>>(
1461 "file_type",
1462 |m: &ConfigFile| { &m.file_type },
1463 |m: &mut ConfigFile| { &mut m.file_type },
1464 ));
1465 ::protobuf::reflect::MessageDescriptor::new_pb_name::<ConfigFile>(
1466 "ConfigFile",
1467 fields,
1468 file_descriptor_proto()
1469 )
1470 })
1471 }
1472
1473 fn default_instance() -> &'static ConfigFile {
1474 static instance: ::protobuf::rt::LazyV2<ConfigFile> = ::protobuf::rt::LazyV2::INIT;
1475 instance.get(ConfigFile::new)
1476 }
1477}
1478
1479impl ::protobuf::Clear for ConfigFile {
1480 fn clear(&mut self) {
1481 self.file_path.clear();
1482 self.file_contents.clear();
1483 self.file_type = ConfigFile_FileType::FILE_TYPE_UNSPECIFIED;
1484 self.unknown_fields.clear();
1485 }
1486}
1487
1488impl ::std::fmt::Debug for ConfigFile {
1489 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1490 ::protobuf::text_format::fmt(self, f)
1491 }
1492}
1493
1494impl ::protobuf::reflect::ProtobufValue for ConfigFile {
1495 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1496 ::protobuf::reflect::ReflectValueRef::Message(self)
1497 }
1498}
1499
1500#[derive(Clone,PartialEq,Eq,Debug,Hash)]
1501pub enum ConfigFile_FileType {
1502 FILE_TYPE_UNSPECIFIED = 0,
1503 SERVICE_CONFIG_YAML = 1,
1504 OPEN_API_JSON = 2,
1505 OPEN_API_YAML = 3,
1506 FILE_DESCRIPTOR_SET_PROTO = 4,
1507 PROTO_FILE = 6,
1508}
1509
1510impl ::protobuf::ProtobufEnum for ConfigFile_FileType {
1511 fn value(&self) -> i32 {
1512 *self as i32
1513 }
1514
1515 fn from_i32(value: i32) -> ::std::option::Option<ConfigFile_FileType> {
1516 match value {
1517 0 => ::std::option::Option::Some(ConfigFile_FileType::FILE_TYPE_UNSPECIFIED),
1518 1 => ::std::option::Option::Some(ConfigFile_FileType::SERVICE_CONFIG_YAML),
1519 2 => ::std::option::Option::Some(ConfigFile_FileType::OPEN_API_JSON),
1520 3 => ::std::option::Option::Some(ConfigFile_FileType::OPEN_API_YAML),
1521 4 => ::std::option::Option::Some(ConfigFile_FileType::FILE_DESCRIPTOR_SET_PROTO),
1522 6 => ::std::option::Option::Some(ConfigFile_FileType::PROTO_FILE),
1523 _ => ::std::option::Option::None
1524 }
1525 }
1526
1527 fn values() -> &'static [Self] {
1528 static values: &'static [ConfigFile_FileType] = &[
1529 ConfigFile_FileType::FILE_TYPE_UNSPECIFIED,
1530 ConfigFile_FileType::SERVICE_CONFIG_YAML,
1531 ConfigFile_FileType::OPEN_API_JSON,
1532 ConfigFile_FileType::OPEN_API_YAML,
1533 ConfigFile_FileType::FILE_DESCRIPTOR_SET_PROTO,
1534 ConfigFile_FileType::PROTO_FILE,
1535 ];
1536 values
1537 }
1538
1539 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
1540 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
1541 descriptor.get(|| {
1542 ::protobuf::reflect::EnumDescriptor::new_pb_name::<ConfigFile_FileType>("ConfigFile.FileType", file_descriptor_proto())
1543 })
1544 }
1545}
1546
1547impl ::std::marker::Copy for ConfigFile_FileType {
1548}
1549
1550impl ::std::default::Default for ConfigFile_FileType {
1551 fn default() -> Self {
1552 ConfigFile_FileType::FILE_TYPE_UNSPECIFIED
1553 }
1554}
1555
1556impl ::protobuf::reflect::ProtobufValue for ConfigFile_FileType {
1557 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1558 ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
1559 }
1560}
1561
1562#[derive(PartialEq,Clone,Default)]
1563pub struct ConfigRef {
1564 pub name: ::std::string::String,
1566 pub unknown_fields: ::protobuf::UnknownFields,
1568 pub cached_size: ::protobuf::CachedSize,
1569}
1570
1571impl<'a> ::std::default::Default for &'a ConfigRef {
1572 fn default() -> &'a ConfigRef {
1573 <ConfigRef as ::protobuf::Message>::default_instance()
1574 }
1575}
1576
1577impl ConfigRef {
1578 pub fn new() -> ConfigRef {
1579 ::std::default::Default::default()
1580 }
1581
1582 pub fn get_name(&self) -> &str {
1586 &self.name
1587 }
1588 pub fn clear_name(&mut self) {
1589 self.name.clear();
1590 }
1591
1592 pub fn set_name(&mut self, v: ::std::string::String) {
1594 self.name = v;
1595 }
1596
1597 pub fn mut_name(&mut self) -> &mut ::std::string::String {
1600 &mut self.name
1601 }
1602
1603 pub fn take_name(&mut self) -> ::std::string::String {
1605 ::std::mem::replace(&mut self.name, ::std::string::String::new())
1606 }
1607}
1608
1609impl ::protobuf::Message for ConfigRef {
1610 fn is_initialized(&self) -> bool {
1611 true
1612 }
1613
1614 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1615 while !is.eof()? {
1616 let (field_number, wire_type) = is.read_tag_unpack()?;
1617 match field_number {
1618 1 => {
1619 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
1620 },
1621 _ => {
1622 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1623 },
1624 };
1625 }
1626 ::std::result::Result::Ok(())
1627 }
1628
1629 #[allow(unused_variables)]
1631 fn compute_size(&self) -> u32 {
1632 let mut my_size = 0;
1633 if !self.name.is_empty() {
1634 my_size += ::protobuf::rt::string_size(1, &self.name);
1635 }
1636 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1637 self.cached_size.set(my_size);
1638 my_size
1639 }
1640
1641 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1642 if !self.name.is_empty() {
1643 os.write_string(1, &self.name)?;
1644 }
1645 os.write_unknown_fields(self.get_unknown_fields())?;
1646 ::std::result::Result::Ok(())
1647 }
1648
1649 fn get_cached_size(&self) -> u32 {
1650 self.cached_size.get()
1651 }
1652
1653 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1654 &self.unknown_fields
1655 }
1656
1657 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1658 &mut self.unknown_fields
1659 }
1660
1661 fn as_any(&self) -> &dyn (::std::any::Any) {
1662 self as &dyn (::std::any::Any)
1663 }
1664 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1665 self as &mut dyn (::std::any::Any)
1666 }
1667 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1668 self
1669 }
1670
1671 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1672 Self::descriptor_static()
1673 }
1674
1675 fn new() -> ConfigRef {
1676 ConfigRef::new()
1677 }
1678
1679 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1680 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1681 descriptor.get(|| {
1682 let mut fields = ::std::vec::Vec::new();
1683 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1684 "name",
1685 |m: &ConfigRef| { &m.name },
1686 |m: &mut ConfigRef| { &mut m.name },
1687 ));
1688 ::protobuf::reflect::MessageDescriptor::new_pb_name::<ConfigRef>(
1689 "ConfigRef",
1690 fields,
1691 file_descriptor_proto()
1692 )
1693 })
1694 }
1695
1696 fn default_instance() -> &'static ConfigRef {
1697 static instance: ::protobuf::rt::LazyV2<ConfigRef> = ::protobuf::rt::LazyV2::INIT;
1698 instance.get(ConfigRef::new)
1699 }
1700}
1701
1702impl ::protobuf::Clear for ConfigRef {
1703 fn clear(&mut self) {
1704 self.name.clear();
1705 self.unknown_fields.clear();
1706 }
1707}
1708
1709impl ::std::fmt::Debug for ConfigRef {
1710 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1711 ::protobuf::text_format::fmt(self, f)
1712 }
1713}
1714
1715impl ::protobuf::reflect::ProtobufValue for ConfigRef {
1716 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1717 ::protobuf::reflect::ReflectValueRef::Message(self)
1718 }
1719}
1720
1721#[derive(PartialEq,Clone,Default)]
1722pub struct ChangeReport {
1723 pub config_changes: ::protobuf::RepeatedField<super::config_change::ConfigChange>,
1725 pub unknown_fields: ::protobuf::UnknownFields,
1727 pub cached_size: ::protobuf::CachedSize,
1728}
1729
1730impl<'a> ::std::default::Default for &'a ChangeReport {
1731 fn default() -> &'a ChangeReport {
1732 <ChangeReport as ::protobuf::Message>::default_instance()
1733 }
1734}
1735
1736impl ChangeReport {
1737 pub fn new() -> ChangeReport {
1738 ::std::default::Default::default()
1739 }
1740
1741 pub fn get_config_changes(&self) -> &[super::config_change::ConfigChange] {
1745 &self.config_changes
1746 }
1747 pub fn clear_config_changes(&mut self) {
1748 self.config_changes.clear();
1749 }
1750
1751 pub fn set_config_changes(&mut self, v: ::protobuf::RepeatedField<super::config_change::ConfigChange>) {
1753 self.config_changes = v;
1754 }
1755
1756 pub fn mut_config_changes(&mut self) -> &mut ::protobuf::RepeatedField<super::config_change::ConfigChange> {
1758 &mut self.config_changes
1759 }
1760
1761 pub fn take_config_changes(&mut self) -> ::protobuf::RepeatedField<super::config_change::ConfigChange> {
1763 ::std::mem::replace(&mut self.config_changes, ::protobuf::RepeatedField::new())
1764 }
1765}
1766
1767impl ::protobuf::Message for ChangeReport {
1768 fn is_initialized(&self) -> bool {
1769 for v in &self.config_changes {
1770 if !v.is_initialized() {
1771 return false;
1772 }
1773 };
1774 true
1775 }
1776
1777 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1778 while !is.eof()? {
1779 let (field_number, wire_type) = is.read_tag_unpack()?;
1780 match field_number {
1781 1 => {
1782 ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.config_changes)?;
1783 },
1784 _ => {
1785 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1786 },
1787 };
1788 }
1789 ::std::result::Result::Ok(())
1790 }
1791
1792 #[allow(unused_variables)]
1794 fn compute_size(&self) -> u32 {
1795 let mut my_size = 0;
1796 for value in &self.config_changes {
1797 let len = value.compute_size();
1798 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1799 };
1800 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1801 self.cached_size.set(my_size);
1802 my_size
1803 }
1804
1805 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1806 for v in &self.config_changes {
1807 os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1808 os.write_raw_varint32(v.get_cached_size())?;
1809 v.write_to_with_cached_sizes(os)?;
1810 };
1811 os.write_unknown_fields(self.get_unknown_fields())?;
1812 ::std::result::Result::Ok(())
1813 }
1814
1815 fn get_cached_size(&self) -> u32 {
1816 self.cached_size.get()
1817 }
1818
1819 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1820 &self.unknown_fields
1821 }
1822
1823 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1824 &mut self.unknown_fields
1825 }
1826
1827 fn as_any(&self) -> &dyn (::std::any::Any) {
1828 self as &dyn (::std::any::Any)
1829 }
1830 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1831 self as &mut dyn (::std::any::Any)
1832 }
1833 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1834 self
1835 }
1836
1837 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1838 Self::descriptor_static()
1839 }
1840
1841 fn new() -> ChangeReport {
1842 ChangeReport::new()
1843 }
1844
1845 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1846 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1847 descriptor.get(|| {
1848 let mut fields = ::std::vec::Vec::new();
1849 fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<super::config_change::ConfigChange>>(
1850 "config_changes",
1851 |m: &ChangeReport| { &m.config_changes },
1852 |m: &mut ChangeReport| { &mut m.config_changes },
1853 ));
1854 ::protobuf::reflect::MessageDescriptor::new_pb_name::<ChangeReport>(
1855 "ChangeReport",
1856 fields,
1857 file_descriptor_proto()
1858 )
1859 })
1860 }
1861
1862 fn default_instance() -> &'static ChangeReport {
1863 static instance: ::protobuf::rt::LazyV2<ChangeReport> = ::protobuf::rt::LazyV2::INIT;
1864 instance.get(ChangeReport::new)
1865 }
1866}
1867
1868impl ::protobuf::Clear for ChangeReport {
1869 fn clear(&mut self) {
1870 self.config_changes.clear();
1871 self.unknown_fields.clear();
1872 }
1873}
1874
1875impl ::std::fmt::Debug for ChangeReport {
1876 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1877 ::protobuf::text_format::fmt(self, f)
1878 }
1879}
1880
1881impl ::protobuf::reflect::ProtobufValue for ChangeReport {
1882 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1883 ::protobuf::reflect::ReflectValueRef::Message(self)
1884 }
1885}
1886
1887#[derive(PartialEq,Clone,Default)]
1888pub struct Rollout {
1889 pub rollout_id: ::std::string::String,
1891 pub create_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
1892 pub created_by: ::std::string::String,
1893 pub status: Rollout_RolloutStatus,
1894 pub service_name: ::std::string::String,
1895 pub strategy: ::std::option::Option<Rollout_oneof_strategy>,
1897 pub unknown_fields: ::protobuf::UnknownFields,
1899 pub cached_size: ::protobuf::CachedSize,
1900}
1901
1902impl<'a> ::std::default::Default for &'a Rollout {
1903 fn default() -> &'a Rollout {
1904 <Rollout as ::protobuf::Message>::default_instance()
1905 }
1906}
1907
1908#[derive(Clone,PartialEq,Debug)]
1909pub enum Rollout_oneof_strategy {
1910 traffic_percent_strategy(Rollout_TrafficPercentStrategy),
1911 delete_service_strategy(Rollout_DeleteServiceStrategy),
1912}
1913
1914impl Rollout {
1915 pub fn new() -> Rollout {
1916 ::std::default::Default::default()
1917 }
1918
1919 pub fn get_rollout_id(&self) -> &str {
1923 &self.rollout_id
1924 }
1925 pub fn clear_rollout_id(&mut self) {
1926 self.rollout_id.clear();
1927 }
1928
1929 pub fn set_rollout_id(&mut self, v: ::std::string::String) {
1931 self.rollout_id = v;
1932 }
1933
1934 pub fn mut_rollout_id(&mut self) -> &mut ::std::string::String {
1937 &mut self.rollout_id
1938 }
1939
1940 pub fn take_rollout_id(&mut self) -> ::std::string::String {
1942 ::std::mem::replace(&mut self.rollout_id, ::std::string::String::new())
1943 }
1944
1945 pub fn get_create_time(&self) -> &::protobuf::well_known_types::Timestamp {
1949 self.create_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
1950 }
1951 pub fn clear_create_time(&mut self) {
1952 self.create_time.clear();
1953 }
1954
1955 pub fn has_create_time(&self) -> bool {
1956 self.create_time.is_some()
1957 }
1958
1959 pub fn set_create_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
1961 self.create_time = ::protobuf::SingularPtrField::some(v);
1962 }
1963
1964 pub fn mut_create_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
1967 if self.create_time.is_none() {
1968 self.create_time.set_default();
1969 }
1970 self.create_time.as_mut().unwrap()
1971 }
1972
1973 pub fn take_create_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
1975 self.create_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
1976 }
1977
1978 pub fn get_created_by(&self) -> &str {
1982 &self.created_by
1983 }
1984 pub fn clear_created_by(&mut self) {
1985 self.created_by.clear();
1986 }
1987
1988 pub fn set_created_by(&mut self, v: ::std::string::String) {
1990 self.created_by = v;
1991 }
1992
1993 pub fn mut_created_by(&mut self) -> &mut ::std::string::String {
1996 &mut self.created_by
1997 }
1998
1999 pub fn take_created_by(&mut self) -> ::std::string::String {
2001 ::std::mem::replace(&mut self.created_by, ::std::string::String::new())
2002 }
2003
2004 pub fn get_status(&self) -> Rollout_RolloutStatus {
2008 self.status
2009 }
2010 pub fn clear_status(&mut self) {
2011 self.status = Rollout_RolloutStatus::ROLLOUT_STATUS_UNSPECIFIED;
2012 }
2013
2014 pub fn set_status(&mut self, v: Rollout_RolloutStatus) {
2016 self.status = v;
2017 }
2018
2019 pub fn get_traffic_percent_strategy(&self) -> &Rollout_TrafficPercentStrategy {
2023 match self.strategy {
2024 ::std::option::Option::Some(Rollout_oneof_strategy::traffic_percent_strategy(ref v)) => v,
2025 _ => <Rollout_TrafficPercentStrategy as ::protobuf::Message>::default_instance(),
2026 }
2027 }
2028 pub fn clear_traffic_percent_strategy(&mut self) {
2029 self.strategy = ::std::option::Option::None;
2030 }
2031
2032 pub fn has_traffic_percent_strategy(&self) -> bool {
2033 match self.strategy {
2034 ::std::option::Option::Some(Rollout_oneof_strategy::traffic_percent_strategy(..)) => true,
2035 _ => false,
2036 }
2037 }
2038
2039 pub fn set_traffic_percent_strategy(&mut self, v: Rollout_TrafficPercentStrategy) {
2041 self.strategy = ::std::option::Option::Some(Rollout_oneof_strategy::traffic_percent_strategy(v))
2042 }
2043
2044 pub fn mut_traffic_percent_strategy(&mut self) -> &mut Rollout_TrafficPercentStrategy {
2046 if let ::std::option::Option::Some(Rollout_oneof_strategy::traffic_percent_strategy(_)) = self.strategy {
2047 } else {
2048 self.strategy = ::std::option::Option::Some(Rollout_oneof_strategy::traffic_percent_strategy(Rollout_TrafficPercentStrategy::new()));
2049 }
2050 match self.strategy {
2051 ::std::option::Option::Some(Rollout_oneof_strategy::traffic_percent_strategy(ref mut v)) => v,
2052 _ => panic!(),
2053 }
2054 }
2055
2056 pub fn take_traffic_percent_strategy(&mut self) -> Rollout_TrafficPercentStrategy {
2058 if self.has_traffic_percent_strategy() {
2059 match self.strategy.take() {
2060 ::std::option::Option::Some(Rollout_oneof_strategy::traffic_percent_strategy(v)) => v,
2061 _ => panic!(),
2062 }
2063 } else {
2064 Rollout_TrafficPercentStrategy::new()
2065 }
2066 }
2067
2068 pub fn get_delete_service_strategy(&self) -> &Rollout_DeleteServiceStrategy {
2072 match self.strategy {
2073 ::std::option::Option::Some(Rollout_oneof_strategy::delete_service_strategy(ref v)) => v,
2074 _ => <Rollout_DeleteServiceStrategy as ::protobuf::Message>::default_instance(),
2075 }
2076 }
2077 pub fn clear_delete_service_strategy(&mut self) {
2078 self.strategy = ::std::option::Option::None;
2079 }
2080
2081 pub fn has_delete_service_strategy(&self) -> bool {
2082 match self.strategy {
2083 ::std::option::Option::Some(Rollout_oneof_strategy::delete_service_strategy(..)) => true,
2084 _ => false,
2085 }
2086 }
2087
2088 pub fn set_delete_service_strategy(&mut self, v: Rollout_DeleteServiceStrategy) {
2090 self.strategy = ::std::option::Option::Some(Rollout_oneof_strategy::delete_service_strategy(v))
2091 }
2092
2093 pub fn mut_delete_service_strategy(&mut self) -> &mut Rollout_DeleteServiceStrategy {
2095 if let ::std::option::Option::Some(Rollout_oneof_strategy::delete_service_strategy(_)) = self.strategy {
2096 } else {
2097 self.strategy = ::std::option::Option::Some(Rollout_oneof_strategy::delete_service_strategy(Rollout_DeleteServiceStrategy::new()));
2098 }
2099 match self.strategy {
2100 ::std::option::Option::Some(Rollout_oneof_strategy::delete_service_strategy(ref mut v)) => v,
2101 _ => panic!(),
2102 }
2103 }
2104
2105 pub fn take_delete_service_strategy(&mut self) -> Rollout_DeleteServiceStrategy {
2107 if self.has_delete_service_strategy() {
2108 match self.strategy.take() {
2109 ::std::option::Option::Some(Rollout_oneof_strategy::delete_service_strategy(v)) => v,
2110 _ => panic!(),
2111 }
2112 } else {
2113 Rollout_DeleteServiceStrategy::new()
2114 }
2115 }
2116
2117 pub fn get_service_name(&self) -> &str {
2121 &self.service_name
2122 }
2123 pub fn clear_service_name(&mut self) {
2124 self.service_name.clear();
2125 }
2126
2127 pub fn set_service_name(&mut self, v: ::std::string::String) {
2129 self.service_name = v;
2130 }
2131
2132 pub fn mut_service_name(&mut self) -> &mut ::std::string::String {
2135 &mut self.service_name
2136 }
2137
2138 pub fn take_service_name(&mut self) -> ::std::string::String {
2140 ::std::mem::replace(&mut self.service_name, ::std::string::String::new())
2141 }
2142}
2143
2144impl ::protobuf::Message for Rollout {
2145 fn is_initialized(&self) -> bool {
2146 for v in &self.create_time {
2147 if !v.is_initialized() {
2148 return false;
2149 }
2150 };
2151 if let Some(Rollout_oneof_strategy::traffic_percent_strategy(ref v)) = self.strategy {
2152 if !v.is_initialized() {
2153 return false;
2154 }
2155 }
2156 if let Some(Rollout_oneof_strategy::delete_service_strategy(ref v)) = self.strategy {
2157 if !v.is_initialized() {
2158 return false;
2159 }
2160 }
2161 true
2162 }
2163
2164 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2165 while !is.eof()? {
2166 let (field_number, wire_type) = is.read_tag_unpack()?;
2167 match field_number {
2168 1 => {
2169 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.rollout_id)?;
2170 },
2171 2 => {
2172 ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.create_time)?;
2173 },
2174 3 => {
2175 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.created_by)?;
2176 },
2177 4 => {
2178 ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.status, 4, &mut self.unknown_fields)?
2179 },
2180 5 => {
2181 if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2182 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2183 }
2184 self.strategy = ::std::option::Option::Some(Rollout_oneof_strategy::traffic_percent_strategy(is.read_message()?));
2185 },
2186 200 => {
2187 if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2188 return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2189 }
2190 self.strategy = ::std::option::Option::Some(Rollout_oneof_strategy::delete_service_strategy(is.read_message()?));
2191 },
2192 8 => {
2193 ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_name)?;
2194 },
2195 _ => {
2196 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2197 },
2198 };
2199 }
2200 ::std::result::Result::Ok(())
2201 }
2202
2203 #[allow(unused_variables)]
2205 fn compute_size(&self) -> u32 {
2206 let mut my_size = 0;
2207 if !self.rollout_id.is_empty() {
2208 my_size += ::protobuf::rt::string_size(1, &self.rollout_id);
2209 }
2210 if let Some(ref v) = self.create_time.as_ref() {
2211 let len = v.compute_size();
2212 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2213 }
2214 if !self.created_by.is_empty() {
2215 my_size += ::protobuf::rt::string_size(3, &self.created_by);
2216 }
2217 if self.status != Rollout_RolloutStatus::ROLLOUT_STATUS_UNSPECIFIED {
2218 my_size += ::protobuf::rt::enum_size(4, self.status);
2219 }
2220 if !self.service_name.is_empty() {
2221 my_size += ::protobuf::rt::string_size(8, &self.service_name);
2222 }
2223 if let ::std::option::Option::Some(ref v) = self.strategy {
2224 match v {
2225 &Rollout_oneof_strategy::traffic_percent_strategy(ref v) => {
2226 let len = v.compute_size();
2227 my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2228 },
2229 &Rollout_oneof_strategy::delete_service_strategy(ref v) => {
2230 let len = v.compute_size();
2231 my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2232 },
2233 };
2234 }
2235 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2236 self.cached_size.set(my_size);
2237 my_size
2238 }
2239
2240 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2241 if !self.rollout_id.is_empty() {
2242 os.write_string(1, &self.rollout_id)?;
2243 }
2244 if let Some(ref v) = self.create_time.as_ref() {
2245 os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2246 os.write_raw_varint32(v.get_cached_size())?;
2247 v.write_to_with_cached_sizes(os)?;
2248 }
2249 if !self.created_by.is_empty() {
2250 os.write_string(3, &self.created_by)?;
2251 }
2252 if self.status != Rollout_RolloutStatus::ROLLOUT_STATUS_UNSPECIFIED {
2253 os.write_enum(4, ::protobuf::ProtobufEnum::value(&self.status))?;
2254 }
2255 if !self.service_name.is_empty() {
2256 os.write_string(8, &self.service_name)?;
2257 }
2258 if let ::std::option::Option::Some(ref v) = self.strategy {
2259 match v {
2260 &Rollout_oneof_strategy::traffic_percent_strategy(ref v) => {
2261 os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2262 os.write_raw_varint32(v.get_cached_size())?;
2263 v.write_to_with_cached_sizes(os)?;
2264 },
2265 &Rollout_oneof_strategy::delete_service_strategy(ref v) => {
2266 os.write_tag(200, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2267 os.write_raw_varint32(v.get_cached_size())?;
2268 v.write_to_with_cached_sizes(os)?;
2269 },
2270 };
2271 }
2272 os.write_unknown_fields(self.get_unknown_fields())?;
2273 ::std::result::Result::Ok(())
2274 }
2275
2276 fn get_cached_size(&self) -> u32 {
2277 self.cached_size.get()
2278 }
2279
2280 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2281 &self.unknown_fields
2282 }
2283
2284 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2285 &mut self.unknown_fields
2286 }
2287
2288 fn as_any(&self) -> &dyn (::std::any::Any) {
2289 self as &dyn (::std::any::Any)
2290 }
2291 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2292 self as &mut dyn (::std::any::Any)
2293 }
2294 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2295 self
2296 }
2297
2298 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2299 Self::descriptor_static()
2300 }
2301
2302 fn new() -> Rollout {
2303 Rollout::new()
2304 }
2305
2306 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2307 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
2308 descriptor.get(|| {
2309 let mut fields = ::std::vec::Vec::new();
2310 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2311 "rollout_id",
2312 |m: &Rollout| { &m.rollout_id },
2313 |m: &mut Rollout| { &mut m.rollout_id },
2314 ));
2315 fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
2316 "create_time",
2317 |m: &Rollout| { &m.create_time },
2318 |m: &mut Rollout| { &mut m.create_time },
2319 ));
2320 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2321 "created_by",
2322 |m: &Rollout| { &m.created_by },
2323 |m: &mut Rollout| { &mut m.created_by },
2324 ));
2325 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Rollout_RolloutStatus>>(
2326 "status",
2327 |m: &Rollout| { &m.status },
2328 |m: &mut Rollout| { &mut m.status },
2329 ));
2330 fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, Rollout_TrafficPercentStrategy>(
2331 "traffic_percent_strategy",
2332 Rollout::has_traffic_percent_strategy,
2333 Rollout::get_traffic_percent_strategy,
2334 ));
2335 fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, Rollout_DeleteServiceStrategy>(
2336 "delete_service_strategy",
2337 Rollout::has_delete_service_strategy,
2338 Rollout::get_delete_service_strategy,
2339 ));
2340 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2341 "service_name",
2342 |m: &Rollout| { &m.service_name },
2343 |m: &mut Rollout| { &mut m.service_name },
2344 ));
2345 ::protobuf::reflect::MessageDescriptor::new_pb_name::<Rollout>(
2346 "Rollout",
2347 fields,
2348 file_descriptor_proto()
2349 )
2350 })
2351 }
2352
2353 fn default_instance() -> &'static Rollout {
2354 static instance: ::protobuf::rt::LazyV2<Rollout> = ::protobuf::rt::LazyV2::INIT;
2355 instance.get(Rollout::new)
2356 }
2357}
2358
2359impl ::protobuf::Clear for Rollout {
2360 fn clear(&mut self) {
2361 self.rollout_id.clear();
2362 self.create_time.clear();
2363 self.created_by.clear();
2364 self.status = Rollout_RolloutStatus::ROLLOUT_STATUS_UNSPECIFIED;
2365 self.strategy = ::std::option::Option::None;
2366 self.strategy = ::std::option::Option::None;
2367 self.service_name.clear();
2368 self.unknown_fields.clear();
2369 }
2370}
2371
2372impl ::std::fmt::Debug for Rollout {
2373 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2374 ::protobuf::text_format::fmt(self, f)
2375 }
2376}
2377
2378impl ::protobuf::reflect::ProtobufValue for Rollout {
2379 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2380 ::protobuf::reflect::ReflectValueRef::Message(self)
2381 }
2382}
2383
2384#[derive(PartialEq,Clone,Default)]
2385pub struct Rollout_TrafficPercentStrategy {
2386 pub percentages: ::std::collections::HashMap<::std::string::String, f64>,
2388 pub unknown_fields: ::protobuf::UnknownFields,
2390 pub cached_size: ::protobuf::CachedSize,
2391}
2392
2393impl<'a> ::std::default::Default for &'a Rollout_TrafficPercentStrategy {
2394 fn default() -> &'a Rollout_TrafficPercentStrategy {
2395 <Rollout_TrafficPercentStrategy as ::protobuf::Message>::default_instance()
2396 }
2397}
2398
2399impl Rollout_TrafficPercentStrategy {
2400 pub fn new() -> Rollout_TrafficPercentStrategy {
2401 ::std::default::Default::default()
2402 }
2403
2404 pub fn get_percentages(&self) -> &::std::collections::HashMap<::std::string::String, f64> {
2408 &self.percentages
2409 }
2410 pub fn clear_percentages(&mut self) {
2411 self.percentages.clear();
2412 }
2413
2414 pub fn set_percentages(&mut self, v: ::std::collections::HashMap<::std::string::String, f64>) {
2416 self.percentages = v;
2417 }
2418
2419 pub fn mut_percentages(&mut self) -> &mut ::std::collections::HashMap<::std::string::String, f64> {
2421 &mut self.percentages
2422 }
2423
2424 pub fn take_percentages(&mut self) -> ::std::collections::HashMap<::std::string::String, f64> {
2426 ::std::mem::replace(&mut self.percentages, ::std::collections::HashMap::new())
2427 }
2428}
2429
2430impl ::protobuf::Message for Rollout_TrafficPercentStrategy {
2431 fn is_initialized(&self) -> bool {
2432 true
2433 }
2434
2435 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2436 while !is.eof()? {
2437 let (field_number, wire_type) = is.read_tag_unpack()?;
2438 match field_number {
2439 1 => {
2440 ::protobuf::rt::read_map_into::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeDouble>(wire_type, is, &mut self.percentages)?;
2441 },
2442 _ => {
2443 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2444 },
2445 };
2446 }
2447 ::std::result::Result::Ok(())
2448 }
2449
2450 #[allow(unused_variables)]
2452 fn compute_size(&self) -> u32 {
2453 let mut my_size = 0;
2454 my_size += ::protobuf::rt::compute_map_size::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeDouble>(1, &self.percentages);
2455 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2456 self.cached_size.set(my_size);
2457 my_size
2458 }
2459
2460 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2461 ::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeDouble>(1, &self.percentages, os)?;
2462 os.write_unknown_fields(self.get_unknown_fields())?;
2463 ::std::result::Result::Ok(())
2464 }
2465
2466 fn get_cached_size(&self) -> u32 {
2467 self.cached_size.get()
2468 }
2469
2470 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2471 &self.unknown_fields
2472 }
2473
2474 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2475 &mut self.unknown_fields
2476 }
2477
2478 fn as_any(&self) -> &dyn (::std::any::Any) {
2479 self as &dyn (::std::any::Any)
2480 }
2481 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2482 self as &mut dyn (::std::any::Any)
2483 }
2484 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2485 self
2486 }
2487
2488 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2489 Self::descriptor_static()
2490 }
2491
2492 fn new() -> Rollout_TrafficPercentStrategy {
2493 Rollout_TrafficPercentStrategy::new()
2494 }
2495
2496 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2497 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
2498 descriptor.get(|| {
2499 let mut fields = ::std::vec::Vec::new();
2500 fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeDouble>(
2501 "percentages",
2502 |m: &Rollout_TrafficPercentStrategy| { &m.percentages },
2503 |m: &mut Rollout_TrafficPercentStrategy| { &mut m.percentages },
2504 ));
2505 ::protobuf::reflect::MessageDescriptor::new_pb_name::<Rollout_TrafficPercentStrategy>(
2506 "Rollout.TrafficPercentStrategy",
2507 fields,
2508 file_descriptor_proto()
2509 )
2510 })
2511 }
2512
2513 fn default_instance() -> &'static Rollout_TrafficPercentStrategy {
2514 static instance: ::protobuf::rt::LazyV2<Rollout_TrafficPercentStrategy> = ::protobuf::rt::LazyV2::INIT;
2515 instance.get(Rollout_TrafficPercentStrategy::new)
2516 }
2517}
2518
2519impl ::protobuf::Clear for Rollout_TrafficPercentStrategy {
2520 fn clear(&mut self) {
2521 self.percentages.clear();
2522 self.unknown_fields.clear();
2523 }
2524}
2525
2526impl ::std::fmt::Debug for Rollout_TrafficPercentStrategy {
2527 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2528 ::protobuf::text_format::fmt(self, f)
2529 }
2530}
2531
2532impl ::protobuf::reflect::ProtobufValue for Rollout_TrafficPercentStrategy {
2533 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2534 ::protobuf::reflect::ReflectValueRef::Message(self)
2535 }
2536}
2537
2538#[derive(PartialEq,Clone,Default)]
2539pub struct Rollout_DeleteServiceStrategy {
2540 pub unknown_fields: ::protobuf::UnknownFields,
2542 pub cached_size: ::protobuf::CachedSize,
2543}
2544
2545impl<'a> ::std::default::Default for &'a Rollout_DeleteServiceStrategy {
2546 fn default() -> &'a Rollout_DeleteServiceStrategy {
2547 <Rollout_DeleteServiceStrategy as ::protobuf::Message>::default_instance()
2548 }
2549}
2550
2551impl Rollout_DeleteServiceStrategy {
2552 pub fn new() -> Rollout_DeleteServiceStrategy {
2553 ::std::default::Default::default()
2554 }
2555}
2556
2557impl ::protobuf::Message for Rollout_DeleteServiceStrategy {
2558 fn is_initialized(&self) -> bool {
2559 true
2560 }
2561
2562 fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2563 while !is.eof()? {
2564 let (field_number, wire_type) = is.read_tag_unpack()?;
2565 match field_number {
2566 _ => {
2567 ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2568 },
2569 };
2570 }
2571 ::std::result::Result::Ok(())
2572 }
2573
2574 #[allow(unused_variables)]
2576 fn compute_size(&self) -> u32 {
2577 let mut my_size = 0;
2578 my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2579 self.cached_size.set(my_size);
2580 my_size
2581 }
2582
2583 fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2584 os.write_unknown_fields(self.get_unknown_fields())?;
2585 ::std::result::Result::Ok(())
2586 }
2587
2588 fn get_cached_size(&self) -> u32 {
2589 self.cached_size.get()
2590 }
2591
2592 fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2593 &self.unknown_fields
2594 }
2595
2596 fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2597 &mut self.unknown_fields
2598 }
2599
2600 fn as_any(&self) -> &dyn (::std::any::Any) {
2601 self as &dyn (::std::any::Any)
2602 }
2603 fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2604 self as &mut dyn (::std::any::Any)
2605 }
2606 fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2607 self
2608 }
2609
2610 fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2611 Self::descriptor_static()
2612 }
2613
2614 fn new() -> Rollout_DeleteServiceStrategy {
2615 Rollout_DeleteServiceStrategy::new()
2616 }
2617
2618 fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2619 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
2620 descriptor.get(|| {
2621 let fields = ::std::vec::Vec::new();
2622 ::protobuf::reflect::MessageDescriptor::new_pb_name::<Rollout_DeleteServiceStrategy>(
2623 "Rollout.DeleteServiceStrategy",
2624 fields,
2625 file_descriptor_proto()
2626 )
2627 })
2628 }
2629
2630 fn default_instance() -> &'static Rollout_DeleteServiceStrategy {
2631 static instance: ::protobuf::rt::LazyV2<Rollout_DeleteServiceStrategy> = ::protobuf::rt::LazyV2::INIT;
2632 instance.get(Rollout_DeleteServiceStrategy::new)
2633 }
2634}
2635
2636impl ::protobuf::Clear for Rollout_DeleteServiceStrategy {
2637 fn clear(&mut self) {
2638 self.unknown_fields.clear();
2639 }
2640}
2641
2642impl ::std::fmt::Debug for Rollout_DeleteServiceStrategy {
2643 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2644 ::protobuf::text_format::fmt(self, f)
2645 }
2646}
2647
2648impl ::protobuf::reflect::ProtobufValue for Rollout_DeleteServiceStrategy {
2649 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2650 ::protobuf::reflect::ReflectValueRef::Message(self)
2651 }
2652}
2653
2654#[derive(Clone,PartialEq,Eq,Debug,Hash)]
2655pub enum Rollout_RolloutStatus {
2656 ROLLOUT_STATUS_UNSPECIFIED = 0,
2657 IN_PROGRESS = 1,
2658 SUCCESS = 2,
2659 CANCELLED = 3,
2660 FAILED = 4,
2661 PENDING = 5,
2662 FAILED_ROLLED_BACK = 6,
2663}
2664
2665impl ::protobuf::ProtobufEnum for Rollout_RolloutStatus {
2666 fn value(&self) -> i32 {
2667 *self as i32
2668 }
2669
2670 fn from_i32(value: i32) -> ::std::option::Option<Rollout_RolloutStatus> {
2671 match value {
2672 0 => ::std::option::Option::Some(Rollout_RolloutStatus::ROLLOUT_STATUS_UNSPECIFIED),
2673 1 => ::std::option::Option::Some(Rollout_RolloutStatus::IN_PROGRESS),
2674 2 => ::std::option::Option::Some(Rollout_RolloutStatus::SUCCESS),
2675 3 => ::std::option::Option::Some(Rollout_RolloutStatus::CANCELLED),
2676 4 => ::std::option::Option::Some(Rollout_RolloutStatus::FAILED),
2677 5 => ::std::option::Option::Some(Rollout_RolloutStatus::PENDING),
2678 6 => ::std::option::Option::Some(Rollout_RolloutStatus::FAILED_ROLLED_BACK),
2679 _ => ::std::option::Option::None
2680 }
2681 }
2682
2683 fn values() -> &'static [Self] {
2684 static values: &'static [Rollout_RolloutStatus] = &[
2685 Rollout_RolloutStatus::ROLLOUT_STATUS_UNSPECIFIED,
2686 Rollout_RolloutStatus::IN_PROGRESS,
2687 Rollout_RolloutStatus::SUCCESS,
2688 Rollout_RolloutStatus::CANCELLED,
2689 Rollout_RolloutStatus::FAILED,
2690 Rollout_RolloutStatus::PENDING,
2691 Rollout_RolloutStatus::FAILED_ROLLED_BACK,
2692 ];
2693 values
2694 }
2695
2696 fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
2697 static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
2698 descriptor.get(|| {
2699 ::protobuf::reflect::EnumDescriptor::new_pb_name::<Rollout_RolloutStatus>("Rollout.RolloutStatus", file_descriptor_proto())
2700 })
2701 }
2702}
2703
2704impl ::std::marker::Copy for Rollout_RolloutStatus {
2705}
2706
2707impl ::std::default::Default for Rollout_RolloutStatus {
2708 fn default() -> Self {
2709 Rollout_RolloutStatus::ROLLOUT_STATUS_UNSPECIFIED
2710 }
2711}
2712
2713impl ::protobuf::reflect::ProtobufValue for Rollout_RolloutStatus {
2714 fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2715 ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
2716 }
2717}
2718
2719static file_descriptor_proto_data: &'static [u8] = b"\
2720 \n/google/api/servicemanagement/v1/resources.proto\x12\x1fgoogle.api.ser\
2721 vicemanagement.v1\x1a\x1egoogle/api/config_change.proto\x1a\x1fgoogle/ap\
2722 i/field_behavior.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"c\n\x0eMa\
2723 nagedService\x12!\n\x0cservice_name\x18\x02\x20\x01(\tR\x0bserviceName\
2724 \x12.\n\x13producer_project_id\x18\x03\x20\x01(\tR\x11producerProjectId\
2725 \"\xdb\x03\n\x11OperationMetadata\x12%\n\x0eresource_names\x18\x01\x20\
2726 \x03(\tR\rresourceNames\x12M\n\x05steps\x18\x02\x20\x03(\x0b27.google.ap\
2727 i.servicemanagement.v1.OperationMetadata.StepR\x05steps\x12/\n\x13progre\
2728 ss_percentage\x18\x03\x20\x01(\x05R\x12progressPercentage\x129\n\nstart_\
2729 time\x18\x04\x20\x01(\x0b2\x1a.google.protobuf.TimestampR\tstartTime\x1a\
2730 {\n\x04Step\x12\x20\n\x0bdescription\x18\x02\x20\x01(\tR\x0bdescription\
2731 \x12Q\n\x06status\x18\x04\x20\x01(\x0e29.google.api.servicemanagement.v1\
2732 .OperationMetadata.StatusR\x06status\"g\n\x06Status\x12\x16\n\x12STATUS_\
2733 UNSPECIFIED\x10\0\x12\x08\n\x04DONE\x10\x01\x12\x0f\n\x0bNOT_STARTED\x10\
2734 \x02\x12\x0f\n\x0bIN_PROGRESS\x10\x03\x12\n\n\x06FAILED\x10\x04\x12\r\n\
2735 \tCANCELLED\x10\x05\"\xa8\x01\n\nDiagnostic\x12\x1a\n\x08location\x18\
2736 \x01\x20\x01(\tR\x08location\x12D\n\x04kind\x18\x02\x20\x01(\x0e20.googl\
2737 e.api.servicemanagement.v1.Diagnostic.KindR\x04kind\x12\x18\n\x07message\
2738 \x18\x03\x20\x01(\tR\x07message\"\x1e\n\x04Kind\x12\x0b\n\x07WARNING\x10\
2739 \0\x12\t\n\x05ERROR\x10\x01\"a\n\x0cConfigSource\x12\x0e\n\x02id\x18\x05\
2740 \x20\x01(\tR\x02id\x12A\n\x05files\x18\x02\x20\x03(\x0b2+.google.api.ser\
2741 vicemanagement.v1.ConfigFileR\x05files\"\xb7\x02\n\nConfigFile\x12\x1b\n\
2742 \tfile_path\x18\x01\x20\x01(\tR\x08filePath\x12#\n\rfile_contents\x18\
2743 \x03\x20\x01(\x0cR\x0cfileContents\x12Q\n\tfile_type\x18\x04\x20\x01(\
2744 \x0e24.google.api.servicemanagement.v1.ConfigFile.FileTypeR\x08fileType\
2745 \"\x93\x01\n\x08FileType\x12\x19\n\x15FILE_TYPE_UNSPECIFIED\x10\0\x12\
2746 \x17\n\x13SERVICE_CONFIG_YAML\x10\x01\x12\x11\n\rOPEN_API_JSON\x10\x02\
2747 \x12\x11\n\rOPEN_API_YAML\x10\x03\x12\x1d\n\x19FILE_DESCRIPTOR_SET_PROTO\
2748 \x10\x04\x12\x0e\n\nPROTO_FILE\x10\x06\"\x1f\n\tConfigRef\x12\x12\n\x04n\
2749 ame\x18\x01\x20\x01(\tR\x04name\"O\n\x0cChangeReport\x12?\n\x0econfig_ch\
2750 anges\x18\x01\x20\x03(\x0b2\x18.google.api.ConfigChangeR\rconfigChanges\
2751 \"\xf8\x06\n\x07Rollout\x12\"\n\nrollout_id\x18\x01\x20\x01(\tR\trollout\
2752 IdB\x03\xe0A\x01\x12;\n\x0bcreate_time\x18\x02\x20\x01(\x0b2\x1a.google.\
2753 protobuf.TimestampR\ncreateTime\x12\x1d\n\ncreated_by\x18\x03\x20\x01(\t\
2754 R\tcreatedBy\x12N\n\x06status\x18\x04\x20\x01(\x0e26.google.api.servicem\
2755 anagement.v1.Rollout.RolloutStatusR\x06status\x12{\n\x18traffic_percent_\
2756 strategy\x18\x05\x20\x01(\x0b2?.google.api.servicemanagement.v1.Rollout.\
2757 TrafficPercentStrategyH\0R\x16trafficPercentStrategy\x12y\n\x17delete_se\
2758 rvice_strategy\x18\xc8\x01\x20\x01(\x0b2>.google.api.servicemanagement.v\
2759 1.Rollout.DeleteServiceStrategyH\0R\x15deleteServiceStrategy\x12!\n\x0cs\
2760 ervice_name\x18\x08\x20\x01(\tR\x0bserviceName\x1a\xcc\x01\n\x16TrafficP\
2761 ercentStrategy\x12r\n\x0bpercentages\x18\x01\x20\x03(\x0b2P.google.api.s\
2762 ervicemanagement.v1.Rollout.TrafficPercentStrategy.PercentagesEntryR\x0b\
2763 percentages\x1a>\n\x10PercentagesEntry\x12\x10\n\x03key\x18\x01\x20\x01(\
2764 \tR\x03key\x12\x14\n\x05value\x18\x02\x20\x01(\x01R\x05value:\x028\x01\
2765 \x1a\x17\n\x15DeleteServiceStrategy\"\x8d\x01\n\rRolloutStatus\x12\x1e\n\
2766 \x1aROLLOUT_STATUS_UNSPECIFIED\x10\0\x12\x0f\n\x0bIN_PROGRESS\x10\x01\
2767 \x12\x0b\n\x07SUCCESS\x10\x02\x12\r\n\tCANCELLED\x10\x03\x12\n\n\x06FAIL\
2768 ED\x10\x04\x12\x0b\n\x07PENDING\x10\x05\x12\x16\n\x12FAILED_ROLLED_BACK\
2769 \x10\x06B\n\n\x08strategyB\x82\x02\n#com.google.api.servicemanagement.v1\
2770 B\x0eResourcesProtoP\x01ZScloud.google.com/go/servicemanagement/apiv1/se\
2771 rvicemanagementpb;servicemanagementpb\xa2\x02\x04GASM\xaa\x02!Google.Clo\
2772 ud.ServiceManagement.V1\xca\x02!Google\\Cloud\\ServiceManagement\\V1\xea\
2773 \x02$Google::Cloud::ServiceManagement::V1J\x86P\n\x07\x12\x05\x0e\0\xa6\
2774 \x02\x01\n\xbc\x04\n\x01\x0c\x12\x03\x0e\0\x122\xb1\x04\x20Copyright\x20\
2775 2023\x20Google\x20LLC\n\n\x20Licensed\x20under\x20the\x20Apache\x20Licen\
2776 se,\x20Version\x202.0\x20(the\x20\"License\");\n\x20you\x20may\x20not\
2777 \x20use\x20this\x20file\x20except\x20in\x20compliance\x20with\x20the\x20\
2778 License.\n\x20You\x20may\x20obtain\x20a\x20copy\x20of\x20the\x20License\
2779 \x20at\n\n\x20\x20\x20\x20\x20http://www.apache.org/licenses/LICENSE-2.0\
2780 \n\n\x20Unless\x20required\x20by\x20applicable\x20law\x20or\x20agreed\
2781 \x20to\x20in\x20writing,\x20software\n\x20distributed\x20under\x20the\
2782 \x20License\x20is\x20distributed\x20on\x20an\x20\"AS\x20IS\"\x20BASIS,\n\
2783 \x20WITHOUT\x20WARRANTIES\x20OR\x20CONDITIONS\x20OF\x20ANY\x20KIND,\x20e\
2784 ither\x20express\x20or\x20implied.\n\x20See\x20the\x20License\x20for\x20\
2785 the\x20specific\x20language\x20governing\x20permissions\x20and\n\x20limi\
2786 tations\x20under\x20the\x20License.\n\n\x08\n\x01\x02\x12\x03\x10\0(\n\t\
2787 \n\x02\x03\0\x12\x03\x12\0(\n\t\n\x02\x03\x01\x12\x03\x13\0)\n\t\n\x02\
2788 \x03\x02\x12\x03\x14\0)\n\x08\n\x01\x08\x12\x03\x16\0>\n\t\n\x02\x08%\
2789 \x12\x03\x16\0>\n\x08\n\x01\x08\x12\x03\x17\0j\n\t\n\x02\x08\x0b\x12\x03\
2790 \x17\0j\n\x08\n\x01\x08\x12\x03\x18\0\"\n\t\n\x02\x08\n\x12\x03\x18\0\"\
2791 \n\x08\n\x01\x08\x12\x03\x19\0/\n\t\n\x02\x08\x08\x12\x03\x19\0/\n\x08\n\
2792 \x01\x08\x12\x03\x1a\0<\n\t\n\x02\x08\x01\x12\x03\x1a\0<\n\x08\n\x01\x08\
2793 \x12\x03\x1b\0\"\n\t\n\x02\x08$\x12\x03\x1b\0\"\n\x08\n\x01\x08\x12\x03\
2794 \x1c\0>\n\t\n\x02\x08)\x12\x03\x1c\0>\n\x08\n\x01\x08\x12\x03\x1d\0=\n\t\
2795 \n\x02\x08-\x12\x03\x1d\0=\na\n\x02\x04\0\x12\x04!\0)\x01\x1aU\x20The\
2796 \x20full\x20representation\x20of\x20a\x20Service\x20that\x20is\x20manage\
2797 d\x20by\n\x20Google\x20Service\x20Management.\n\n\n\n\x03\x04\0\x01\x12\
2798 \x03!\x08\x16\n\x95\x01\n\x04\x04\0\x02\0\x12\x03%\x02\x1a\x1a\x87\x01\
2799 \x20The\x20name\x20of\x20the\x20service.\x20See\x20the\n\x20[overview](h\
2800 ttps://cloud.google.com/service-infrastructure/docs/overview)\n\x20for\
2801 \x20naming\x20requirements.\n\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03%\x02\
2802 \x08\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03%\t\x15\n\x0c\n\x05\x04\0\x02\0\
2803 \x03\x12\x03%\x18\x19\nE\n\x04\x04\0\x02\x01\x12\x03(\x02!\x1a8\x20ID\
2804 \x20of\x20the\x20project\x20that\x20produces\x20and\x20owns\x20this\x20s\
2805 ervice.\n\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03(\x02\x08\n\x0c\n\x05\x04\
2806 \0\x02\x01\x01\x12\x03(\t\x1c\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03(\x1f\
2807 \x20\nM\n\x02\x04\x01\x12\x04,\0X\x01\x1aA\x20The\x20metadata\x20associa\
2808 ted\x20with\x20a\x20long\x20running\x20operation\x20resource.\n\n\n\n\
2809 \x03\x04\x01\x01\x12\x03,\x08\x19\n<\n\x04\x04\x01\x03\0\x12\x04.\x024\
2810 \x03\x1a.\x20Represents\x20the\x20status\x20of\x20one\x20operation\x20st\
2811 ep.\n\n\x0c\n\x05\x04\x01\x03\0\x01\x12\x03.\n\x0e\n3\n\x06\x04\x01\x03\
2812 \0\x02\0\x12\x030\x04\x1b\x1a$\x20The\x20short\x20description\x20of\x20t\
2813 he\x20step.\n\n\x0e\n\x07\x04\x01\x03\0\x02\0\x05\x12\x030\x04\n\n\x0e\n\
2814 \x07\x04\x01\x03\0\x02\0\x01\x12\x030\x0b\x16\n\x0e\n\x07\x04\x01\x03\0\
2815 \x02\0\x03\x12\x030\x19\x1a\n!\n\x06\x04\x01\x03\0\x02\x01\x12\x033\x04\
2816 \x16\x1a\x12\x20The\x20status\x20code.\n\n\x0e\n\x07\x04\x01\x03\0\x02\
2817 \x01\x06\x12\x033\x04\n\n\x0e\n\x07\x04\x01\x03\0\x02\x01\x01\x12\x033\
2818 \x0b\x11\n\x0e\n\x07\x04\x01\x03\0\x02\x01\x03\x12\x033\x14\x15\nQ\n\x04\
2819 \x04\x01\x04\0\x12\x047\x02J\x03\x1aC\x20Code\x20describes\x20the\x20sta\
2820 tus\x20of\x20the\x20operation\x20(or\x20one\x20of\x20its\x20steps).\n\n\
2821 \x0c\n\x05\x04\x01\x04\0\x01\x12\x037\x07\r\n!\n\x06\x04\x01\x04\0\x02\0\
2822 \x12\x039\x04\x1b\x1a\x12\x20Unspecifed\x20code.\n\n\x0e\n\x07\x04\x01\
2823 \x04\0\x02\0\x01\x12\x039\x04\x16\n\x0e\n\x07\x04\x01\x04\0\x02\0\x02\
2824 \x12\x039\x19\x1a\nD\n\x06\x04\x01\x04\0\x02\x01\x12\x03<\x04\r\x1a5\x20\
2825 The\x20operation\x20or\x20step\x20has\x20completed\x20without\x20errors.\
2826 \n\n\x0e\n\x07\x04\x01\x04\0\x02\x01\x01\x12\x03<\x04\x08\n\x0e\n\x07\
2827 \x04\x01\x04\0\x02\x01\x02\x12\x03<\x0b\x0c\n;\n\x06\x04\x01\x04\0\x02\
2828 \x02\x12\x03?\x04\x14\x1a,\x20The\x20operation\x20or\x20step\x20has\x20n\
2829 ot\x20started\x20yet.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x02\x01\x12\x03?\
2830 \x04\x0f\n\x0e\n\x07\x04\x01\x04\0\x02\x02\x02\x12\x03?\x12\x13\n6\n\x06\
2831 \x04\x01\x04\0\x02\x03\x12\x03B\x04\x14\x1a'\x20The\x20operation\x20or\
2832 \x20step\x20is\x20in\x20progress.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x03\
2833 \x01\x12\x03B\x04\x0f\n\x0e\n\x07\x04\x01\x04\0\x02\x03\x02\x12\x03B\x12\
2834 \x13\n\x8c\x01\n\x06\x04\x01\x04\0\x02\x04\x12\x03F\x04\x0f\x1a}\x20The\
2835 \x20operation\x20or\x20step\x20has\x20completed\x20with\x20errors.\x20If\
2836 \x20the\x20operation\x20is\n\x20rollbackable,\x20the\x20rollback\x20comp\
2837 leted\x20with\x20errors\x20too.\n\n\x0e\n\x07\x04\x01\x04\0\x02\x04\x01\
2838 \x12\x03F\x04\n\n\x0e\n\x07\x04\x01\x04\0\x02\x04\x02\x12\x03F\r\x0e\nG\
2839 \n\x06\x04\x01\x04\0\x02\x05\x12\x03I\x04\x12\x1a8\x20The\x20operation\
2840 \x20or\x20step\x20has\x20completed\x20with\x20cancellation.\n\n\x0e\n\
2841 \x07\x04\x01\x04\0\x02\x05\x01\x12\x03I\x04\r\n\x0e\n\x07\x04\x01\x04\0\
2842 \x02\x05\x02\x12\x03I\x10\x11\n_\n\x04\x04\x01\x02\0\x12\x03N\x02%\x1aR\
2843 \x20The\x20full\x20name\x20of\x20the\x20resources\x20that\x20this\x20ope\
2844 ration\x20is\x20directly\n\x20associated\x20with.\n\n\x0c\n\x05\x04\x01\
2845 \x02\0\x04\x12\x03N\x02\n\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03N\x0b\x11\
2846 \n\x0c\n\x05\x04\x01\x02\0\x01\x12\x03N\x12\x20\n\x0c\n\x05\x04\x01\x02\
2847 \0\x03\x12\x03N#$\nT\n\x04\x04\x01\x02\x01\x12\x03Q\x02\x1a\x1aG\x20Deta\
2848 iled\x20status\x20information\x20for\x20each\x20step.\x20The\x20order\
2849 \x20is\x20undetermined.\n\n\x0c\n\x05\x04\x01\x02\x01\x04\x12\x03Q\x02\n\
2850 \n\x0c\n\x05\x04\x01\x02\x01\x06\x12\x03Q\x0b\x0f\n\x0c\n\x05\x04\x01\
2851 \x02\x01\x01\x12\x03Q\x10\x15\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x03Q\
2852 \x18\x19\nQ\n\x04\x04\x01\x02\x02\x12\x03T\x02\x20\x1aD\x20Percentage\
2853 \x20of\x20completion\x20of\x20this\x20operation,\x20ranging\x20from\x200\
2854 \x20to\x20100.\n\n\x0c\n\x05\x04\x01\x02\x02\x05\x12\x03T\x02\x07\n\x0c\
2855 \n\x05\x04\x01\x02\x02\x01\x12\x03T\x08\x1b\n\x0c\n\x05\x04\x01\x02\x02\
2856 \x03\x12\x03T\x1e\x1f\n/\n\x04\x04\x01\x02\x03\x12\x03W\x02+\x1a\"\x20Th\
2857 e\x20start\x20time\x20of\x20the\x20operation.\n\n\x0c\n\x05\x04\x01\x02\
2858 \x03\x06\x12\x03W\x02\x1b\n\x0c\n\x05\x04\x01\x02\x03\x01\x12\x03W\x1c&\
2859 \n\x0c\n\x05\x04\x01\x02\x03\x03\x12\x03W)*\n@\n\x02\x04\x02\x12\x04[\0m\
2860 \x01\x1a4\x20Represents\x20a\x20diagnostic\x20message\x20(error\x20or\
2861 \x20warning)\n\n\n\n\x03\x04\x02\x01\x12\x03[\x08\x12\n<\n\x04\x04\x02\
2862 \x04\0\x12\x04]\x02c\x03\x1a.\x20The\x20kind\x20of\x20diagnostic\x20info\
2863 rmation\x20possible.\n\n\x0c\n\x05\x04\x02\x04\0\x01\x12\x03]\x07\x0b\n$\
2864 \n\x06\x04\x02\x04\0\x02\0\x12\x03_\x04\x10\x1a\x15\x20Warnings\x20and\
2865 \x20errors\n\n\x0e\n\x07\x04\x02\x04\0\x02\0\x01\x12\x03_\x04\x0b\n\x0e\
2866 \n\x07\x04\x02\x04\0\x02\0\x02\x12\x03_\x0e\x0f\n\x1c\n\x06\x04\x02\x04\
2867 \0\x02\x01\x12\x03b\x04\x0e\x1a\r\x20Only\x20errors\n\n\x0e\n\x07\x04\
2868 \x02\x04\0\x02\x01\x01\x12\x03b\x04\t\n\x0e\n\x07\x04\x02\x04\0\x02\x01\
2869 \x02\x12\x03b\x0c\r\nA\n\x04\x04\x02\x02\0\x12\x03f\x02\x16\x1a4\x20File\
2870 \x20name\x20and\x20line\x20number\x20of\x20the\x20error\x20or\x20warning\
2871 .\n\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03f\x02\x08\n\x0c\n\x05\x04\x02\
2872 \x02\0\x01\x12\x03f\t\x11\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x03f\x14\x15\
2873 \n;\n\x04\x04\x02\x02\x01\x12\x03i\x02\x10\x1a.\x20The\x20kind\x20of\x20\
2874 diagnostic\x20information\x20provided.\n\n\x0c\n\x05\x04\x02\x02\x01\x06\
2875 \x12\x03i\x02\x06\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x03i\x07\x0b\n\x0c\
2876 \n\x05\x04\x02\x02\x01\x03\x12\x03i\x0e\x0f\n7\n\x04\x04\x02\x02\x02\x12\
2877 \x03l\x02\x15\x1a*\x20Message\x20describing\x20the\x20error\x20or\x20war\
2878 ning.\n\n\x0c\n\x05\x04\x02\x02\x02\x05\x12\x03l\x02\x08\n\x0c\n\x05\x04\
2879 \x02\x02\x02\x01\x12\x03l\t\x10\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x03l\
2880 \x13\x14\n|\n\x02\x04\x03\x12\x04q\0z\x01\x1ap\x20Represents\x20a\x20sou\
2881 rce\x20file\x20which\x20is\x20used\x20to\x20generate\x20the\x20service\
2882 \x20configuration\n\x20defined\x20by\x20`google.api.Service`.\n\n\n\n\
2883 \x03\x04\x03\x01\x12\x03q\x08\x14\n\xb6\x01\n\x04\x04\x03\x02\0\x12\x03u\
2884 \x02\x10\x1a\xa8\x01\x20A\x20unique\x20ID\x20for\x20a\x20specific\x20ins\
2885 tance\x20of\x20this\x20message,\x20typically\x20assigned\n\x20by\x20the\
2886 \x20client\x20for\x20tracking\x20purpose.\x20If\x20empty,\x20the\x20serv\
2887 er\x20may\x20choose\x20to\n\x20generate\x20one\x20instead.\n\n\x0c\n\x05\
2888 \x04\x03\x02\0\x05\x12\x03u\x02\x08\n\x0c\n\x05\x04\x03\x02\0\x01\x12\
2889 \x03u\t\x0b\n\x0c\n\x05\x04\x03\x02\0\x03\x12\x03u\x0e\x0f\n{\n\x04\x04\
2890 \x03\x02\x01\x12\x03y\x02\x20\x1an\x20Set\x20of\x20source\x20configurati\
2891 on\x20files\x20that\x20are\x20used\x20to\x20generate\x20a\x20service\n\
2892 \x20configuration\x20(`google.api.Service`).\n\n\x0c\n\x05\x04\x03\x02\
2893 \x01\x04\x12\x03y\x02\n\n\x0c\n\x05\x04\x03\x02\x01\x06\x12\x03y\x0b\x15\
2894 \n\x0c\n\x05\x04\x03\x02\x01\x01\x12\x03y\x16\x1b\n\x0c\n\x05\x04\x03\
2895 \x02\x01\x03\x12\x03y\x1e\x1f\nC\n\x02\x04\x04\x12\x05}\0\xa4\x01\x01\
2896 \x1a6\x20Generic\x20specification\x20of\x20a\x20source\x20configuration\
2897 \x20file\n\n\n\n\x03\x04\x04\x01\x12\x03}\x08\x12\n\r\n\x04\x04\x04\x04\
2898 \0\x12\x05~\x02\x9a\x01\x03\n\x0c\n\x05\x04\x04\x04\0\x01\x12\x03~\x07\
2899 \x0f\n$\n\x06\x04\x04\x04\0\x02\0\x12\x04\x80\x01\x04\x1e\x1a\x14\x20Unk\
2900 nown\x20file\x20type.\n\n\x0f\n\x07\x04\x04\x04\0\x02\0\x01\x12\x04\x80\
2901 \x01\x04\x19\n\x0f\n\x07\x04\x04\x04\0\x02\0\x02\x12\x04\x80\x01\x1c\x1d\
2902 \n0\n\x06\x04\x04\x04\0\x02\x01\x12\x04\x83\x01\x04\x1c\x1a\x20\x20YAML-\
2903 specification\x20of\x20service.\n\n\x0f\n\x07\x04\x04\x04\0\x02\x01\x01\
2904 \x12\x04\x83\x01\x04\x17\n\x0f\n\x07\x04\x04\x04\0\x02\x01\x02\x12\x04\
2905 \x83\x01\x1a\x1b\n<\n\x06\x04\x04\x04\0\x02\x02\x12\x04\x86\x01\x04\x16\
2906 \x1a,\x20OpenAPI\x20specification,\x20serialized\x20in\x20JSON.\n\n\x0f\
2907 \n\x07\x04\x04\x04\0\x02\x02\x01\x12\x04\x86\x01\x04\x11\n\x0f\n\x07\x04\
2908 \x04\x04\0\x02\x02\x02\x12\x04\x86\x01\x14\x15\n<\n\x06\x04\x04\x04\0\
2909 \x02\x03\x12\x04\x89\x01\x04\x16\x1a,\x20OpenAPI\x20specification,\x20se\
2910 rialized\x20in\x20YAML.\n\n\x0f\n\x07\x04\x04\x04\0\x02\x03\x01\x12\x04\
2911 \x89\x01\x04\x11\n\x0f\n\x07\x04\x04\x04\0\x02\x03\x02\x12\x04\x89\x01\
2912 \x14\x15\n\xaa\x02\n\x06\x04\x04\x04\0\x02\x04\x12\x04\x92\x01\x04\"\x1a\
2913 \x99\x02\x20FileDescriptorSet,\x20generated\x20by\x20protoc.\n\n\x20To\
2914 \x20generate,\x20use\x20protoc\x20with\x20imports\x20and\x20source\x20in\
2915 fo\x20included.\n\x20For\x20an\x20example\x20test.proto\x20file,\x20the\
2916 \x20following\x20command\x20would\x20put\x20the\x20value\n\x20in\x20a\
2917 \x20new\x20file\x20named\x20out.pb.\n\n\x20$protoc\x20--include_imports\
2918 \x20--include_source_info\x20test.proto\x20-o\x20out.pb\n\n\x0f\n\x07\
2919 \x04\x04\x04\0\x02\x04\x01\x12\x04\x92\x01\x04\x1d\n\x0f\n\x07\x04\x04\
2920 \x04\0\x02\x04\x02\x12\x04\x92\x01\x20!\n\xd3\x02\n\x06\x04\x04\x04\0\
2921 \x02\x05\x12\x04\x99\x01\x04\x13\x1a\xc2\x02\x20Uncompiled\x20Proto\x20f\
2922 ile.\x20Used\x20for\x20storage\x20and\x20display\x20purposes\x20only,\n\
2923 \x20currently\x20server-side\x20compilation\x20is\x20not\x20supported.\
2924 \x20Should\x20match\x20the\n\x20inputs\x20to\x20'protoc'\x20command\x20u\
2925 sed\x20to\x20generated\x20FILE_DESCRIPTOR_SET_PROTO.\x20A\n\x20file\x20o\
2926 f\x20this\x20type\x20can\x20only\x20be\x20included\x20if\x20at\x20least\
2927 \x20one\x20file\x20of\x20type\n\x20FILE_DESCRIPTOR_SET_PROTO\x20is\x20in\
2928 cluded.\n\n\x0f\n\x07\x04\x04\x04\0\x02\x05\x01\x12\x04\x99\x01\x04\x0e\
2929 \n\x0f\n\x07\x04\x04\x04\0\x02\x05\x02\x12\x04\x99\x01\x11\x12\nP\n\x04\
2930 \x04\x04\x02\0\x12\x04\x9d\x01\x02\x17\x1aB\x20The\x20file\x20name\x20of\
2931 \x20the\x20configuration\x20file\x20(full\x20or\x20relative\x20path).\n\
2932 \n\r\n\x05\x04\x04\x02\0\x05\x12\x04\x9d\x01\x02\x08\n\r\n\x05\x04\x04\
2933 \x02\0\x01\x12\x04\x9d\x01\t\x12\n\r\n\x05\x04\x04\x02\0\x03\x12\x04\x9d\
2934 \x01\x15\x16\n3\n\x04\x04\x04\x02\x01\x12\x04\xa0\x01\x02\x1a\x1a%\x20Th\
2935 e\x20bytes\x20that\x20constitute\x20the\x20file.\n\n\r\n\x05\x04\x04\x02\
2936 \x01\x05\x12\x04\xa0\x01\x02\x07\n\r\n\x05\x04\x04\x02\x01\x01\x12\x04\
2937 \xa0\x01\x08\x15\n\r\n\x05\x04\x04\x02\x01\x03\x12\x04\xa0\x01\x18\x19\n\
2938 ?\n\x04\x04\x04\x02\x02\x12\x04\xa3\x01\x02\x19\x1a1\x20The\x20type\x20o\
2939 f\x20configuration\x20file\x20this\x20represents.\n\n\r\n\x05\x04\x04\
2940 \x02\x02\x06\x12\x04\xa3\x01\x02\n\n\r\n\x05\x04\x04\x02\x02\x01\x12\x04\
2941 \xa3\x01\x0b\x14\n\r\n\x05\x04\x04\x02\x02\x03\x12\x04\xa3\x01\x17\x18\n\
2942 H\n\x02\x04\x05\x12\x06\xa7\x01\0\xab\x01\x01\x1a:\x20Represents\x20a\
2943 \x20service\x20configuration\x20with\x20its\x20name\x20and\x20id.\n\n\
2944 \x0b\n\x03\x04\x05\x01\x12\x04\xa7\x01\x08\x11\n\x85\x01\n\x04\x04\x05\
2945 \x02\0\x12\x04\xaa\x01\x02\x12\x1aw\x20Resource\x20name\x20of\x20a\x20se\
2946 rvice\x20config.\x20It\x20must\x20have\x20the\x20following\n\x20format:\
2947 \x20\"services/{service\x20name}/configs/{config\x20id}\".\n\n\r\n\x05\
2948 \x04\x05\x02\0\x05\x12\x04\xaa\x01\x02\x08\n\r\n\x05\x04\x05\x02\0\x01\
2949 \x12\x04\xaa\x01\t\r\n\r\n\x05\x04\x05\x02\0\x03\x12\x04\xaa\x01\x10\x11\
2950 \n\xb5\x01\n\x02\x04\x06\x12\x06\xb1\x01\0\xb8\x01\x01\x1a\xa6\x01\x20Ch\
2951 ange\x20report\x20associated\x20with\x20a\x20particular\x20service\x20co\
2952 nfiguration.\n\n\x20It\x20contains\x20a\x20list\x20of\x20ConfigChanges\
2953 \x20based\x20on\x20the\x20comparison\x20between\n\x20two\x20service\x20c\
2954 onfigurations.\n\n\x0b\n\x03\x04\x06\x01\x12\x04\xb1\x01\x08\x14\n\xae\
2955 \x02\n\x04\x04\x06\x02\0\x12\x04\xb7\x01\x026\x1a\x9f\x02\x20List\x20of\
2956 \x20changes\x20between\x20two\x20service\x20configurations.\n\x20The\x20\
2957 changes\x20will\x20be\x20alphabetically\x20sorted\x20based\x20on\x20the\
2958 \x20identifier\n\x20of\x20each\x20change.\n\x20A\x20ConfigChange\x20iden\
2959 tifier\x20is\x20a\x20dot\x20separated\x20path\x20to\x20the\x20configurat\
2960 ion.\n\x20Example:\x20visibility.rules[selector='LibraryService.CreateBo\
2961 ok'].restriction\n\n\r\n\x05\x04\x06\x02\0\x04\x12\x04\xb7\x01\x02\n\n\r\
2962 \n\x05\x04\x06\x02\0\x06\x12\x04\xb7\x01\x0b\"\n\r\n\x05\x04\x06\x02\0\
2963 \x01\x12\x04\xb7\x01#1\n\r\n\x05\x04\x06\x02\0\x03\x12\x04\xb7\x0145\n\
2964 \xeb\x01\n\x02\x04\x07\x12\x06\xbd\x01\0\xa6\x02\x01\x1a\xdc\x01\x20A\
2965 \x20rollout\x20resource\x20that\x20defines\x20how\x20service\x20configur\
2966 ation\x20versions\x20are\x20pushed\n\x20to\x20control\x20plane\x20system\
2967 s.\x20Typically,\x20you\x20create\x20a\x20new\x20version\x20of\x20the\n\
2968 \x20service\x20config,\x20and\x20then\x20create\x20a\x20Rollout\x20to\
2969 \x20push\x20the\x20service\x20config.\n\n\x0b\n\x03\x04\x07\x01\x12\x04\
2970 \xbd\x01\x08\x0f\n\xbd\x06\n\x04\x04\x07\x03\0\x12\x06\xdc\x01\x02\xe1\
2971 \x01\x03\x1a\xac\x06\x20Strategy\x20that\x20specifies\x20how\x20clients\
2972 \x20of\x20Google\x20Service\x20Controller\x20want\x20to\n\x20send\x20tra\
2973 ffic\x20to\x20use\x20different\x20config\x20versions.\x20This\x20is\x20g\
2974 enerally\n\x20used\x20by\x20API\x20proxy\x20to\x20split\x20traffic\x20ba\
2975 sed\x20on\x20your\x20configured\x20percentage\x20for\n\x20each\x20config\
2976 \x20version.\n\n\x20One\x20example\x20of\x20how\x20to\x20gradually\x20ro\
2977 llout\x20a\x20new\x20service\x20configuration\x20using\n\x20this\n\x20st\
2978 rategy:\n\x20Day\x201\n\n\x20\x20\x20\x20\x20Rollout\x20{\n\x20\x20\x20\
2979 \x20\x20\x20\x20id:\x20\"example.googleapis.com/rollout_20160206\"\n\x20\
2980 \x20\x20\x20\x20\x20\x20traffic_percent_strategy\x20{\n\x20\x20\x20\x20\
2981 \x20\x20\x20\x20\x20percentages:\x20{\n\x20\x20\x20\x20\x20\x20\x20\x20\
2982 \x20\x20\x20\"example.googleapis.com/20160201\":\x2070.00\n\x20\x20\x20\
2983 \x20\x20\x20\x20\x20\x20\x20\x20\"example.googleapis.com/20160206\":\x20\
2984 30.00\n\x20\x20\x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20\x20\
2985 \x20}\n\x20\x20\x20\x20\x20}\n\n\x20Day\x202\n\n\x20\x20\x20\x20\x20Roll\
2986 out\x20{\n\x20\x20\x20\x20\x20\x20\x20id:\x20\"example.googleapis.com/ro\
2987 llout_20160207\"\n\x20\x20\x20\x20\x20\x20\x20traffic_percent_strategy:\
2988 \x20{\n\x20\x20\x20\x20\x20\x20\x20\x20\x20percentages:\x20{\n\x20\x20\
2989 \x20\x20\x20\x20\x20\x20\x20\x20\x20\"example.googleapis.com/20160206\":\
2990 \x20100.00\n\x20\x20\x20\x20\x20\x20\x20\x20\x20}\n\x20\x20\x20\x20\x20\
2991 \x20\x20}\n\x20\x20\x20\x20\x20}\n\n\r\n\x05\x04\x07\x03\0\x01\x12\x04\
2992 \xdc\x01\n\x20\n\xe3\x01\n\x06\x04\x07\x03\0\x02\0\x12\x04\xe0\x01\x04(\
2993 \x1a\xd2\x01\x20Maps\x20service\x20configuration\x20IDs\x20to\x20their\
2994 \x20corresponding\x20traffic\x20percentage.\n\x20Key\x20is\x20the\x20ser\
2995 vice\x20configuration\x20ID,\x20Value\x20is\x20the\x20traffic\x20percent\
2996 age\n\x20which\x20must\x20be\x20greater\x20than\x200.0\x20and\x20the\x20\
2997 sum\x20must\x20equal\x20to\x20100.0.\n\n\x0f\n\x07\x04\x07\x03\0\x02\0\
2998 \x06\x12\x04\xe0\x01\x04\x17\n\x0f\n\x07\x04\x07\x03\0\x02\0\x01\x12\x04\
2999 \xe0\x01\x18#\n\x0f\n\x07\x04\x07\x03\0\x02\0\x03\x12\x04\xe0\x01&'\n\
3000 \x92\x01\n\x04\x04\x07\x03\x01\x12\x04\xe5\x01\x02\"\x1a\x83\x01\x20Stra\
3001 tegy\x20used\x20to\x20delete\x20a\x20service.\x20This\x20strategy\x20is\
3002 \x20a\x20placeholder\x20only\n\x20used\x20by\x20the\x20system\x20generat\
3003 ed\x20rollout\x20to\x20delete\x20a\x20service.\n\n\r\n\x05\x04\x07\x03\
3004 \x01\x01\x12\x04\xe5\x01\n\x1f\n&\n\x04\x04\x07\x04\0\x12\x06\xe8\x01\
3005 \x02\xff\x01\x03\x1a\x16\x20Status\x20of\x20a\x20Rollout.\n\n\r\n\x05\
3006 \x04\x07\x04\0\x01\x12\x04\xe8\x01\x07\x14\n&\n\x06\x04\x07\x04\0\x02\0\
3007 \x12\x04\xea\x01\x04#\x1a\x16\x20No\x20status\x20specified.\n\n\x0f\n\
3008 \x07\x04\x07\x04\0\x02\0\x01\x12\x04\xea\x01\x04\x1e\n\x0f\n\x07\x04\x07\
3009 \x04\0\x02\0\x02\x12\x04\xea\x01!\"\n-\n\x06\x04\x07\x04\0\x02\x01\x12\
3010 \x04\xed\x01\x04\x14\x1a\x1d\x20The\x20Rollout\x20is\x20in\x20progress.\
3011 \n\n\x0f\n\x07\x04\x07\x04\0\x02\x01\x01\x12\x04\xed\x01\x04\x0f\n\x0f\n\
3012 \x07\x04\x07\x04\0\x02\x01\x02\x12\x04\xed\x01\x12\x13\n9\n\x06\x04\x07\
3013 \x04\0\x02\x02\x12\x04\xf0\x01\x04\x10\x1a)\x20The\x20Rollout\x20has\x20\
3014 completed\x20successfully.\n\n\x0f\n\x07\x04\x07\x04\0\x02\x02\x01\x12\
3015 \x04\xf0\x01\x04\x0b\n\x0f\n\x07\x04\x07\x04\0\x02\x02\x02\x12\x04\xf0\
3016 \x01\x0e\x0f\n\x94\x01\n\x06\x04\x07\x04\0\x02\x03\x12\x04\xf4\x01\x04\
3017 \x12\x1a\x83\x01\x20The\x20Rollout\x20has\x20been\x20cancelled.\x20This\
3018 \x20can\x20happen\x20if\x20you\x20have\x20overlapping\n\x20Rollout\x20pu\
3019 shes,\x20and\x20the\x20previous\x20ones\x20will\x20be\x20cancelled.\n\n\
3020 \x0f\n\x07\x04\x07\x04\0\x02\x03\x01\x12\x04\xf4\x01\x04\r\n\x0f\n\x07\
3021 \x04\x07\x04\0\x02\x03\x02\x12\x04\xf4\x01\x10\x11\nQ\n\x06\x04\x07\x04\
3022 \0\x02\x04\x12\x04\xf7\x01\x04\x0f\x1aA\x20The\x20Rollout\x20has\x20fail\
3023 ed\x20and\x20the\x20rollback\x20attempt\x20has\x20failed\x20too.\n\n\x0f\
3024 \n\x07\x04\x07\x04\0\x02\x04\x01\x12\x04\xf7\x01\x04\n\n\x0f\n\x07\x04\
3025 \x07\x04\0\x02\x04\x02\x12\x04\xf7\x01\r\x0e\nO\n\x06\x04\x07\x04\0\x02\
3026 \x05\x12\x04\xfa\x01\x04\x10\x1a?\x20The\x20Rollout\x20has\x20not\x20sta\
3027 rted\x20yet\x20and\x20is\x20pending\x20for\x20execution.\n\n\x0f\n\x07\
3028 \x04\x07\x04\0\x02\x05\x01\x12\x04\xfa\x01\x04\x0b\n\x0f\n\x07\x04\x07\
3029 \x04\0\x02\x05\x02\x12\x04\xfa\x01\x0e\x0f\n]\n\x06\x04\x07\x04\0\x02\
3030 \x06\x12\x04\xfe\x01\x04\x1b\x1aM\x20The\x20Rollout\x20has\x20failed\x20\
3031 and\x20rolled\x20back\x20to\x20the\x20previous\x20successful\n\x20Rollou\
3032 t.\n\n\x0f\n\x07\x04\x07\x04\0\x02\x06\x01\x12\x04\xfe\x01\x04\x16\n\x0f\
3033 \n\x07\x04\x07\x04\0\x02\x06\x02\x12\x04\xfe\x01\x19\x1a\n\xff\x03\n\x04\
3034 \x04\x07\x02\0\x12\x04\x8a\x02\x02A\x1a\xf0\x03\x20Optional.\x20Unique\
3035 \x20identifier\x20of\x20this\x20Rollout.\x20Must\x20be\x20no\x20longer\
3036 \x20than\x2063\n\x20characters\x20and\x20only\x20lower\x20case\x20letter\
3037 s,\x20digits,\x20'.',\x20'_'\x20and\x20'-'\x20are\n\x20allowed.\n\n\x20I\
3038 f\x20not\x20specified\x20by\x20client,\x20the\x20server\x20will\x20gener\
3039 ate\x20one.\x20The\x20generated\x20id\n\x20will\x20have\x20the\x20form\
3040 \x20of\x20<date><revision\x20number>,\x20where\x20\"date\"\x20is\x20the\
3041 \x20create\n\x20date\x20in\x20ISO\x208601\x20format.\x20\x20\"revision\
3042 \x20number\"\x20is\x20a\x20monotonically\x20increasing\n\x20positive\x20\
3043 number\x20that\x20is\x20reset\x20every\x20day\x20for\x20each\x20service.\
3044 \n\x20An\x20example\x20of\x20the\x20generated\x20rollout_id\x20is\x20'20\
3045 16-02-16r1'\n\n\r\n\x05\x04\x07\x02\0\x05\x12\x04\x8a\x02\x02\x08\n\r\n\
3046 \x05\x04\x07\x02\0\x01\x12\x04\x8a\x02\t\x13\n\r\n\x05\x04\x07\x02\0\x03\
3047 \x12\x04\x8a\x02\x16\x17\n\r\n\x05\x04\x07\x02\0\x08\x12\x04\x8a\x02\x18\
3048 @\n\x10\n\x08\x04\x07\x02\0\x08\x9c\x08\0\x12\x04\x8a\x02\x19?\n7\n\x04\
3049 \x04\x07\x02\x01\x12\x04\x8d\x02\x02,\x1a)\x20Creation\x20time\x20of\x20\
3050 the\x20rollout.\x20Readonly.\n\n\r\n\x05\x04\x07\x02\x01\x06\x12\x04\x8d\
3051 \x02\x02\x1b\n\r\n\x05\x04\x07\x02\x01\x01\x12\x04\x8d\x02\x1c'\n\r\n\
3052 \x05\x04\x07\x02\x01\x03\x12\x04\x8d\x02*+\n;\n\x04\x04\x07\x02\x02\x12\
3053 \x04\x90\x02\x02\x18\x1a-\x20The\x20user\x20who\x20created\x20the\x20Rol\
3054 lout.\x20Readonly.\n\n\r\n\x05\x04\x07\x02\x02\x05\x12\x04\x90\x02\x02\
3055 \x08\n\r\n\x05\x04\x07\x02\x02\x01\x12\x04\x90\x02\t\x13\n\r\n\x05\x04\
3056 \x07\x02\x02\x03\x12\x04\x90\x02\x16\x17\n\xa6\x01\n\x04\x04\x07\x02\x03\
3057 \x12\x04\x95\x02\x02\x1b\x1a\x97\x01\x20The\x20status\x20of\x20this\x20r\
3058 ollout.\x20Readonly.\x20In\x20case\x20of\x20a\x20failed\x20rollout,\n\
3059 \x20the\x20system\x20will\x20automatically\x20rollback\x20to\x20the\x20c\
3060 urrent\x20Rollout\n\x20version.\x20Readonly.\n\n\r\n\x05\x04\x07\x02\x03\
3061 \x06\x12\x04\x95\x02\x02\x0f\n\r\n\x05\x04\x07\x02\x03\x01\x12\x04\x95\
3062 \x02\x10\x16\n\r\n\x05\x04\x07\x02\x03\x03\x12\x04\x95\x02\x19\x1a\n\x8b\
3063 \x01\n\x04\x04\x07\x08\0\x12\x06\x9a\x02\x02\xa2\x02\x03\x1a{\x20Strateg\
3064 y\x20that\x20defines\x20which\x20versions\x20of\x20service\x20configurat\
3065 ions\x20should\x20be\n\x20pushed\n\x20and\x20how\x20they\x20should\x20be\
3066 \x20used\x20at\x20runtime.\n\n\r\n\x05\x04\x07\x08\0\x01\x12\x04\x9a\x02\
3067 \x08\x10\nc\n\x04\x04\x07\x02\x04\x12\x04\x9d\x02\x048\x1aU\x20Google\
3068 \x20Service\x20Control\x20selects\x20service\x20configurations\x20based\
3069 \x20on\n\x20traffic\x20percentage.\n\n\r\n\x05\x04\x07\x02\x04\x06\x12\
3070 \x04\x9d\x02\x04\x1a\n\r\n\x05\x04\x07\x02\x04\x01\x12\x04\x9d\x02\x1b3\
3071 \n\r\n\x05\x04\x07\x02\x04\x03\x12\x04\x9d\x0267\n_\n\x04\x04\x07\x02\
3072 \x05\x12\x04\xa1\x02\x048\x1aQ\x20The\x20strategy\x20associated\x20with\
3073 \x20a\x20rollout\x20to\x20delete\x20a\x20`ManagedService`.\n\x20Readonly\
3074 .\n\n\r\n\x05\x04\x07\x02\x05\x06\x12\x04\xa1\x02\x04\x19\n\r\n\x05\x04\
3075 \x07\x02\x05\x01\x12\x04\xa1\x02\x1a1\n\r\n\x05\x04\x07\x02\x05\x03\x12\
3076 \x04\xa1\x0247\nE\n\x04\x04\x07\x02\x06\x12\x04\xa5\x02\x02\x1a\x1a7\x20\
3077 The\x20name\x20of\x20the\x20service\x20associated\x20with\x20this\x20Rol\
3078 lout.\n\n\r\n\x05\x04\x07\x02\x06\x05\x12\x04\xa5\x02\x02\x08\n\r\n\x05\
3079 \x04\x07\x02\x06\x01\x12\x04\xa5\x02\t\x15\n\r\n\x05\x04\x07\x02\x06\x03\
3080 \x12\x04\xa5\x02\x18\x19b\x06proto3\
3081";
3082
3083static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
3084
3085fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
3086 ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
3087}
3088
3089pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
3090 file_descriptor_proto_lazy.get(|| {
3091 parse_descriptor_proto()
3092 })
3093}