google_cloud_rust_raw/api/servicecontrol/v1/
service_controller.rs

1// This file is generated by rust-protobuf 2.28.0. Do not edit
2// @generated
3
4// https://github.com/rust-lang/rust-clippy/issues/702
5#![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//! Generated file from `google/api/servicecontrol/v1/service_controller.proto`
21
22/// Generated files are compatible only with the same version
23/// of protobuf runtime.
24// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_28_0;
25
26#[derive(PartialEq,Clone,Default)]
27pub struct CheckRequest {
28    // message fields
29    pub service_name: ::std::string::String,
30    pub operation: ::protobuf::SingularPtrField<super::operation::Operation>,
31    pub service_config_id: ::std::string::String,
32    // special fields
33    pub unknown_fields: ::protobuf::UnknownFields,
34    pub cached_size: ::protobuf::CachedSize,
35}
36
37impl<'a> ::std::default::Default for &'a CheckRequest {
38    fn default() -> &'a CheckRequest {
39        <CheckRequest as ::protobuf::Message>::default_instance()
40    }
41}
42
43impl CheckRequest {
44    pub fn new() -> CheckRequest {
45        ::std::default::Default::default()
46    }
47
48    // string service_name = 1;
49
50
51    pub fn get_service_name(&self) -> &str {
52        &self.service_name
53    }
54    pub fn clear_service_name(&mut self) {
55        self.service_name.clear();
56    }
57
58    // Param is passed by value, moved
59    pub fn set_service_name(&mut self, v: ::std::string::String) {
60        self.service_name = v;
61    }
62
63    // Mutable pointer to the field.
64    // If field is not initialized, it is initialized with default value first.
65    pub fn mut_service_name(&mut self) -> &mut ::std::string::String {
66        &mut self.service_name
67    }
68
69    // Take field
70    pub fn take_service_name(&mut self) -> ::std::string::String {
71        ::std::mem::replace(&mut self.service_name, ::std::string::String::new())
72    }
73
74    // .google.api.servicecontrol.v1.Operation operation = 2;
75
76
77    pub fn get_operation(&self) -> &super::operation::Operation {
78        self.operation.as_ref().unwrap_or_else(|| <super::operation::Operation as ::protobuf::Message>::default_instance())
79    }
80    pub fn clear_operation(&mut self) {
81        self.operation.clear();
82    }
83
84    pub fn has_operation(&self) -> bool {
85        self.operation.is_some()
86    }
87
88    // Param is passed by value, moved
89    pub fn set_operation(&mut self, v: super::operation::Operation) {
90        self.operation = ::protobuf::SingularPtrField::some(v);
91    }
92
93    // Mutable pointer to the field.
94    // If field is not initialized, it is initialized with default value first.
95    pub fn mut_operation(&mut self) -> &mut super::operation::Operation {
96        if self.operation.is_none() {
97            self.operation.set_default();
98        }
99        self.operation.as_mut().unwrap()
100    }
101
102    // Take field
103    pub fn take_operation(&mut self) -> super::operation::Operation {
104        self.operation.take().unwrap_or_else(|| super::operation::Operation::new())
105    }
106
107    // string service_config_id = 4;
108
109
110    pub fn get_service_config_id(&self) -> &str {
111        &self.service_config_id
112    }
113    pub fn clear_service_config_id(&mut self) {
114        self.service_config_id.clear();
115    }
116
117    // Param is passed by value, moved
118    pub fn set_service_config_id(&mut self, v: ::std::string::String) {
119        self.service_config_id = v;
120    }
121
122    // Mutable pointer to the field.
123    // If field is not initialized, it is initialized with default value first.
124    pub fn mut_service_config_id(&mut self) -> &mut ::std::string::String {
125        &mut self.service_config_id
126    }
127
128    // Take field
129    pub fn take_service_config_id(&mut self) -> ::std::string::String {
130        ::std::mem::replace(&mut self.service_config_id, ::std::string::String::new())
131    }
132}
133
134impl ::protobuf::Message for CheckRequest {
135    fn is_initialized(&self) -> bool {
136        for v in &self.operation {
137            if !v.is_initialized() {
138                return false;
139            }
140        };
141        true
142    }
143
144    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
145        while !is.eof()? {
146            let (field_number, wire_type) = is.read_tag_unpack()?;
147            match field_number {
148                1 => {
149                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_name)?;
150                },
151                2 => {
152                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.operation)?;
153                },
154                4 => {
155                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_config_id)?;
156                },
157                _ => {
158                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
159                },
160            };
161        }
162        ::std::result::Result::Ok(())
163    }
164
165    // Compute sizes of nested messages
166    #[allow(unused_variables)]
167    fn compute_size(&self) -> u32 {
168        let mut my_size = 0;
169        if !self.service_name.is_empty() {
170            my_size += ::protobuf::rt::string_size(1, &self.service_name);
171        }
172        if let Some(ref v) = self.operation.as_ref() {
173            let len = v.compute_size();
174            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
175        }
176        if !self.service_config_id.is_empty() {
177            my_size += ::protobuf::rt::string_size(4, &self.service_config_id);
178        }
179        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
180        self.cached_size.set(my_size);
181        my_size
182    }
183
184    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
185        if !self.service_name.is_empty() {
186            os.write_string(1, &self.service_name)?;
187        }
188        if let Some(ref v) = self.operation.as_ref() {
189            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
190            os.write_raw_varint32(v.get_cached_size())?;
191            v.write_to_with_cached_sizes(os)?;
192        }
193        if !self.service_config_id.is_empty() {
194            os.write_string(4, &self.service_config_id)?;
195        }
196        os.write_unknown_fields(self.get_unknown_fields())?;
197        ::std::result::Result::Ok(())
198    }
199
200    fn get_cached_size(&self) -> u32 {
201        self.cached_size.get()
202    }
203
204    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
205        &self.unknown_fields
206    }
207
208    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
209        &mut self.unknown_fields
210    }
211
212    fn as_any(&self) -> &dyn (::std::any::Any) {
213        self as &dyn (::std::any::Any)
214    }
215    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
216        self as &mut dyn (::std::any::Any)
217    }
218    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
219        self
220    }
221
222    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
223        Self::descriptor_static()
224    }
225
226    fn new() -> CheckRequest {
227        CheckRequest::new()
228    }
229
230    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
231        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
232        descriptor.get(|| {
233            let mut fields = ::std::vec::Vec::new();
234            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
235                "service_name",
236                |m: &CheckRequest| { &m.service_name },
237                |m: &mut CheckRequest| { &mut m.service_name },
238            ));
239            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<super::operation::Operation>>(
240                "operation",
241                |m: &CheckRequest| { &m.operation },
242                |m: &mut CheckRequest| { &mut m.operation },
243            ));
244            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
245                "service_config_id",
246                |m: &CheckRequest| { &m.service_config_id },
247                |m: &mut CheckRequest| { &mut m.service_config_id },
248            ));
249            ::protobuf::reflect::MessageDescriptor::new_pb_name::<CheckRequest>(
250                "CheckRequest",
251                fields,
252                file_descriptor_proto()
253            )
254        })
255    }
256
257    fn default_instance() -> &'static CheckRequest {
258        static instance: ::protobuf::rt::LazyV2<CheckRequest> = ::protobuf::rt::LazyV2::INIT;
259        instance.get(CheckRequest::new)
260    }
261}
262
263impl ::protobuf::Clear for CheckRequest {
264    fn clear(&mut self) {
265        self.service_name.clear();
266        self.operation.clear();
267        self.service_config_id.clear();
268        self.unknown_fields.clear();
269    }
270}
271
272impl ::std::fmt::Debug for CheckRequest {
273    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
274        ::protobuf::text_format::fmt(self, f)
275    }
276}
277
278impl ::protobuf::reflect::ProtobufValue for CheckRequest {
279    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
280        ::protobuf::reflect::ReflectValueRef::Message(self)
281    }
282}
283
284#[derive(PartialEq,Clone,Default)]
285pub struct CheckResponse {
286    // message fields
287    pub operation_id: ::std::string::String,
288    pub check_errors: ::protobuf::RepeatedField<super::check_error::CheckError>,
289    pub service_config_id: ::std::string::String,
290    pub service_rollout_id: ::std::string::String,
291    pub check_info: ::protobuf::SingularPtrField<CheckResponse_CheckInfo>,
292    // special fields
293    pub unknown_fields: ::protobuf::UnknownFields,
294    pub cached_size: ::protobuf::CachedSize,
295}
296
297impl<'a> ::std::default::Default for &'a CheckResponse {
298    fn default() -> &'a CheckResponse {
299        <CheckResponse as ::protobuf::Message>::default_instance()
300    }
301}
302
303impl CheckResponse {
304    pub fn new() -> CheckResponse {
305        ::std::default::Default::default()
306    }
307
308    // string operation_id = 1;
309
310
311    pub fn get_operation_id(&self) -> &str {
312        &self.operation_id
313    }
314    pub fn clear_operation_id(&mut self) {
315        self.operation_id.clear();
316    }
317
318    // Param is passed by value, moved
319    pub fn set_operation_id(&mut self, v: ::std::string::String) {
320        self.operation_id = v;
321    }
322
323    // Mutable pointer to the field.
324    // If field is not initialized, it is initialized with default value first.
325    pub fn mut_operation_id(&mut self) -> &mut ::std::string::String {
326        &mut self.operation_id
327    }
328
329    // Take field
330    pub fn take_operation_id(&mut self) -> ::std::string::String {
331        ::std::mem::replace(&mut self.operation_id, ::std::string::String::new())
332    }
333
334    // repeated .google.api.servicecontrol.v1.CheckError check_errors = 2;
335
336
337    pub fn get_check_errors(&self) -> &[super::check_error::CheckError] {
338        &self.check_errors
339    }
340    pub fn clear_check_errors(&mut self) {
341        self.check_errors.clear();
342    }
343
344    // Param is passed by value, moved
345    pub fn set_check_errors(&mut self, v: ::protobuf::RepeatedField<super::check_error::CheckError>) {
346        self.check_errors = v;
347    }
348
349    // Mutable pointer to the field.
350    pub fn mut_check_errors(&mut self) -> &mut ::protobuf::RepeatedField<super::check_error::CheckError> {
351        &mut self.check_errors
352    }
353
354    // Take field
355    pub fn take_check_errors(&mut self) -> ::protobuf::RepeatedField<super::check_error::CheckError> {
356        ::std::mem::replace(&mut self.check_errors, ::protobuf::RepeatedField::new())
357    }
358
359    // string service_config_id = 5;
360
361
362    pub fn get_service_config_id(&self) -> &str {
363        &self.service_config_id
364    }
365    pub fn clear_service_config_id(&mut self) {
366        self.service_config_id.clear();
367    }
368
369    // Param is passed by value, moved
370    pub fn set_service_config_id(&mut self, v: ::std::string::String) {
371        self.service_config_id = v;
372    }
373
374    // Mutable pointer to the field.
375    // If field is not initialized, it is initialized with default value first.
376    pub fn mut_service_config_id(&mut self) -> &mut ::std::string::String {
377        &mut self.service_config_id
378    }
379
380    // Take field
381    pub fn take_service_config_id(&mut self) -> ::std::string::String {
382        ::std::mem::replace(&mut self.service_config_id, ::std::string::String::new())
383    }
384
385    // string service_rollout_id = 11;
386
387
388    pub fn get_service_rollout_id(&self) -> &str {
389        &self.service_rollout_id
390    }
391    pub fn clear_service_rollout_id(&mut self) {
392        self.service_rollout_id.clear();
393    }
394
395    // Param is passed by value, moved
396    pub fn set_service_rollout_id(&mut self, v: ::std::string::String) {
397        self.service_rollout_id = v;
398    }
399
400    // Mutable pointer to the field.
401    // If field is not initialized, it is initialized with default value first.
402    pub fn mut_service_rollout_id(&mut self) -> &mut ::std::string::String {
403        &mut self.service_rollout_id
404    }
405
406    // Take field
407    pub fn take_service_rollout_id(&mut self) -> ::std::string::String {
408        ::std::mem::replace(&mut self.service_rollout_id, ::std::string::String::new())
409    }
410
411    // .google.api.servicecontrol.v1.CheckResponse.CheckInfo check_info = 6;
412
413
414    pub fn get_check_info(&self) -> &CheckResponse_CheckInfo {
415        self.check_info.as_ref().unwrap_or_else(|| <CheckResponse_CheckInfo as ::protobuf::Message>::default_instance())
416    }
417    pub fn clear_check_info(&mut self) {
418        self.check_info.clear();
419    }
420
421    pub fn has_check_info(&self) -> bool {
422        self.check_info.is_some()
423    }
424
425    // Param is passed by value, moved
426    pub fn set_check_info(&mut self, v: CheckResponse_CheckInfo) {
427        self.check_info = ::protobuf::SingularPtrField::some(v);
428    }
429
430    // Mutable pointer to the field.
431    // If field is not initialized, it is initialized with default value first.
432    pub fn mut_check_info(&mut self) -> &mut CheckResponse_CheckInfo {
433        if self.check_info.is_none() {
434            self.check_info.set_default();
435        }
436        self.check_info.as_mut().unwrap()
437    }
438
439    // Take field
440    pub fn take_check_info(&mut self) -> CheckResponse_CheckInfo {
441        self.check_info.take().unwrap_or_else(|| CheckResponse_CheckInfo::new())
442    }
443}
444
445impl ::protobuf::Message for CheckResponse {
446    fn is_initialized(&self) -> bool {
447        for v in &self.check_errors {
448            if !v.is_initialized() {
449                return false;
450            }
451        };
452        for v in &self.check_info {
453            if !v.is_initialized() {
454                return false;
455            }
456        };
457        true
458    }
459
460    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
461        while !is.eof()? {
462            let (field_number, wire_type) = is.read_tag_unpack()?;
463            match field_number {
464                1 => {
465                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.operation_id)?;
466                },
467                2 => {
468                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.check_errors)?;
469                },
470                5 => {
471                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_config_id)?;
472                },
473                11 => {
474                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_rollout_id)?;
475                },
476                6 => {
477                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.check_info)?;
478                },
479                _ => {
480                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
481                },
482            };
483        }
484        ::std::result::Result::Ok(())
485    }
486
487    // Compute sizes of nested messages
488    #[allow(unused_variables)]
489    fn compute_size(&self) -> u32 {
490        let mut my_size = 0;
491        if !self.operation_id.is_empty() {
492            my_size += ::protobuf::rt::string_size(1, &self.operation_id);
493        }
494        for value in &self.check_errors {
495            let len = value.compute_size();
496            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
497        };
498        if !self.service_config_id.is_empty() {
499            my_size += ::protobuf::rt::string_size(5, &self.service_config_id);
500        }
501        if !self.service_rollout_id.is_empty() {
502            my_size += ::protobuf::rt::string_size(11, &self.service_rollout_id);
503        }
504        if let Some(ref v) = self.check_info.as_ref() {
505            let len = v.compute_size();
506            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
507        }
508        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
509        self.cached_size.set(my_size);
510        my_size
511    }
512
513    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
514        if !self.operation_id.is_empty() {
515            os.write_string(1, &self.operation_id)?;
516        }
517        for v in &self.check_errors {
518            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
519            os.write_raw_varint32(v.get_cached_size())?;
520            v.write_to_with_cached_sizes(os)?;
521        };
522        if !self.service_config_id.is_empty() {
523            os.write_string(5, &self.service_config_id)?;
524        }
525        if !self.service_rollout_id.is_empty() {
526            os.write_string(11, &self.service_rollout_id)?;
527        }
528        if let Some(ref v) = self.check_info.as_ref() {
529            os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?;
530            os.write_raw_varint32(v.get_cached_size())?;
531            v.write_to_with_cached_sizes(os)?;
532        }
533        os.write_unknown_fields(self.get_unknown_fields())?;
534        ::std::result::Result::Ok(())
535    }
536
537    fn get_cached_size(&self) -> u32 {
538        self.cached_size.get()
539    }
540
541    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
542        &self.unknown_fields
543    }
544
545    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
546        &mut self.unknown_fields
547    }
548
549    fn as_any(&self) -> &dyn (::std::any::Any) {
550        self as &dyn (::std::any::Any)
551    }
552    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
553        self as &mut dyn (::std::any::Any)
554    }
555    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
556        self
557    }
558
559    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
560        Self::descriptor_static()
561    }
562
563    fn new() -> CheckResponse {
564        CheckResponse::new()
565    }
566
567    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
568        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
569        descriptor.get(|| {
570            let mut fields = ::std::vec::Vec::new();
571            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
572                "operation_id",
573                |m: &CheckResponse| { &m.operation_id },
574                |m: &mut CheckResponse| { &mut m.operation_id },
575            ));
576            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<super::check_error::CheckError>>(
577                "check_errors",
578                |m: &CheckResponse| { &m.check_errors },
579                |m: &mut CheckResponse| { &mut m.check_errors },
580            ));
581            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
582                "service_config_id",
583                |m: &CheckResponse| { &m.service_config_id },
584                |m: &mut CheckResponse| { &mut m.service_config_id },
585            ));
586            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
587                "service_rollout_id",
588                |m: &CheckResponse| { &m.service_rollout_id },
589                |m: &mut CheckResponse| { &mut m.service_rollout_id },
590            ));
591            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CheckResponse_CheckInfo>>(
592                "check_info",
593                |m: &CheckResponse| { &m.check_info },
594                |m: &mut CheckResponse| { &mut m.check_info },
595            ));
596            ::protobuf::reflect::MessageDescriptor::new_pb_name::<CheckResponse>(
597                "CheckResponse",
598                fields,
599                file_descriptor_proto()
600            )
601        })
602    }
603
604    fn default_instance() -> &'static CheckResponse {
605        static instance: ::protobuf::rt::LazyV2<CheckResponse> = ::protobuf::rt::LazyV2::INIT;
606        instance.get(CheckResponse::new)
607    }
608}
609
610impl ::protobuf::Clear for CheckResponse {
611    fn clear(&mut self) {
612        self.operation_id.clear();
613        self.check_errors.clear();
614        self.service_config_id.clear();
615        self.service_rollout_id.clear();
616        self.check_info.clear();
617        self.unknown_fields.clear();
618    }
619}
620
621impl ::std::fmt::Debug for CheckResponse {
622    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
623        ::protobuf::text_format::fmt(self, f)
624    }
625}
626
627impl ::protobuf::reflect::ProtobufValue for CheckResponse {
628    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
629        ::protobuf::reflect::ReflectValueRef::Message(self)
630    }
631}
632
633#[derive(PartialEq,Clone,Default)]
634pub struct CheckResponse_CheckInfo {
635    // message fields
636    pub unused_arguments: ::protobuf::RepeatedField<::std::string::String>,
637    pub consumer_info: ::protobuf::SingularPtrField<CheckResponse_ConsumerInfo>,
638    // special fields
639    pub unknown_fields: ::protobuf::UnknownFields,
640    pub cached_size: ::protobuf::CachedSize,
641}
642
643impl<'a> ::std::default::Default for &'a CheckResponse_CheckInfo {
644    fn default() -> &'a CheckResponse_CheckInfo {
645        <CheckResponse_CheckInfo as ::protobuf::Message>::default_instance()
646    }
647}
648
649impl CheckResponse_CheckInfo {
650    pub fn new() -> CheckResponse_CheckInfo {
651        ::std::default::Default::default()
652    }
653
654    // repeated string unused_arguments = 1;
655
656
657    pub fn get_unused_arguments(&self) -> &[::std::string::String] {
658        &self.unused_arguments
659    }
660    pub fn clear_unused_arguments(&mut self) {
661        self.unused_arguments.clear();
662    }
663
664    // Param is passed by value, moved
665    pub fn set_unused_arguments(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
666        self.unused_arguments = v;
667    }
668
669    // Mutable pointer to the field.
670    pub fn mut_unused_arguments(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
671        &mut self.unused_arguments
672    }
673
674    // Take field
675    pub fn take_unused_arguments(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
676        ::std::mem::replace(&mut self.unused_arguments, ::protobuf::RepeatedField::new())
677    }
678
679    // .google.api.servicecontrol.v1.CheckResponse.ConsumerInfo consumer_info = 2;
680
681
682    pub fn get_consumer_info(&self) -> &CheckResponse_ConsumerInfo {
683        self.consumer_info.as_ref().unwrap_or_else(|| <CheckResponse_ConsumerInfo as ::protobuf::Message>::default_instance())
684    }
685    pub fn clear_consumer_info(&mut self) {
686        self.consumer_info.clear();
687    }
688
689    pub fn has_consumer_info(&self) -> bool {
690        self.consumer_info.is_some()
691    }
692
693    // Param is passed by value, moved
694    pub fn set_consumer_info(&mut self, v: CheckResponse_ConsumerInfo) {
695        self.consumer_info = ::protobuf::SingularPtrField::some(v);
696    }
697
698    // Mutable pointer to the field.
699    // If field is not initialized, it is initialized with default value first.
700    pub fn mut_consumer_info(&mut self) -> &mut CheckResponse_ConsumerInfo {
701        if self.consumer_info.is_none() {
702            self.consumer_info.set_default();
703        }
704        self.consumer_info.as_mut().unwrap()
705    }
706
707    // Take field
708    pub fn take_consumer_info(&mut self) -> CheckResponse_ConsumerInfo {
709        self.consumer_info.take().unwrap_or_else(|| CheckResponse_ConsumerInfo::new())
710    }
711}
712
713impl ::protobuf::Message for CheckResponse_CheckInfo {
714    fn is_initialized(&self) -> bool {
715        for v in &self.consumer_info {
716            if !v.is_initialized() {
717                return false;
718            }
719        };
720        true
721    }
722
723    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
724        while !is.eof()? {
725            let (field_number, wire_type) = is.read_tag_unpack()?;
726            match field_number {
727                1 => {
728                    ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.unused_arguments)?;
729                },
730                2 => {
731                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.consumer_info)?;
732                },
733                _ => {
734                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
735                },
736            };
737        }
738        ::std::result::Result::Ok(())
739    }
740
741    // Compute sizes of nested messages
742    #[allow(unused_variables)]
743    fn compute_size(&self) -> u32 {
744        let mut my_size = 0;
745        for value in &self.unused_arguments {
746            my_size += ::protobuf::rt::string_size(1, &value);
747        };
748        if let Some(ref v) = self.consumer_info.as_ref() {
749            let len = v.compute_size();
750            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
751        }
752        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
753        self.cached_size.set(my_size);
754        my_size
755    }
756
757    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
758        for v in &self.unused_arguments {
759            os.write_string(1, &v)?;
760        };
761        if let Some(ref v) = self.consumer_info.as_ref() {
762            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
763            os.write_raw_varint32(v.get_cached_size())?;
764            v.write_to_with_cached_sizes(os)?;
765        }
766        os.write_unknown_fields(self.get_unknown_fields())?;
767        ::std::result::Result::Ok(())
768    }
769
770    fn get_cached_size(&self) -> u32 {
771        self.cached_size.get()
772    }
773
774    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
775        &self.unknown_fields
776    }
777
778    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
779        &mut self.unknown_fields
780    }
781
782    fn as_any(&self) -> &dyn (::std::any::Any) {
783        self as &dyn (::std::any::Any)
784    }
785    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
786        self as &mut dyn (::std::any::Any)
787    }
788    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
789        self
790    }
791
792    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
793        Self::descriptor_static()
794    }
795
796    fn new() -> CheckResponse_CheckInfo {
797        CheckResponse_CheckInfo::new()
798    }
799
800    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
801        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
802        descriptor.get(|| {
803            let mut fields = ::std::vec::Vec::new();
804            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
805                "unused_arguments",
806                |m: &CheckResponse_CheckInfo| { &m.unused_arguments },
807                |m: &mut CheckResponse_CheckInfo| { &mut m.unused_arguments },
808            ));
809            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<CheckResponse_ConsumerInfo>>(
810                "consumer_info",
811                |m: &CheckResponse_CheckInfo| { &m.consumer_info },
812                |m: &mut CheckResponse_CheckInfo| { &mut m.consumer_info },
813            ));
814            ::protobuf::reflect::MessageDescriptor::new_pb_name::<CheckResponse_CheckInfo>(
815                "CheckResponse.CheckInfo",
816                fields,
817                file_descriptor_proto()
818            )
819        })
820    }
821
822    fn default_instance() -> &'static CheckResponse_CheckInfo {
823        static instance: ::protobuf::rt::LazyV2<CheckResponse_CheckInfo> = ::protobuf::rt::LazyV2::INIT;
824        instance.get(CheckResponse_CheckInfo::new)
825    }
826}
827
828impl ::protobuf::Clear for CheckResponse_CheckInfo {
829    fn clear(&mut self) {
830        self.unused_arguments.clear();
831        self.consumer_info.clear();
832        self.unknown_fields.clear();
833    }
834}
835
836impl ::std::fmt::Debug for CheckResponse_CheckInfo {
837    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
838        ::protobuf::text_format::fmt(self, f)
839    }
840}
841
842impl ::protobuf::reflect::ProtobufValue for CheckResponse_CheckInfo {
843    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
844        ::protobuf::reflect::ReflectValueRef::Message(self)
845    }
846}
847
848#[derive(PartialEq,Clone,Default)]
849pub struct CheckResponse_ConsumerInfo {
850    // message fields
851    pub project_number: i64,
852    pub field_type: CheckResponse_ConsumerInfo_ConsumerType,
853    pub consumer_number: i64,
854    // special fields
855    pub unknown_fields: ::protobuf::UnknownFields,
856    pub cached_size: ::protobuf::CachedSize,
857}
858
859impl<'a> ::std::default::Default for &'a CheckResponse_ConsumerInfo {
860    fn default() -> &'a CheckResponse_ConsumerInfo {
861        <CheckResponse_ConsumerInfo as ::protobuf::Message>::default_instance()
862    }
863}
864
865impl CheckResponse_ConsumerInfo {
866    pub fn new() -> CheckResponse_ConsumerInfo {
867        ::std::default::Default::default()
868    }
869
870    // int64 project_number = 1;
871
872
873    pub fn get_project_number(&self) -> i64 {
874        self.project_number
875    }
876    pub fn clear_project_number(&mut self) {
877        self.project_number = 0;
878    }
879
880    // Param is passed by value, moved
881    pub fn set_project_number(&mut self, v: i64) {
882        self.project_number = v;
883    }
884
885    // .google.api.servicecontrol.v1.CheckResponse.ConsumerInfo.ConsumerType type = 2;
886
887
888    pub fn get_field_type(&self) -> CheckResponse_ConsumerInfo_ConsumerType {
889        self.field_type
890    }
891    pub fn clear_field_type(&mut self) {
892        self.field_type = CheckResponse_ConsumerInfo_ConsumerType::CONSUMER_TYPE_UNSPECIFIED;
893    }
894
895    // Param is passed by value, moved
896    pub fn set_field_type(&mut self, v: CheckResponse_ConsumerInfo_ConsumerType) {
897        self.field_type = v;
898    }
899
900    // int64 consumer_number = 3;
901
902
903    pub fn get_consumer_number(&self) -> i64 {
904        self.consumer_number
905    }
906    pub fn clear_consumer_number(&mut self) {
907        self.consumer_number = 0;
908    }
909
910    // Param is passed by value, moved
911    pub fn set_consumer_number(&mut self, v: i64) {
912        self.consumer_number = v;
913    }
914}
915
916impl ::protobuf::Message for CheckResponse_ConsumerInfo {
917    fn is_initialized(&self) -> bool {
918        true
919    }
920
921    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
922        while !is.eof()? {
923            let (field_number, wire_type) = is.read_tag_unpack()?;
924            match field_number {
925                1 => {
926                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
927                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
928                    }
929                    let tmp = is.read_int64()?;
930                    self.project_number = tmp;
931                },
932                2 => {
933                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.field_type, 2, &mut self.unknown_fields)?
934                },
935                3 => {
936                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
937                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
938                    }
939                    let tmp = is.read_int64()?;
940                    self.consumer_number = tmp;
941                },
942                _ => {
943                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
944                },
945            };
946        }
947        ::std::result::Result::Ok(())
948    }
949
950    // Compute sizes of nested messages
951    #[allow(unused_variables)]
952    fn compute_size(&self) -> u32 {
953        let mut my_size = 0;
954        if self.project_number != 0 {
955            my_size += ::protobuf::rt::value_size(1, self.project_number, ::protobuf::wire_format::WireTypeVarint);
956        }
957        if self.field_type != CheckResponse_ConsumerInfo_ConsumerType::CONSUMER_TYPE_UNSPECIFIED {
958            my_size += ::protobuf::rt::enum_size(2, self.field_type);
959        }
960        if self.consumer_number != 0 {
961            my_size += ::protobuf::rt::value_size(3, self.consumer_number, ::protobuf::wire_format::WireTypeVarint);
962        }
963        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
964        self.cached_size.set(my_size);
965        my_size
966    }
967
968    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
969        if self.project_number != 0 {
970            os.write_int64(1, self.project_number)?;
971        }
972        if self.field_type != CheckResponse_ConsumerInfo_ConsumerType::CONSUMER_TYPE_UNSPECIFIED {
973            os.write_enum(2, ::protobuf::ProtobufEnum::value(&self.field_type))?;
974        }
975        if self.consumer_number != 0 {
976            os.write_int64(3, self.consumer_number)?;
977        }
978        os.write_unknown_fields(self.get_unknown_fields())?;
979        ::std::result::Result::Ok(())
980    }
981
982    fn get_cached_size(&self) -> u32 {
983        self.cached_size.get()
984    }
985
986    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
987        &self.unknown_fields
988    }
989
990    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
991        &mut self.unknown_fields
992    }
993
994    fn as_any(&self) -> &dyn (::std::any::Any) {
995        self as &dyn (::std::any::Any)
996    }
997    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
998        self as &mut dyn (::std::any::Any)
999    }
1000    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1001        self
1002    }
1003
1004    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1005        Self::descriptor_static()
1006    }
1007
1008    fn new() -> CheckResponse_ConsumerInfo {
1009        CheckResponse_ConsumerInfo::new()
1010    }
1011
1012    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1013        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1014        descriptor.get(|| {
1015            let mut fields = ::std::vec::Vec::new();
1016            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
1017                "project_number",
1018                |m: &CheckResponse_ConsumerInfo| { &m.project_number },
1019                |m: &mut CheckResponse_ConsumerInfo| { &mut m.project_number },
1020            ));
1021            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<CheckResponse_ConsumerInfo_ConsumerType>>(
1022                "type",
1023                |m: &CheckResponse_ConsumerInfo| { &m.field_type },
1024                |m: &mut CheckResponse_ConsumerInfo| { &mut m.field_type },
1025            ));
1026            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
1027                "consumer_number",
1028                |m: &CheckResponse_ConsumerInfo| { &m.consumer_number },
1029                |m: &mut CheckResponse_ConsumerInfo| { &mut m.consumer_number },
1030            ));
1031            ::protobuf::reflect::MessageDescriptor::new_pb_name::<CheckResponse_ConsumerInfo>(
1032                "CheckResponse.ConsumerInfo",
1033                fields,
1034                file_descriptor_proto()
1035            )
1036        })
1037    }
1038
1039    fn default_instance() -> &'static CheckResponse_ConsumerInfo {
1040        static instance: ::protobuf::rt::LazyV2<CheckResponse_ConsumerInfo> = ::protobuf::rt::LazyV2::INIT;
1041        instance.get(CheckResponse_ConsumerInfo::new)
1042    }
1043}
1044
1045impl ::protobuf::Clear for CheckResponse_ConsumerInfo {
1046    fn clear(&mut self) {
1047        self.project_number = 0;
1048        self.field_type = CheckResponse_ConsumerInfo_ConsumerType::CONSUMER_TYPE_UNSPECIFIED;
1049        self.consumer_number = 0;
1050        self.unknown_fields.clear();
1051    }
1052}
1053
1054impl ::std::fmt::Debug for CheckResponse_ConsumerInfo {
1055    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1056        ::protobuf::text_format::fmt(self, f)
1057    }
1058}
1059
1060impl ::protobuf::reflect::ProtobufValue for CheckResponse_ConsumerInfo {
1061    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1062        ::protobuf::reflect::ReflectValueRef::Message(self)
1063    }
1064}
1065
1066#[derive(Clone,PartialEq,Eq,Debug,Hash)]
1067pub enum CheckResponse_ConsumerInfo_ConsumerType {
1068    CONSUMER_TYPE_UNSPECIFIED = 0,
1069    PROJECT = 1,
1070    FOLDER = 2,
1071    ORGANIZATION = 3,
1072    SERVICE_SPECIFIC = 4,
1073}
1074
1075impl ::protobuf::ProtobufEnum for CheckResponse_ConsumerInfo_ConsumerType {
1076    fn value(&self) -> i32 {
1077        *self as i32
1078    }
1079
1080    fn from_i32(value: i32) -> ::std::option::Option<CheckResponse_ConsumerInfo_ConsumerType> {
1081        match value {
1082            0 => ::std::option::Option::Some(CheckResponse_ConsumerInfo_ConsumerType::CONSUMER_TYPE_UNSPECIFIED),
1083            1 => ::std::option::Option::Some(CheckResponse_ConsumerInfo_ConsumerType::PROJECT),
1084            2 => ::std::option::Option::Some(CheckResponse_ConsumerInfo_ConsumerType::FOLDER),
1085            3 => ::std::option::Option::Some(CheckResponse_ConsumerInfo_ConsumerType::ORGANIZATION),
1086            4 => ::std::option::Option::Some(CheckResponse_ConsumerInfo_ConsumerType::SERVICE_SPECIFIC),
1087            _ => ::std::option::Option::None
1088        }
1089    }
1090
1091    fn values() -> &'static [Self] {
1092        static values: &'static [CheckResponse_ConsumerInfo_ConsumerType] = &[
1093            CheckResponse_ConsumerInfo_ConsumerType::CONSUMER_TYPE_UNSPECIFIED,
1094            CheckResponse_ConsumerInfo_ConsumerType::PROJECT,
1095            CheckResponse_ConsumerInfo_ConsumerType::FOLDER,
1096            CheckResponse_ConsumerInfo_ConsumerType::ORGANIZATION,
1097            CheckResponse_ConsumerInfo_ConsumerType::SERVICE_SPECIFIC,
1098        ];
1099        values
1100    }
1101
1102    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
1103        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
1104        descriptor.get(|| {
1105            ::protobuf::reflect::EnumDescriptor::new_pb_name::<CheckResponse_ConsumerInfo_ConsumerType>("CheckResponse.ConsumerInfo.ConsumerType", file_descriptor_proto())
1106        })
1107    }
1108}
1109
1110impl ::std::marker::Copy for CheckResponse_ConsumerInfo_ConsumerType {
1111}
1112
1113impl ::std::default::Default for CheckResponse_ConsumerInfo_ConsumerType {
1114    fn default() -> Self {
1115        CheckResponse_ConsumerInfo_ConsumerType::CONSUMER_TYPE_UNSPECIFIED
1116    }
1117}
1118
1119impl ::protobuf::reflect::ProtobufValue for CheckResponse_ConsumerInfo_ConsumerType {
1120    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1121        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
1122    }
1123}
1124
1125#[derive(PartialEq,Clone,Default)]
1126pub struct ReportRequest {
1127    // message fields
1128    pub service_name: ::std::string::String,
1129    pub operations: ::protobuf::RepeatedField<super::operation::Operation>,
1130    pub service_config_id: ::std::string::String,
1131    // special fields
1132    pub unknown_fields: ::protobuf::UnknownFields,
1133    pub cached_size: ::protobuf::CachedSize,
1134}
1135
1136impl<'a> ::std::default::Default for &'a ReportRequest {
1137    fn default() -> &'a ReportRequest {
1138        <ReportRequest as ::protobuf::Message>::default_instance()
1139    }
1140}
1141
1142impl ReportRequest {
1143    pub fn new() -> ReportRequest {
1144        ::std::default::Default::default()
1145    }
1146
1147    // string service_name = 1;
1148
1149
1150    pub fn get_service_name(&self) -> &str {
1151        &self.service_name
1152    }
1153    pub fn clear_service_name(&mut self) {
1154        self.service_name.clear();
1155    }
1156
1157    // Param is passed by value, moved
1158    pub fn set_service_name(&mut self, v: ::std::string::String) {
1159        self.service_name = v;
1160    }
1161
1162    // Mutable pointer to the field.
1163    // If field is not initialized, it is initialized with default value first.
1164    pub fn mut_service_name(&mut self) -> &mut ::std::string::String {
1165        &mut self.service_name
1166    }
1167
1168    // Take field
1169    pub fn take_service_name(&mut self) -> ::std::string::String {
1170        ::std::mem::replace(&mut self.service_name, ::std::string::String::new())
1171    }
1172
1173    // repeated .google.api.servicecontrol.v1.Operation operations = 2;
1174
1175
1176    pub fn get_operations(&self) -> &[super::operation::Operation] {
1177        &self.operations
1178    }
1179    pub fn clear_operations(&mut self) {
1180        self.operations.clear();
1181    }
1182
1183    // Param is passed by value, moved
1184    pub fn set_operations(&mut self, v: ::protobuf::RepeatedField<super::operation::Operation>) {
1185        self.operations = v;
1186    }
1187
1188    // Mutable pointer to the field.
1189    pub fn mut_operations(&mut self) -> &mut ::protobuf::RepeatedField<super::operation::Operation> {
1190        &mut self.operations
1191    }
1192
1193    // Take field
1194    pub fn take_operations(&mut self) -> ::protobuf::RepeatedField<super::operation::Operation> {
1195        ::std::mem::replace(&mut self.operations, ::protobuf::RepeatedField::new())
1196    }
1197
1198    // string service_config_id = 3;
1199
1200
1201    pub fn get_service_config_id(&self) -> &str {
1202        &self.service_config_id
1203    }
1204    pub fn clear_service_config_id(&mut self) {
1205        self.service_config_id.clear();
1206    }
1207
1208    // Param is passed by value, moved
1209    pub fn set_service_config_id(&mut self, v: ::std::string::String) {
1210        self.service_config_id = v;
1211    }
1212
1213    // Mutable pointer to the field.
1214    // If field is not initialized, it is initialized with default value first.
1215    pub fn mut_service_config_id(&mut self) -> &mut ::std::string::String {
1216        &mut self.service_config_id
1217    }
1218
1219    // Take field
1220    pub fn take_service_config_id(&mut self) -> ::std::string::String {
1221        ::std::mem::replace(&mut self.service_config_id, ::std::string::String::new())
1222    }
1223}
1224
1225impl ::protobuf::Message for ReportRequest {
1226    fn is_initialized(&self) -> bool {
1227        for v in &self.operations {
1228            if !v.is_initialized() {
1229                return false;
1230            }
1231        };
1232        true
1233    }
1234
1235    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1236        while !is.eof()? {
1237            let (field_number, wire_type) = is.read_tag_unpack()?;
1238            match field_number {
1239                1 => {
1240                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_name)?;
1241                },
1242                2 => {
1243                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.operations)?;
1244                },
1245                3 => {
1246                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_config_id)?;
1247                },
1248                _ => {
1249                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1250                },
1251            };
1252        }
1253        ::std::result::Result::Ok(())
1254    }
1255
1256    // Compute sizes of nested messages
1257    #[allow(unused_variables)]
1258    fn compute_size(&self) -> u32 {
1259        let mut my_size = 0;
1260        if !self.service_name.is_empty() {
1261            my_size += ::protobuf::rt::string_size(1, &self.service_name);
1262        }
1263        for value in &self.operations {
1264            let len = value.compute_size();
1265            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1266        };
1267        if !self.service_config_id.is_empty() {
1268            my_size += ::protobuf::rt::string_size(3, &self.service_config_id);
1269        }
1270        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1271        self.cached_size.set(my_size);
1272        my_size
1273    }
1274
1275    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1276        if !self.service_name.is_empty() {
1277            os.write_string(1, &self.service_name)?;
1278        }
1279        for v in &self.operations {
1280            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1281            os.write_raw_varint32(v.get_cached_size())?;
1282            v.write_to_with_cached_sizes(os)?;
1283        };
1284        if !self.service_config_id.is_empty() {
1285            os.write_string(3, &self.service_config_id)?;
1286        }
1287        os.write_unknown_fields(self.get_unknown_fields())?;
1288        ::std::result::Result::Ok(())
1289    }
1290
1291    fn get_cached_size(&self) -> u32 {
1292        self.cached_size.get()
1293    }
1294
1295    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1296        &self.unknown_fields
1297    }
1298
1299    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1300        &mut self.unknown_fields
1301    }
1302
1303    fn as_any(&self) -> &dyn (::std::any::Any) {
1304        self as &dyn (::std::any::Any)
1305    }
1306    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1307        self as &mut dyn (::std::any::Any)
1308    }
1309    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1310        self
1311    }
1312
1313    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1314        Self::descriptor_static()
1315    }
1316
1317    fn new() -> ReportRequest {
1318        ReportRequest::new()
1319    }
1320
1321    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1322        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1323        descriptor.get(|| {
1324            let mut fields = ::std::vec::Vec::new();
1325            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1326                "service_name",
1327                |m: &ReportRequest| { &m.service_name },
1328                |m: &mut ReportRequest| { &mut m.service_name },
1329            ));
1330            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<super::operation::Operation>>(
1331                "operations",
1332                |m: &ReportRequest| { &m.operations },
1333                |m: &mut ReportRequest| { &mut m.operations },
1334            ));
1335            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1336                "service_config_id",
1337                |m: &ReportRequest| { &m.service_config_id },
1338                |m: &mut ReportRequest| { &mut m.service_config_id },
1339            ));
1340            ::protobuf::reflect::MessageDescriptor::new_pb_name::<ReportRequest>(
1341                "ReportRequest",
1342                fields,
1343                file_descriptor_proto()
1344            )
1345        })
1346    }
1347
1348    fn default_instance() -> &'static ReportRequest {
1349        static instance: ::protobuf::rt::LazyV2<ReportRequest> = ::protobuf::rt::LazyV2::INIT;
1350        instance.get(ReportRequest::new)
1351    }
1352}
1353
1354impl ::protobuf::Clear for ReportRequest {
1355    fn clear(&mut self) {
1356        self.service_name.clear();
1357        self.operations.clear();
1358        self.service_config_id.clear();
1359        self.unknown_fields.clear();
1360    }
1361}
1362
1363impl ::std::fmt::Debug for ReportRequest {
1364    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1365        ::protobuf::text_format::fmt(self, f)
1366    }
1367}
1368
1369impl ::protobuf::reflect::ProtobufValue for ReportRequest {
1370    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1371        ::protobuf::reflect::ReflectValueRef::Message(self)
1372    }
1373}
1374
1375#[derive(PartialEq,Clone,Default)]
1376pub struct ReportResponse {
1377    // message fields
1378    pub report_errors: ::protobuf::RepeatedField<ReportResponse_ReportError>,
1379    pub service_config_id: ::std::string::String,
1380    pub service_rollout_id: ::std::string::String,
1381    // special fields
1382    pub unknown_fields: ::protobuf::UnknownFields,
1383    pub cached_size: ::protobuf::CachedSize,
1384}
1385
1386impl<'a> ::std::default::Default for &'a ReportResponse {
1387    fn default() -> &'a ReportResponse {
1388        <ReportResponse as ::protobuf::Message>::default_instance()
1389    }
1390}
1391
1392impl ReportResponse {
1393    pub fn new() -> ReportResponse {
1394        ::std::default::Default::default()
1395    }
1396
1397    // repeated .google.api.servicecontrol.v1.ReportResponse.ReportError report_errors = 1;
1398
1399
1400    pub fn get_report_errors(&self) -> &[ReportResponse_ReportError] {
1401        &self.report_errors
1402    }
1403    pub fn clear_report_errors(&mut self) {
1404        self.report_errors.clear();
1405    }
1406
1407    // Param is passed by value, moved
1408    pub fn set_report_errors(&mut self, v: ::protobuf::RepeatedField<ReportResponse_ReportError>) {
1409        self.report_errors = v;
1410    }
1411
1412    // Mutable pointer to the field.
1413    pub fn mut_report_errors(&mut self) -> &mut ::protobuf::RepeatedField<ReportResponse_ReportError> {
1414        &mut self.report_errors
1415    }
1416
1417    // Take field
1418    pub fn take_report_errors(&mut self) -> ::protobuf::RepeatedField<ReportResponse_ReportError> {
1419        ::std::mem::replace(&mut self.report_errors, ::protobuf::RepeatedField::new())
1420    }
1421
1422    // string service_config_id = 2;
1423
1424
1425    pub fn get_service_config_id(&self) -> &str {
1426        &self.service_config_id
1427    }
1428    pub fn clear_service_config_id(&mut self) {
1429        self.service_config_id.clear();
1430    }
1431
1432    // Param is passed by value, moved
1433    pub fn set_service_config_id(&mut self, v: ::std::string::String) {
1434        self.service_config_id = v;
1435    }
1436
1437    // Mutable pointer to the field.
1438    // If field is not initialized, it is initialized with default value first.
1439    pub fn mut_service_config_id(&mut self) -> &mut ::std::string::String {
1440        &mut self.service_config_id
1441    }
1442
1443    // Take field
1444    pub fn take_service_config_id(&mut self) -> ::std::string::String {
1445        ::std::mem::replace(&mut self.service_config_id, ::std::string::String::new())
1446    }
1447
1448    // string service_rollout_id = 4;
1449
1450
1451    pub fn get_service_rollout_id(&self) -> &str {
1452        &self.service_rollout_id
1453    }
1454    pub fn clear_service_rollout_id(&mut self) {
1455        self.service_rollout_id.clear();
1456    }
1457
1458    // Param is passed by value, moved
1459    pub fn set_service_rollout_id(&mut self, v: ::std::string::String) {
1460        self.service_rollout_id = v;
1461    }
1462
1463    // Mutable pointer to the field.
1464    // If field is not initialized, it is initialized with default value first.
1465    pub fn mut_service_rollout_id(&mut self) -> &mut ::std::string::String {
1466        &mut self.service_rollout_id
1467    }
1468
1469    // Take field
1470    pub fn take_service_rollout_id(&mut self) -> ::std::string::String {
1471        ::std::mem::replace(&mut self.service_rollout_id, ::std::string::String::new())
1472    }
1473}
1474
1475impl ::protobuf::Message for ReportResponse {
1476    fn is_initialized(&self) -> bool {
1477        for v in &self.report_errors {
1478            if !v.is_initialized() {
1479                return false;
1480            }
1481        };
1482        true
1483    }
1484
1485    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1486        while !is.eof()? {
1487            let (field_number, wire_type) = is.read_tag_unpack()?;
1488            match field_number {
1489                1 => {
1490                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.report_errors)?;
1491                },
1492                2 => {
1493                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_config_id)?;
1494                },
1495                4 => {
1496                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.service_rollout_id)?;
1497                },
1498                _ => {
1499                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1500                },
1501            };
1502        }
1503        ::std::result::Result::Ok(())
1504    }
1505
1506    // Compute sizes of nested messages
1507    #[allow(unused_variables)]
1508    fn compute_size(&self) -> u32 {
1509        let mut my_size = 0;
1510        for value in &self.report_errors {
1511            let len = value.compute_size();
1512            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1513        };
1514        if !self.service_config_id.is_empty() {
1515            my_size += ::protobuf::rt::string_size(2, &self.service_config_id);
1516        }
1517        if !self.service_rollout_id.is_empty() {
1518            my_size += ::protobuf::rt::string_size(4, &self.service_rollout_id);
1519        }
1520        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1521        self.cached_size.set(my_size);
1522        my_size
1523    }
1524
1525    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1526        for v in &self.report_errors {
1527            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1528            os.write_raw_varint32(v.get_cached_size())?;
1529            v.write_to_with_cached_sizes(os)?;
1530        };
1531        if !self.service_config_id.is_empty() {
1532            os.write_string(2, &self.service_config_id)?;
1533        }
1534        if !self.service_rollout_id.is_empty() {
1535            os.write_string(4, &self.service_rollout_id)?;
1536        }
1537        os.write_unknown_fields(self.get_unknown_fields())?;
1538        ::std::result::Result::Ok(())
1539    }
1540
1541    fn get_cached_size(&self) -> u32 {
1542        self.cached_size.get()
1543    }
1544
1545    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1546        &self.unknown_fields
1547    }
1548
1549    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1550        &mut self.unknown_fields
1551    }
1552
1553    fn as_any(&self) -> &dyn (::std::any::Any) {
1554        self as &dyn (::std::any::Any)
1555    }
1556    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1557        self as &mut dyn (::std::any::Any)
1558    }
1559    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1560        self
1561    }
1562
1563    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1564        Self::descriptor_static()
1565    }
1566
1567    fn new() -> ReportResponse {
1568        ReportResponse::new()
1569    }
1570
1571    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1572        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1573        descriptor.get(|| {
1574            let mut fields = ::std::vec::Vec::new();
1575            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<ReportResponse_ReportError>>(
1576                "report_errors",
1577                |m: &ReportResponse| { &m.report_errors },
1578                |m: &mut ReportResponse| { &mut m.report_errors },
1579            ));
1580            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1581                "service_config_id",
1582                |m: &ReportResponse| { &m.service_config_id },
1583                |m: &mut ReportResponse| { &mut m.service_config_id },
1584            ));
1585            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1586                "service_rollout_id",
1587                |m: &ReportResponse| { &m.service_rollout_id },
1588                |m: &mut ReportResponse| { &mut m.service_rollout_id },
1589            ));
1590            ::protobuf::reflect::MessageDescriptor::new_pb_name::<ReportResponse>(
1591                "ReportResponse",
1592                fields,
1593                file_descriptor_proto()
1594            )
1595        })
1596    }
1597
1598    fn default_instance() -> &'static ReportResponse {
1599        static instance: ::protobuf::rt::LazyV2<ReportResponse> = ::protobuf::rt::LazyV2::INIT;
1600        instance.get(ReportResponse::new)
1601    }
1602}
1603
1604impl ::protobuf::Clear for ReportResponse {
1605    fn clear(&mut self) {
1606        self.report_errors.clear();
1607        self.service_config_id.clear();
1608        self.service_rollout_id.clear();
1609        self.unknown_fields.clear();
1610    }
1611}
1612
1613impl ::std::fmt::Debug for ReportResponse {
1614    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1615        ::protobuf::text_format::fmt(self, f)
1616    }
1617}
1618
1619impl ::protobuf::reflect::ProtobufValue for ReportResponse {
1620    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1621        ::protobuf::reflect::ReflectValueRef::Message(self)
1622    }
1623}
1624
1625#[derive(PartialEq,Clone,Default)]
1626pub struct ReportResponse_ReportError {
1627    // message fields
1628    pub operation_id: ::std::string::String,
1629    pub status: ::protobuf::SingularPtrField<super::status::Status>,
1630    // special fields
1631    pub unknown_fields: ::protobuf::UnknownFields,
1632    pub cached_size: ::protobuf::CachedSize,
1633}
1634
1635impl<'a> ::std::default::Default for &'a ReportResponse_ReportError {
1636    fn default() -> &'a ReportResponse_ReportError {
1637        <ReportResponse_ReportError as ::protobuf::Message>::default_instance()
1638    }
1639}
1640
1641impl ReportResponse_ReportError {
1642    pub fn new() -> ReportResponse_ReportError {
1643        ::std::default::Default::default()
1644    }
1645
1646    // string operation_id = 1;
1647
1648
1649    pub fn get_operation_id(&self) -> &str {
1650        &self.operation_id
1651    }
1652    pub fn clear_operation_id(&mut self) {
1653        self.operation_id.clear();
1654    }
1655
1656    // Param is passed by value, moved
1657    pub fn set_operation_id(&mut self, v: ::std::string::String) {
1658        self.operation_id = v;
1659    }
1660
1661    // Mutable pointer to the field.
1662    // If field is not initialized, it is initialized with default value first.
1663    pub fn mut_operation_id(&mut self) -> &mut ::std::string::String {
1664        &mut self.operation_id
1665    }
1666
1667    // Take field
1668    pub fn take_operation_id(&mut self) -> ::std::string::String {
1669        ::std::mem::replace(&mut self.operation_id, ::std::string::String::new())
1670    }
1671
1672    // .google.rpc.Status status = 2;
1673
1674
1675    pub fn get_status(&self) -> &super::status::Status {
1676        self.status.as_ref().unwrap_or_else(|| <super::status::Status as ::protobuf::Message>::default_instance())
1677    }
1678    pub fn clear_status(&mut self) {
1679        self.status.clear();
1680    }
1681
1682    pub fn has_status(&self) -> bool {
1683        self.status.is_some()
1684    }
1685
1686    // Param is passed by value, moved
1687    pub fn set_status(&mut self, v: super::status::Status) {
1688        self.status = ::protobuf::SingularPtrField::some(v);
1689    }
1690
1691    // Mutable pointer to the field.
1692    // If field is not initialized, it is initialized with default value first.
1693    pub fn mut_status(&mut self) -> &mut super::status::Status {
1694        if self.status.is_none() {
1695            self.status.set_default();
1696        }
1697        self.status.as_mut().unwrap()
1698    }
1699
1700    // Take field
1701    pub fn take_status(&mut self) -> super::status::Status {
1702        self.status.take().unwrap_or_else(|| super::status::Status::new())
1703    }
1704}
1705
1706impl ::protobuf::Message for ReportResponse_ReportError {
1707    fn is_initialized(&self) -> bool {
1708        for v in &self.status {
1709            if !v.is_initialized() {
1710                return false;
1711            }
1712        };
1713        true
1714    }
1715
1716    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1717        while !is.eof()? {
1718            let (field_number, wire_type) = is.read_tag_unpack()?;
1719            match field_number {
1720                1 => {
1721                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.operation_id)?;
1722                },
1723                2 => {
1724                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.status)?;
1725                },
1726                _ => {
1727                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1728                },
1729            };
1730        }
1731        ::std::result::Result::Ok(())
1732    }
1733
1734    // Compute sizes of nested messages
1735    #[allow(unused_variables)]
1736    fn compute_size(&self) -> u32 {
1737        let mut my_size = 0;
1738        if !self.operation_id.is_empty() {
1739            my_size += ::protobuf::rt::string_size(1, &self.operation_id);
1740        }
1741        if let Some(ref v) = self.status.as_ref() {
1742            let len = v.compute_size();
1743            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1744        }
1745        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1746        self.cached_size.set(my_size);
1747        my_size
1748    }
1749
1750    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1751        if !self.operation_id.is_empty() {
1752            os.write_string(1, &self.operation_id)?;
1753        }
1754        if let Some(ref v) = self.status.as_ref() {
1755            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1756            os.write_raw_varint32(v.get_cached_size())?;
1757            v.write_to_with_cached_sizes(os)?;
1758        }
1759        os.write_unknown_fields(self.get_unknown_fields())?;
1760        ::std::result::Result::Ok(())
1761    }
1762
1763    fn get_cached_size(&self) -> u32 {
1764        self.cached_size.get()
1765    }
1766
1767    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1768        &self.unknown_fields
1769    }
1770
1771    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1772        &mut self.unknown_fields
1773    }
1774
1775    fn as_any(&self) -> &dyn (::std::any::Any) {
1776        self as &dyn (::std::any::Any)
1777    }
1778    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1779        self as &mut dyn (::std::any::Any)
1780    }
1781    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1782        self
1783    }
1784
1785    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1786        Self::descriptor_static()
1787    }
1788
1789    fn new() -> ReportResponse_ReportError {
1790        ReportResponse_ReportError::new()
1791    }
1792
1793    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1794        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1795        descriptor.get(|| {
1796            let mut fields = ::std::vec::Vec::new();
1797            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1798                "operation_id",
1799                |m: &ReportResponse_ReportError| { &m.operation_id },
1800                |m: &mut ReportResponse_ReportError| { &mut m.operation_id },
1801            ));
1802            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<super::status::Status>>(
1803                "status",
1804                |m: &ReportResponse_ReportError| { &m.status },
1805                |m: &mut ReportResponse_ReportError| { &mut m.status },
1806            ));
1807            ::protobuf::reflect::MessageDescriptor::new_pb_name::<ReportResponse_ReportError>(
1808                "ReportResponse.ReportError",
1809                fields,
1810                file_descriptor_proto()
1811            )
1812        })
1813    }
1814
1815    fn default_instance() -> &'static ReportResponse_ReportError {
1816        static instance: ::protobuf::rt::LazyV2<ReportResponse_ReportError> = ::protobuf::rt::LazyV2::INIT;
1817        instance.get(ReportResponse_ReportError::new)
1818    }
1819}
1820
1821impl ::protobuf::Clear for ReportResponse_ReportError {
1822    fn clear(&mut self) {
1823        self.operation_id.clear();
1824        self.status.clear();
1825        self.unknown_fields.clear();
1826    }
1827}
1828
1829impl ::std::fmt::Debug for ReportResponse_ReportError {
1830    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1831        ::protobuf::text_format::fmt(self, f)
1832    }
1833}
1834
1835impl ::protobuf::reflect::ProtobufValue for ReportResponse_ReportError {
1836    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1837        ::protobuf::reflect::ReflectValueRef::Message(self)
1838    }
1839}
1840
1841static file_descriptor_proto_data: &'static [u8] = b"\
1842    \n5google/api/servicecontrol/v1/service_controller.proto\x12\x1cgoogle.a\
1843    pi.servicecontrol.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/a\
1844    pi/client.proto\x1a.google/api/servicecontrol/v1/check_error.proto\x1a,g\
1845    oogle/api/servicecontrol/v1/operation.proto\x1a\x17google/rpc/status.pro\
1846    to\"\xa4\x01\n\x0cCheckRequest\x12!\n\x0cservice_name\x18\x01\x20\x01(\t\
1847    R\x0bserviceName\x12E\n\toperation\x18\x02\x20\x01(\x0b2'.google.api.ser\
1848    vicecontrol.v1.OperationR\toperation\x12*\n\x11service_config_id\x18\x04\
1849    \x20\x01(\tR\x0fserviceConfigId\"\xf3\x05\n\rCheckResponse\x12!\n\x0cope\
1850    ration_id\x18\x01\x20\x01(\tR\x0boperationId\x12K\n\x0ccheck_errors\x18\
1851    \x02\x20\x03(\x0b2(.google.api.servicecontrol.v1.CheckErrorR\x0bcheckErr\
1852    ors\x12*\n\x11service_config_id\x18\x05\x20\x01(\tR\x0fserviceConfigId\
1853    \x12,\n\x12service_rollout_id\x18\x0b\x20\x01(\tR\x10serviceRolloutId\
1854    \x12T\n\ncheck_info\x18\x06\x20\x01(\x0b25.google.api.servicecontrol.v1.\
1855    CheckResponse.CheckInfoR\tcheckInfo\x1a\x95\x01\n\tCheckInfo\x12)\n\x10u\
1856    nused_arguments\x18\x01\x20\x03(\tR\x0funusedArguments\x12]\n\rconsumer_\
1857    info\x18\x02\x20\x01(\x0b28.google.api.servicecontrol.v1.CheckResponse.C\
1858    onsumerInfoR\x0cconsumerInfo\x1a\xa9\x02\n\x0cConsumerInfo\x12%\n\x0epro\
1859    ject_number\x18\x01\x20\x01(\x03R\rprojectNumber\x12Y\n\x04type\x18\x02\
1860    \x20\x01(\x0e2E.google.api.servicecontrol.v1.CheckResponse.ConsumerInfo.\
1861    ConsumerTypeR\x04type\x12'\n\x0fconsumer_number\x18\x03\x20\x01(\x03R\
1862    \x0econsumerNumber\"n\n\x0cConsumerType\x12\x1d\n\x19CONSUMER_TYPE_UNSPE\
1863    CIFIED\x10\0\x12\x0b\n\x07PROJECT\x10\x01\x12\n\n\x06FOLDER\x10\x02\x12\
1864    \x10\n\x0cORGANIZATION\x10\x03\x12\x14\n\x10SERVICE_SPECIFIC\x10\x04\"\
1865    \xa7\x01\n\rReportRequest\x12!\n\x0cservice_name\x18\x01\x20\x01(\tR\x0b\
1866    serviceName\x12G\n\noperations\x18\x02\x20\x03(\x0b2'.google.api.service\
1867    control.v1.OperationR\noperations\x12*\n\x11service_config_id\x18\x03\
1868    \x20\x01(\tR\x0fserviceConfigId\"\xa7\x02\n\x0eReportResponse\x12]\n\rre\
1869    port_errors\x18\x01\x20\x03(\x0b28.google.api.servicecontrol.v1.ReportRe\
1870    sponse.ReportErrorR\x0creportErrors\x12*\n\x11service_config_id\x18\x02\
1871    \x20\x01(\tR\x0fserviceConfigId\x12,\n\x12service_rollout_id\x18\x04\x20\
1872    \x01(\tR\x10serviceRolloutId\x1a\\\n\x0bReportError\x12!\n\x0coperation_\
1873    id\x18\x01\x20\x01(\tR\x0boperationId\x12*\n\x06status\x18\x02\x20\x01(\
1874    \x0b2\x12.google.rpc.StatusR\x06status2\xbc\x03\n\x11ServiceController\
1875    \x12\x8e\x01\n\x05Check\x12*.google.api.servicecontrol.v1.CheckRequest\
1876    \x1a+.google.api.servicecontrol.v1.CheckResponse\",\x82\xd3\xe4\x93\x02&\
1877    \"!/v1/services/{service_name}:check:\x01*\x12\x92\x01\n\x06Report\x12+.\
1878    google.api.servicecontrol.v1.ReportRequest\x1a,.google.api.servicecontro\
1879    l.v1.ReportResponse\"-\x82\xd3\xe4\x93\x02'\"\"/v1/services/{service_nam\
1880    e}:report:\x01*\x1a\x80\x01\xd2A]https://www.googleapis.com/auth/cloud-p\
1881    latform,https://www.googleapis.com/auth/servicecontrol\xcaA\x1dserviceco\
1882    ntrol.googleapis.comB\xf8\x01\n\x20com.google.api.servicecontrol.v1B\x16\
1883    ServiceControllerProtoP\x01ZJcloud.google.com/go/servicecontrol/apiv1/se\
1884    rvicecontrolpb;servicecontrolpb\xf8\x01\x01\xa2\x02\x04GASC\xaa\x02\x1eG\
1885    oogle.Cloud.ServiceControl.V1\xca\x02\x1eGoogle\\Cloud\\ServiceControl\\\
1886    V1\xea\x02!Google::Cloud::ServiceControl::V1J\xd3J\n\x07\x12\x05\x0e\0\
1887    \xfe\x01\x01\n\xbc\x04\n\x01\x0c\x12\x03\x0e\0\x122\xb1\x04\x20Copyright\
1888    \x202021\x20Google\x20LLC\n\n\x20Licensed\x20under\x20the\x20Apache\x20L\
1889    icense,\x20Version\x202.0\x20(the\x20\"License\");\n\x20you\x20may\x20no\
1890    t\x20use\x20this\x20file\x20except\x20in\x20compliance\x20with\x20the\
1891    \x20License.\n\x20You\x20may\x20obtain\x20a\x20copy\x20of\x20the\x20Lice\
1892    nse\x20at\n\n\x20\x20\x20\x20\x20http://www.apache.org/licenses/LICENSE-\
1893    2.0\n\n\x20Unless\x20required\x20by\x20applicable\x20law\x20or\x20agreed\
1894    \x20to\x20in\x20writing,\x20software\n\x20distributed\x20under\x20the\
1895    \x20License\x20is\x20distributed\x20on\x20an\x20\"AS\x20IS\"\x20BASIS,\n\
1896    \x20WITHOUT\x20WARRANTIES\x20OR\x20CONDITIONS\x20OF\x20ANY\x20KIND,\x20e\
1897    ither\x20express\x20or\x20implied.\n\x20See\x20the\x20License\x20for\x20\
1898    the\x20specific\x20language\x20governing\x20permissions\x20and\n\x20limi\
1899    tations\x20under\x20the\x20License.\n\n\x08\n\x01\x02\x12\x03\x10\0%\n\t\
1900    \n\x02\x03\0\x12\x03\x12\0&\n\t\n\x02\x03\x01\x12\x03\x13\0!\n\t\n\x02\
1901    \x03\x02\x12\x03\x14\08\n\t\n\x02\x03\x03\x12\x03\x15\06\n\t\n\x02\x03\
1902    \x04\x12\x03\x16\0!\n\x08\n\x01\x08\x12\x03\x18\0\x1f\n\t\n\x02\x08\x1f\
1903    \x12\x03\x18\0\x1f\n\x08\n\x01\x08\x12\x03\x19\0;\n\t\n\x02\x08%\x12\x03\
1904    \x19\0;\n\x08\n\x01\x08\x12\x03\x1a\0a\n\t\n\x02\x08\x0b\x12\x03\x1a\0a\
1905    \n\x08\n\x01\x08\x12\x03\x1b\0\"\n\t\n\x02\x08\n\x12\x03\x1b\0\"\n\x08\n\
1906    \x01\x08\x12\x03\x1c\07\n\t\n\x02\x08\x08\x12\x03\x1c\07\n\x08\n\x01\x08\
1907    \x12\x03\x1d\09\n\t\n\x02\x08\x01\x12\x03\x1d\09\n\x08\n\x01\x08\x12\x03\
1908    \x1e\0\"\n\t\n\x02\x08$\x12\x03\x1e\0\"\n\x08\n\x01\x08\x12\x03\x1f\0;\n\
1909    \t\n\x02\x08)\x12\x03\x1f\0;\n\x08\n\x01\x08\x12\x03\x20\0:\n\t\n\x02\
1910    \x08-\x12\x03\x20\0:\n\x99\x02\n\x02\x06\0\x12\x04&\0Y\x01\x1a\x8c\x02\
1911    \x20[Google\x20Service\x20Control\x20API](/service-control/overview)\n\n\
1912    \x20Lets\x20clients\x20check\x20and\x20report\x20operations\x20against\
1913    \x20a\x20[managed\n\x20service](https://cloud.google.com/service-managem\
1914    ent/reference/rpc/google.api/servicemanagement.v1#google.api.servicemana\
1915    gement.v1.ManagedService).\n\n\n\n\x03\x06\0\x01\x12\x03&\x08\x19\n\n\n\
1916    \x03\x06\0\x03\x12\x03'\x02E\n\x0c\n\x05\x06\0\x03\x99\x08\x12\x03'\x02E\
1917    \n\x0b\n\x03\x06\0\x03\x12\x04(\x02*7\n\r\n\x05\x06\0\x03\x9a\x08\x12\
1918    \x04(\x02*7\n\xee\x06\n\x04\x06\0\x02\0\x12\x04=\x02B\x03\x1a\xdf\x06\
1919    \x20Checks\x20whether\x20an\x20operation\x20on\x20a\x20service\x20should\
1920    \x20be\x20allowed\x20to\x20proceed\n\x20based\x20on\x20the\x20configurat\
1921    ion\x20of\x20the\x20service\x20and\x20related\x20policies.\x20It\x20must\
1922    \x20be\n\x20called\x20before\x20the\x20operation\x20is\x20executed.\n\n\
1923    \x20If\x20feasible,\x20the\x20client\x20should\x20cache\x20the\x20check\
1924    \x20results\x20and\x20reuse\x20them\x20for\n\x2060\x20seconds.\x20In\x20\
1925    case\x20of\x20any\x20server\x20errors,\x20the\x20client\x20should\x20rel\
1926    y\x20on\x20the\n\x20cached\x20results\x20for\x20much\x20longer\x20time\
1927    \x20to\x20avoid\x20outage.\n\x20WARNING:\x20There\x20is\x20general\x2060\
1928    s\x20delay\x20for\x20the\x20configuration\x20and\x20policy\n\x20propagat\
1929    ion,\x20therefore\x20callers\x20MUST\x20NOT\x20depend\x20on\x20the\x20`C\
1930    heck`\x20method\x20having\n\x20the\x20latest\x20policy\x20information.\n\
1931    \n\x20NOTE:\x20the\x20[CheckRequest][google.api.servicecontrol.v1.CheckR\
1932    equest]\x20has\n\x20the\x20size\x20limit\x20(wire-format\x20byte\x20size\
1933    )\x20of\x201MB.\n\n\x20This\x20method\x20requires\x20the\x20`servicemana\
1934    gement.services.check`\x20permission\n\x20on\x20the\x20specified\x20serv\
1935    ice.\x20For\x20more\x20information,\x20see\n\x20[Cloud\x20IAM](https://c\
1936    loud.google.com/iam).\n\n\x0c\n\x05\x06\0\x02\0\x01\x12\x03=\x06\x0b\n\
1937    \x0c\n\x05\x06\0\x02\0\x02\x12\x03=\x0c\x18\n\x0c\n\x05\x06\0\x02\0\x03\
1938    \x12\x03=#0\n\r\n\x05\x06\0\x02\0\x04\x12\x04>\x04A\x06\n\x11\n\t\x06\0\
1939    \x02\0\x04\xb0\xca\xbc\"\x12\x04>\x04A\x06\n\x85\x06\n\x04\x06\0\x02\x01\
1940    \x12\x04S\x02X\x03\x1a\xf6\x05\x20Reports\x20operation\x20results\x20to\
1941    \x20Google\x20Service\x20Control,\x20such\x20as\x20logs\x20and\n\x20metr\
1942    ics.\x20It\x20should\x20be\x20called\x20after\x20an\x20operation\x20is\
1943    \x20completed.\n\n\x20If\x20feasible,\x20the\x20client\x20should\x20aggr\
1944    egate\x20reporting\x20data\x20for\x20up\x20to\x205\n\x20seconds\x20to\
1945    \x20reduce\x20API\x20traffic.\x20Limiting\x20aggregation\x20to\x205\x20s\
1946    econds\x20is\x20to\n\x20reduce\x20data\x20loss\x20during\x20client\x20cr\
1947    ashes.\x20Clients\x20should\x20carefully\x20choose\n\x20the\x20aggregati\
1948    on\x20time\x20window\x20to\x20avoid\x20data\x20loss\x20risk\x20more\x20t\
1949    han\x200.01%\n\x20for\x20business\x20and\x20compliance\x20reasons.\n\n\
1950    \x20NOTE:\x20the\x20[ReportRequest][google.api.servicecontrol.v1.ReportR\
1951    equest]\x20has\n\x20the\x20size\x20limit\x20(wire-format\x20byte\x20size\
1952    )\x20of\x201MB.\n\n\x20This\x20method\x20requires\x20the\x20`servicemana\
1953    gement.services.report`\x20permission\n\x20on\x20the\x20specified\x20ser\
1954    vice.\x20For\x20more\x20information,\x20see\n\x20[Google\x20Cloud\x20IAM\
1955    ](https://cloud.google.com/iam).\n\n\x0c\n\x05\x06\0\x02\x01\x01\x12\x03\
1956    S\x06\x0c\n\x0c\n\x05\x06\0\x02\x01\x02\x12\x03S\r\x1a\n\x0c\n\x05\x06\0\
1957    \x02\x01\x03\x12\x03S%3\n\r\n\x05\x06\0\x02\x01\x04\x12\x04T\x04W\x06\n\
1958    \x11\n\t\x06\0\x02\x01\x04\xb0\xca\xbc\"\x12\x04T\x04W\x06\n3\n\x02\x04\
1959    \0\x12\x04\\\0n\x01\x1a'\x20Request\x20message\x20for\x20the\x20Check\
1960    \x20method.\n\n\n\n\x03\x04\0\x01\x12\x03\\\x08\x14\n\x90\x02\n\x04\x04\
1961    \0\x02\0\x12\x03c\x02\x1a\x1a\x82\x02\x20The\x20service\x20name\x20as\
1962    \x20specified\x20in\x20its\x20service\x20configuration.\x20For\x20exampl\
1963    e,\n\x20`\"pubsub.googleapis.com\"`.\n\n\x20See\n\x20[google.api.Service\
1964    ](https://cloud.google.com/service-management/reference/rpc/google.api#g\
1965    oogle.api.Service)\n\x20for\x20the\x20definition\x20of\x20a\x20service\
1966    \x20name.\n\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03c\x02\x08\n\x0c\n\x05\x04\
1967    \0\x02\0\x01\x12\x03c\t\x15\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03c\x18\x19\
1968    \n+\n\x04\x04\0\x02\x01\x12\x03f\x02\x1a\x1a\x1e\x20The\x20operation\x20\
1969    to\x20be\x20checked.\n\n\x0c\n\x05\x04\0\x02\x01\x06\x12\x03f\x02\x0b\n\
1970    \x0c\n\x05\x04\0\x02\x01\x01\x12\x03f\x0c\x15\n\x0c\n\x05\x04\0\x02\x01\
1971    \x03\x12\x03f\x18\x19\n\xbc\x01\n\x04\x04\0\x02\x02\x12\x03m\x02\x1f\x1a\
1972    \xae\x01\x20Specifies\x20which\x20version\x20of\x20service\x20configurat\
1973    ion\x20should\x20be\x20used\x20to\x20process\n\x20the\x20request.\n\n\
1974    \x20If\x20unspecified\x20or\x20no\x20matching\x20version\x20can\x20be\
1975    \x20found,\x20the\n\x20latest\x20one\x20will\x20be\x20used.\n\n\x0c\n\
1976    \x05\x04\0\x02\x02\x05\x12\x03m\x02\x08\n\x0c\n\x05\x04\0\x02\x02\x01\
1977    \x12\x03m\t\x1a\n\x0c\n\x05\x04\0\x02\x02\x03\x12\x03m\x1d\x1e\n5\n\x02\
1978    \x04\x01\x12\x05q\0\xb9\x01\x01\x1a(\x20Response\x20message\x20for\x20th\
1979    e\x20Check\x20method.\n\n\n\n\x03\x04\x01\x01\x12\x03q\x08\x15\nJ\n\x04\
1980    \x04\x01\x03\0\x12\x04s\x02{\x03\x1a<\x20Contains\x20additional\x20infor\
1981    mation\x20about\x20the\x20check\x20operation.\n\n\x0c\n\x05\x04\x01\x03\
1982    \0\x01\x12\x03s\n\x13\n\xc4\x01\n\x06\x04\x01\x03\0\x02\0\x12\x03w\x04)\
1983    \x1a\xb4\x01\x20A\x20list\x20of\x20fields\x20and\x20label\x20keys\x20tha\
1984    t\x20are\x20ignored\x20by\x20the\x20server.\n\x20The\x20client\x20doesn'\
1985    t\x20need\x20to\x20send\x20them\x20for\x20following\x20requests\x20to\
1986    \x20improve\n\x20performance\x20and\x20allow\x20better\x20aggregation.\n\
1987    \n\x0e\n\x07\x04\x01\x03\0\x02\0\x04\x12\x03w\x04\x0c\n\x0e\n\x07\x04\
1988    \x01\x03\0\x02\0\x05\x12\x03w\r\x13\n\x0e\n\x07\x04\x01\x03\0\x02\0\x01\
1989    \x12\x03w\x14$\n\x0e\n\x07\x04\x01\x03\0\x02\0\x03\x12\x03w'(\n-\n\x06\
1990    \x04\x01\x03\0\x02\x01\x12\x03z\x04#\x1a\x1e\x20Consumer\x20info\x20of\
1991    \x20this\x20check.\n\n\x0e\n\x07\x04\x01\x03\0\x02\x01\x06\x12\x03z\x04\
1992    \x10\n\x0e\n\x07\x04\x01\x03\0\x02\x01\x01\x12\x03z\x11\x1e\n\x0e\n\x07\
1993    \x04\x01\x03\0\x02\x01\x03\x12\x03z!\"\nH\n\x04\x04\x01\x03\x01\x12\x05~\
1994    \x02\xa3\x01\x03\x1a9\x20`ConsumerInfo`\x20provides\x20information\x20ab\
1995    out\x20the\x20consumer.\n\n\x0c\n\x05\x04\x01\x03\x01\x01\x12\x03~\n\x16\
1996    \n\x82\x01\n\x06\x04\x01\x03\x01\x04\0\x12\x06\x81\x01\x04\x92\x01\x05\
1997    \x1ap\x20The\x20type\x20of\x20the\x20consumer\x20as\x20defined\x20in\n\
1998    \x20[Google\x20Resource\x20Manager](https://cloud.google.com/resource-ma\
1999    nager/).\n\n\x0f\n\x07\x04\x01\x03\x01\x04\0\x01\x12\x04\x81\x01\t\x15\n\
2000    '\n\x08\x04\x01\x03\x01\x04\0\x02\0\x12\x04\x83\x01\x06$\x1a\x15\x20This\
2001    \x20is\x20never\x20used.\n\n\x11\n\t\x04\x01\x03\x01\x04\0\x02\0\x01\x12\
2002    \x04\x83\x01\x06\x1f\n\x11\n\t\x04\x01\x03\x01\x04\0\x02\0\x02\x12\x04\
2003    \x83\x01\"#\n;\n\x08\x04\x01\x03\x01\x04\0\x02\x01\x12\x04\x86\x01\x06\
2004    \x12\x1a)\x20The\x20consumer\x20is\x20a\x20Google\x20Cloud\x20Project.\n\
2005    \n\x11\n\t\x04\x01\x03\x01\x04\0\x02\x01\x01\x12\x04\x86\x01\x06\r\n\x11\
2006    \n\t\x04\x01\x03\x01\x04\0\x02\x01\x02\x12\x04\x86\x01\x10\x11\n:\n\x08\
2007    \x04\x01\x03\x01\x04\0\x02\x02\x12\x04\x89\x01\x06\x11\x1a(\x20The\x20co\
2008    nsumer\x20is\x20a\x20Google\x20Cloud\x20Folder.\n\n\x11\n\t\x04\x01\x03\
2009    \x01\x04\0\x02\x02\x01\x12\x04\x89\x01\x06\x0c\n\x11\n\t\x04\x01\x03\x01\
2010    \x04\0\x02\x02\x02\x12\x04\x89\x01\x0f\x10\n@\n\x08\x04\x01\x03\x01\x04\
2011    \0\x02\x03\x12\x04\x8c\x01\x06\x17\x1a.\x20The\x20consumer\x20is\x20a\
2012    \x20Google\x20Cloud\x20Organization.\n\n\x11\n\t\x04\x01\x03\x01\x04\0\
2013    \x02\x03\x01\x12\x04\x8c\x01\x06\x12\n\x11\n\t\x04\x01\x03\x01\x04\0\x02\
2014    \x03\x02\x12\x04\x8c\x01\x15\x16\n\xe0\x01\n\x08\x04\x01\x03\x01\x04\0\
2015    \x02\x04\x12\x04\x91\x01\x06\x1b\x1a\xcd\x01\x20Service-specific\x20reso\
2016    urce\x20container\x20which\x20is\x20defined\x20by\x20the\x20service\n\
2017    \x20producer\x20to\x20offer\x20their\x20users\x20the\x20ability\x20to\
2018    \x20manage\x20service\x20control\n\x20functionalities\x20at\x20a\x20fine\
2019    r\x20level\x20of\x20granularity\x20than\x20the\x20PROJECT.\n\n\x11\n\t\
2020    \x04\x01\x03\x01\x04\0\x02\x04\x01\x12\x04\x91\x01\x06\x16\n\x11\n\t\x04\
2021    \x01\x03\x01\x04\0\x02\x04\x02\x12\x04\x91\x01\x19\x1a\n\xf3\x01\n\x06\
2022    \x04\x01\x03\x01\x02\0\x12\x04\x99\x01\x04\x1d\x1a\xe2\x01\x20The\x20Goo\
2023    gle\x20cloud\x20project\x20number,\x20e.g.\x201234567890.\x20A\x20value\
2024    \x20of\x200\x20indicates\n\x20no\x20project\x20number\x20is\x20found.\n\
2025    \n\x20NOTE:\x20This\x20field\x20is\x20deprecated\x20after\x20we\x20suppo\
2026    rt\x20flexible\x20consumer\n\x20id.\x20New\x20code\x20should\x20not\x20d\
2027    epend\x20on\x20this\x20field\x20anymore.\n\n\x0f\n\x07\x04\x01\x03\x01\
2028    \x02\0\x05\x12\x04\x99\x01\x04\t\n\x0f\n\x07\x04\x01\x03\x01\x02\0\x01\
2029    \x12\x04\x99\x01\n\x18\n\x0f\n\x07\x04\x01\x03\x01\x02\0\x03\x12\x04\x99\
2030    \x01\x1b\x1c\n\x95\x01\n\x06\x04\x01\x03\x01\x02\x01\x12\x04\x9d\x01\x04\
2031    \x1a\x1a\x84\x01\x20The\x20type\x20of\x20the\x20consumer\x20which\x20sho\
2032    uld\x20have\x20been\x20defined\x20in\n\x20[Google\x20Resource\x20Manager\
2033    ](https://cloud.google.com/resource-manager/).\n\n\x0f\n\x07\x04\x01\x03\
2034    \x01\x02\x01\x06\x12\x04\x9d\x01\x04\x10\n\x0f\n\x07\x04\x01\x03\x01\x02\
2035    \x01\x01\x12\x04\x9d\x01\x11\x15\n\x0f\n\x07\x04\x01\x03\x01\x02\x01\x03\
2036    \x12\x04\x9d\x01\x18\x19\n\xc0\x01\n\x06\x04\x01\x03\x01\x02\x02\x12\x04\
2037    \xa2\x01\x04\x1e\x1a\xaf\x01\x20The\x20consumer\x20identity\x20number,\
2038    \x20can\x20be\x20Google\x20cloud\x20project\x20number,\x20folder\n\x20nu\
2039    mber\x20or\x20organization\x20number\x20e.g.\x201234567890.\x20A\x20valu\
2040    e\x20of\x200\x20indicates\x20no\n\x20consumer\x20number\x20is\x20found.\
2041    \n\n\x0f\n\x07\x04\x01\x03\x01\x02\x02\x05\x12\x04\xa2\x01\x04\t\n\x0f\n\
2042    \x07\x04\x01\x03\x01\x02\x02\x01\x12\x04\xa2\x01\n\x19\n\x0f\n\x07\x04\
2043    \x01\x03\x01\x02\x02\x03\x12\x04\xa2\x01\x1c\x1d\n\xa0\x01\n\x04\x04\x01\
2044    \x02\0\x12\x04\xa8\x01\x02\x1a\x1a\x91\x01\x20The\x20same\x20operation_i\
2045    d\x20value\x20used\x20in\x20the\n\x20[CheckRequest][google.api.serviceco\
2046    ntrol.v1.CheckRequest].\x20Used\x20for\x20logging\n\x20and\x20diagnostic\
2047    s\x20purposes.\n\n\r\n\x05\x04\x01\x02\0\x05\x12\x04\xa8\x01\x02\x08\n\r\
2048    \n\x05\x04\x01\x02\0\x01\x12\x04\xa8\x01\t\x15\n\r\n\x05\x04\x01\x02\0\
2049    \x03\x12\x04\xa8\x01\x18\x19\n\xdb\x01\n\x04\x04\x01\x02\x01\x12\x04\xaf\
2050    \x01\x02'\x1a\xcc\x01\x20Indicate\x20the\x20decision\x20of\x20the\x20che\
2051    ck.\n\n\x20If\x20no\x20check\x20errors\x20are\x20present,\x20the\x20serv\
2052    ice\x20should\x20process\x20the\x20operation.\n\x20Otherwise\x20the\x20s\
2053    ervice\x20should\x20use\x20the\x20list\x20of\x20errors\x20to\x20determin\
2054    e\x20the\n\x20appropriate\x20action.\n\n\r\n\x05\x04\x01\x02\x01\x04\x12\
2055    \x04\xaf\x01\x02\n\n\r\n\x05\x04\x01\x02\x01\x06\x12\x04\xaf\x01\x0b\x15\
2056    \n\r\n\x05\x04\x01\x02\x01\x01\x12\x04\xaf\x01\x16\"\n\r\n\x05\x04\x01\
2057    \x02\x01\x03\x12\x04\xaf\x01%&\nA\n\x04\x04\x01\x02\x02\x12\x04\xb2\x01\
2058    \x02\x1f\x1a3\x20The\x20actual\x20config\x20id\x20used\x20to\x20process\
2059    \x20the\x20request.\n\n\r\n\x05\x04\x01\x02\x02\x05\x12\x04\xb2\x01\x02\
2060    \x08\n\r\n\x05\x04\x01\x02\x02\x01\x12\x04\xb2\x01\t\x1a\n\r\n\x05\x04\
2061    \x01\x02\x02\x03\x12\x04\xb2\x01\x1d\x1e\nK\n\x04\x04\x01\x02\x03\x12\
2062    \x04\xb5\x01\x02!\x1a=\x20The\x20current\x20service\x20rollout\x20id\x20\
2063    used\x20to\x20process\x20the\x20request.\n\n\r\n\x05\x04\x01\x02\x03\x05\
2064    \x12\x04\xb5\x01\x02\x08\n\r\n\x05\x04\x01\x02\x03\x01\x12\x04\xb5\x01\t\
2065    \x1b\n\r\n\x05\x04\x01\x02\x03\x03\x12\x04\xb5\x01\x1e\x20\nY\n\x04\x04\
2066    \x01\x02\x04\x12\x04\xb8\x01\x02\x1b\x1aK\x20Feedback\x20data\x20returne\
2067    d\x20from\x20the\x20server\x20during\x20processing\x20a\x20Check\x20requ\
2068    est.\n\n\r\n\x05\x04\x01\x02\x04\x06\x12\x04\xb8\x01\x02\x0b\n\r\n\x05\
2069    \x04\x01\x02\x04\x01\x12\x04\xb8\x01\x0c\x16\n\r\n\x05\x04\x01\x02\x04\
2070    \x03\x12\x04\xb8\x01\x19\x1a\n6\n\x02\x04\x02\x12\x06\xbc\x01\0\xd8\x01\
2071    \x01\x1a(\x20Request\x20message\x20for\x20the\x20Report\x20method.\n\n\
2072    \x0b\n\x03\x04\x02\x01\x12\x04\xbc\x01\x08\x15\n\x91\x02\n\x04\x04\x02\
2073    \x02\0\x12\x04\xc3\x01\x02\x1a\x1a\x82\x02\x20The\x20service\x20name\x20\
2074    as\x20specified\x20in\x20its\x20service\x20configuration.\x20For\x20exam\
2075    ple,\n\x20`\"pubsub.googleapis.com\"`.\n\n\x20See\n\x20[google.api.Servi\
2076    ce](https://cloud.google.com/service-management/reference/rpc/google.api\
2077    #google.api.Service)\n\x20for\x20the\x20definition\x20of\x20a\x20service\
2078    \x20name.\n\n\r\n\x05\x04\x02\x02\0\x05\x12\x04\xc3\x01\x02\x08\n\r\n\
2079    \x05\x04\x02\x02\0\x01\x12\x04\xc3\x01\t\x15\n\r\n\x05\x04\x02\x02\0\x03\
2080    \x12\x04\xc3\x01\x18\x19\n\x97\x04\n\x04\x04\x02\x02\x01\x12\x04\xd0\x01\
2081    \x02$\x1a\x88\x04\x20Operations\x20to\x20be\x20reported.\n\n\x20Typicall\
2082    y\x20the\x20service\x20should\x20report\x20one\x20operation\x20per\x20re\
2083    quest.\n\x20Putting\x20multiple\x20operations\x20into\x20a\x20single\x20\
2084    request\x20is\x20allowed,\x20but\x20should\n\x20be\x20used\x20only\x20wh\
2085    en\x20multiple\x20operations\x20are\x20natually\x20available\x20at\x20th\
2086    e\x20time\n\x20of\x20the\x20report.\n\n\x20There\x20is\x20no\x20limit\
2087    \x20on\x20the\x20number\x20of\x20operations\x20in\x20the\x20same\x20Repo\
2088    rtRequest,\n\x20however\x20the\x20ReportRequest\x20size\x20should\x20be\
2089    \x20no\x20larger\x20than\x201MB.\x20See\n\x20[ReportResponse.report_erro\
2090    rs][google.api.servicecontrol.v1.ReportResponse.report_errors]\n\x20for\
2091    \x20partial\x20failure\x20behavior.\n\n\r\n\x05\x04\x02\x02\x01\x04\x12\
2092    \x04\xd0\x01\x02\n\n\r\n\x05\x04\x02\x02\x01\x06\x12\x04\xd0\x01\x0b\x14\
2093    \n\r\n\x05\x04\x02\x02\x01\x01\x12\x04\xd0\x01\x15\x1f\n\r\n\x05\x04\x02\
2094    \x02\x01\x03\x12\x04\xd0\x01\"#\n\xb6\x01\n\x04\x04\x02\x02\x02\x12\x04\
2095    \xd7\x01\x02\x1f\x1a\xa7\x01\x20Specifies\x20which\x20version\x20of\x20s\
2096    ervice\x20config\x20should\x20be\x20used\x20to\x20process\x20the\n\x20re\
2097    quest.\n\n\x20If\x20unspecified\x20or\x20no\x20matching\x20version\x20ca\
2098    n\x20be\x20found,\x20the\n\x20latest\x20one\x20will\x20be\x20used.\n\n\r\
2099    \n\x05\x04\x02\x02\x02\x05\x12\x04\xd7\x01\x02\x08\n\r\n\x05\x04\x02\x02\
2100    \x02\x01\x12\x04\xd7\x01\t\x1a\n\r\n\x05\x04\x02\x02\x02\x03\x12\x04\xd7\
2101    \x01\x1d\x1e\n7\n\x02\x04\x03\x12\x06\xdb\x01\0\xfe\x01\x01\x1a)\x20Resp\
2102    onse\x20message\x20for\x20the\x20Report\x20method.\n\n\x0b\n\x03\x04\x03\
2103    \x01\x12\x04\xdb\x01\x08\x16\n}\n\x04\x04\x03\x03\0\x12\x06\xde\x01\x02\
2104    \xe7\x01\x03\x1am\x20Represents\x20the\x20processing\x20error\x20of\x20o\
2105    ne\n\x20[Operation][google.api.servicecontrol.v1.Operation]\x20in\x20the\
2106    \x20request.\n\n\r\n\x05\x04\x03\x03\0\x01\x12\x04\xde\x01\n\x15\n}\n\
2107    \x06\x04\x03\x03\0\x02\0\x12\x04\xe2\x01\x04\x1c\x1am\x20The\n\x20[Opera\
2108    tion.operation_id][google.api.servicecontrol.v1.Operation.operation_id]\
2109    \n\x20value\x20from\x20the\x20request.\n\n\x0f\n\x07\x04\x03\x03\0\x02\0\
2110    \x05\x12\x04\xe2\x01\x04\n\n\x0f\n\x07\x04\x03\x03\0\x02\0\x01\x12\x04\
2111    \xe2\x01\x0b\x17\n\x0f\n\x07\x04\x03\x03\0\x02\0\x03\x12\x04\xe2\x01\x1a\
2112    \x1b\np\n\x06\x04\x03\x03\0\x02\x01\x12\x04\xe6\x01\x04!\x1a`\x20Details\
2113    \x20of\x20the\x20error\x20when\x20processing\x20the\n\x20[Operation][goo\
2114    gle.api.servicecontrol.v1.Operation].\n\n\x0f\n\x07\x04\x03\x03\0\x02\
2115    \x01\x06\x12\x04\xe6\x01\x04\x15\n\x0f\n\x07\x04\x03\x03\0\x02\x01\x01\
2116    \x12\x04\xe6\x01\x16\x1c\n\x0f\n\x07\x04\x03\x03\0\x02\x01\x03\x12\x04\
2117    \xe6\x01\x1f\x20\n\x8e\x06\n\x04\x04\x03\x02\0\x12\x04\xf7\x01\x02)\x1a\
2118    \xff\x05\x20Partial\x20failures,\x20one\x20for\x20each\x20`Operation`\
2119    \x20in\x20the\x20request\x20that\x20failed\n\x20processing.\x20There\x20\
2120    are\x20three\x20possible\x20combinations\x20of\x20the\x20RPC\x20status:\
2121    \n\n\x201.\x20The\x20combination\x20of\x20a\x20successful\x20RPC\x20stat\
2122    us\x20and\x20an\x20empty\x20`report_errors`\n\x20\x20\x20\x20list\x20ind\
2123    icates\x20a\x20complete\x20success\x20where\x20all\x20`Operations`\x20in\
2124    \x20the\n\x20\x20\x20\x20request\x20are\x20processed\x20successfully.\n\
2125    \x202.\x20The\x20combination\x20of\x20a\x20successful\x20RPC\x20status\
2126    \x20and\x20a\x20non-empty\n\x20\x20\x20\x20`report_errors`\x20list\x20in\
2127    dicates\x20a\x20partial\x20success\x20where\x20some\n\x20\x20\x20\x20`Op\
2128    erations`\x20in\x20the\x20request\x20succeeded.\x20Each\n\x20\x20\x20\
2129    \x20`Operation`\x20that\x20failed\x20processing\x20has\x20a\x20correspon\
2130    ding\x20item\n\x20\x20\x20\x20in\x20this\x20list.\n\x203.\x20A\x20failed\
2131    \x20RPC\x20status\x20indicates\x20a\x20general\x20non-deterministic\x20f\
2132    ailure.\n\x20\x20\x20\x20When\x20this\x20happens,\x20it's\x20impossible\
2133    \x20to\x20know\x20which\x20of\x20the\n\x20\x20\x20\x20'Operations'\x20in\
2134    \x20the\x20request\x20succeeded\x20or\x20failed.\n\n\r\n\x05\x04\x03\x02\
2135    \0\x04\x12\x04\xf7\x01\x02\n\n\r\n\x05\x04\x03\x02\0\x06\x12\x04\xf7\x01\
2136    \x0b\x16\n\r\n\x05\x04\x03\x02\0\x01\x12\x04\xf7\x01\x17$\n\r\n\x05\x04\
2137    \x03\x02\0\x03\x12\x04\xf7\x01'(\nA\n\x04\x04\x03\x02\x01\x12\x04\xfa\
2138    \x01\x02\x1f\x1a3\x20The\x20actual\x20config\x20id\x20used\x20to\x20proc\
2139    ess\x20the\x20request.\n\n\r\n\x05\x04\x03\x02\x01\x05\x12\x04\xfa\x01\
2140    \x02\x08\n\r\n\x05\x04\x03\x02\x01\x01\x12\x04\xfa\x01\t\x1a\n\r\n\x05\
2141    \x04\x03\x02\x01\x03\x12\x04\xfa\x01\x1d\x1e\nK\n\x04\x04\x03\x02\x02\
2142    \x12\x04\xfd\x01\x02\x20\x1a=\x20The\x20current\x20service\x20rollout\
2143    \x20id\x20used\x20to\x20process\x20the\x20request.\n\n\r\n\x05\x04\x03\
2144    \x02\x02\x05\x12\x04\xfd\x01\x02\x08\n\r\n\x05\x04\x03\x02\x02\x01\x12\
2145    \x04\xfd\x01\t\x1b\n\r\n\x05\x04\x03\x02\x02\x03\x12\x04\xfd\x01\x1e\x1f\
2146    b\x06proto3\
2147";
2148
2149static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
2150
2151fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
2152    ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
2153}
2154
2155pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
2156    file_descriptor_proto_lazy.get(|| {
2157        parse_descriptor_proto()
2158    })
2159}