google_cloud_rust_raw/cloud/osconfig/v1alpha/
os_policy.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/cloud/osconfig/v1alpha/os_policy.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 OSPolicy {
28    // message fields
29    pub id: ::std::string::String,
30    pub description: ::std::string::String,
31    pub mode: OSPolicy_Mode,
32    pub resource_groups: ::protobuf::RepeatedField<OSPolicy_ResourceGroup>,
33    pub allow_no_resource_group_match: bool,
34    // special fields
35    pub unknown_fields: ::protobuf::UnknownFields,
36    pub cached_size: ::protobuf::CachedSize,
37}
38
39impl<'a> ::std::default::Default for &'a OSPolicy {
40    fn default() -> &'a OSPolicy {
41        <OSPolicy as ::protobuf::Message>::default_instance()
42    }
43}
44
45impl OSPolicy {
46    pub fn new() -> OSPolicy {
47        ::std::default::Default::default()
48    }
49
50    // string id = 1;
51
52
53    pub fn get_id(&self) -> &str {
54        &self.id
55    }
56    pub fn clear_id(&mut self) {
57        self.id.clear();
58    }
59
60    // Param is passed by value, moved
61    pub fn set_id(&mut self, v: ::std::string::String) {
62        self.id = v;
63    }
64
65    // Mutable pointer to the field.
66    // If field is not initialized, it is initialized with default value first.
67    pub fn mut_id(&mut self) -> &mut ::std::string::String {
68        &mut self.id
69    }
70
71    // Take field
72    pub fn take_id(&mut self) -> ::std::string::String {
73        ::std::mem::replace(&mut self.id, ::std::string::String::new())
74    }
75
76    // string description = 2;
77
78
79    pub fn get_description(&self) -> &str {
80        &self.description
81    }
82    pub fn clear_description(&mut self) {
83        self.description.clear();
84    }
85
86    // Param is passed by value, moved
87    pub fn set_description(&mut self, v: ::std::string::String) {
88        self.description = v;
89    }
90
91    // Mutable pointer to the field.
92    // If field is not initialized, it is initialized with default value first.
93    pub fn mut_description(&mut self) -> &mut ::std::string::String {
94        &mut self.description
95    }
96
97    // Take field
98    pub fn take_description(&mut self) -> ::std::string::String {
99        ::std::mem::replace(&mut self.description, ::std::string::String::new())
100    }
101
102    // .google.cloud.osconfig.v1alpha.OSPolicy.Mode mode = 3;
103
104
105    pub fn get_mode(&self) -> OSPolicy_Mode {
106        self.mode
107    }
108    pub fn clear_mode(&mut self) {
109        self.mode = OSPolicy_Mode::MODE_UNSPECIFIED;
110    }
111
112    // Param is passed by value, moved
113    pub fn set_mode(&mut self, v: OSPolicy_Mode) {
114        self.mode = v;
115    }
116
117    // repeated .google.cloud.osconfig.v1alpha.OSPolicy.ResourceGroup resource_groups = 4;
118
119
120    pub fn get_resource_groups(&self) -> &[OSPolicy_ResourceGroup] {
121        &self.resource_groups
122    }
123    pub fn clear_resource_groups(&mut self) {
124        self.resource_groups.clear();
125    }
126
127    // Param is passed by value, moved
128    pub fn set_resource_groups(&mut self, v: ::protobuf::RepeatedField<OSPolicy_ResourceGroup>) {
129        self.resource_groups = v;
130    }
131
132    // Mutable pointer to the field.
133    pub fn mut_resource_groups(&mut self) -> &mut ::protobuf::RepeatedField<OSPolicy_ResourceGroup> {
134        &mut self.resource_groups
135    }
136
137    // Take field
138    pub fn take_resource_groups(&mut self) -> ::protobuf::RepeatedField<OSPolicy_ResourceGroup> {
139        ::std::mem::replace(&mut self.resource_groups, ::protobuf::RepeatedField::new())
140    }
141
142    // bool allow_no_resource_group_match = 5;
143
144
145    pub fn get_allow_no_resource_group_match(&self) -> bool {
146        self.allow_no_resource_group_match
147    }
148    pub fn clear_allow_no_resource_group_match(&mut self) {
149        self.allow_no_resource_group_match = false;
150    }
151
152    // Param is passed by value, moved
153    pub fn set_allow_no_resource_group_match(&mut self, v: bool) {
154        self.allow_no_resource_group_match = v;
155    }
156}
157
158impl ::protobuf::Message for OSPolicy {
159    fn is_initialized(&self) -> bool {
160        for v in &self.resource_groups {
161            if !v.is_initialized() {
162                return false;
163            }
164        };
165        true
166    }
167
168    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
169        while !is.eof()? {
170            let (field_number, wire_type) = is.read_tag_unpack()?;
171            match field_number {
172                1 => {
173                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.id)?;
174                },
175                2 => {
176                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.description)?;
177                },
178                3 => {
179                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.mode, 3, &mut self.unknown_fields)?
180                },
181                4 => {
182                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.resource_groups)?;
183                },
184                5 => {
185                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
186                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
187                    }
188                    let tmp = is.read_bool()?;
189                    self.allow_no_resource_group_match = tmp;
190                },
191                _ => {
192                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
193                },
194            };
195        }
196        ::std::result::Result::Ok(())
197    }
198
199    // Compute sizes of nested messages
200    #[allow(unused_variables)]
201    fn compute_size(&self) -> u32 {
202        let mut my_size = 0;
203        if !self.id.is_empty() {
204            my_size += ::protobuf::rt::string_size(1, &self.id);
205        }
206        if !self.description.is_empty() {
207            my_size += ::protobuf::rt::string_size(2, &self.description);
208        }
209        if self.mode != OSPolicy_Mode::MODE_UNSPECIFIED {
210            my_size += ::protobuf::rt::enum_size(3, self.mode);
211        }
212        for value in &self.resource_groups {
213            let len = value.compute_size();
214            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
215        };
216        if self.allow_no_resource_group_match != false {
217            my_size += 2;
218        }
219        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
220        self.cached_size.set(my_size);
221        my_size
222    }
223
224    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
225        if !self.id.is_empty() {
226            os.write_string(1, &self.id)?;
227        }
228        if !self.description.is_empty() {
229            os.write_string(2, &self.description)?;
230        }
231        if self.mode != OSPolicy_Mode::MODE_UNSPECIFIED {
232            os.write_enum(3, ::protobuf::ProtobufEnum::value(&self.mode))?;
233        }
234        for v in &self.resource_groups {
235            os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
236            os.write_raw_varint32(v.get_cached_size())?;
237            v.write_to_with_cached_sizes(os)?;
238        };
239        if self.allow_no_resource_group_match != false {
240            os.write_bool(5, self.allow_no_resource_group_match)?;
241        }
242        os.write_unknown_fields(self.get_unknown_fields())?;
243        ::std::result::Result::Ok(())
244    }
245
246    fn get_cached_size(&self) -> u32 {
247        self.cached_size.get()
248    }
249
250    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
251        &self.unknown_fields
252    }
253
254    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
255        &mut self.unknown_fields
256    }
257
258    fn as_any(&self) -> &dyn (::std::any::Any) {
259        self as &dyn (::std::any::Any)
260    }
261    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
262        self as &mut dyn (::std::any::Any)
263    }
264    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
265        self
266    }
267
268    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
269        Self::descriptor_static()
270    }
271
272    fn new() -> OSPolicy {
273        OSPolicy::new()
274    }
275
276    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
277        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
278        descriptor.get(|| {
279            let mut fields = ::std::vec::Vec::new();
280            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
281                "id",
282                |m: &OSPolicy| { &m.id },
283                |m: &mut OSPolicy| { &mut m.id },
284            ));
285            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
286                "description",
287                |m: &OSPolicy| { &m.description },
288                |m: &mut OSPolicy| { &mut m.description },
289            ));
290            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<OSPolicy_Mode>>(
291                "mode",
292                |m: &OSPolicy| { &m.mode },
293                |m: &mut OSPolicy| { &mut m.mode },
294            ));
295            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_ResourceGroup>>(
296                "resource_groups",
297                |m: &OSPolicy| { &m.resource_groups },
298                |m: &mut OSPolicy| { &mut m.resource_groups },
299            ));
300            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
301                "allow_no_resource_group_match",
302                |m: &OSPolicy| { &m.allow_no_resource_group_match },
303                |m: &mut OSPolicy| { &mut m.allow_no_resource_group_match },
304            ));
305            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy>(
306                "OSPolicy",
307                fields,
308                file_descriptor_proto()
309            )
310        })
311    }
312
313    fn default_instance() -> &'static OSPolicy {
314        static instance: ::protobuf::rt::LazyV2<OSPolicy> = ::protobuf::rt::LazyV2::INIT;
315        instance.get(OSPolicy::new)
316    }
317}
318
319impl ::protobuf::Clear for OSPolicy {
320    fn clear(&mut self) {
321        self.id.clear();
322        self.description.clear();
323        self.mode = OSPolicy_Mode::MODE_UNSPECIFIED;
324        self.resource_groups.clear();
325        self.allow_no_resource_group_match = false;
326        self.unknown_fields.clear();
327    }
328}
329
330impl ::std::fmt::Debug for OSPolicy {
331    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
332        ::protobuf::text_format::fmt(self, f)
333    }
334}
335
336impl ::protobuf::reflect::ProtobufValue for OSPolicy {
337    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
338        ::protobuf::reflect::ReflectValueRef::Message(self)
339    }
340}
341
342#[derive(PartialEq,Clone,Default)]
343pub struct OSPolicy_OSFilter {
344    // message fields
345    pub os_short_name: ::std::string::String,
346    pub os_version: ::std::string::String,
347    // special fields
348    pub unknown_fields: ::protobuf::UnknownFields,
349    pub cached_size: ::protobuf::CachedSize,
350}
351
352impl<'a> ::std::default::Default for &'a OSPolicy_OSFilter {
353    fn default() -> &'a OSPolicy_OSFilter {
354        <OSPolicy_OSFilter as ::protobuf::Message>::default_instance()
355    }
356}
357
358impl OSPolicy_OSFilter {
359    pub fn new() -> OSPolicy_OSFilter {
360        ::std::default::Default::default()
361    }
362
363    // string os_short_name = 1;
364
365
366    pub fn get_os_short_name(&self) -> &str {
367        &self.os_short_name
368    }
369    pub fn clear_os_short_name(&mut self) {
370        self.os_short_name.clear();
371    }
372
373    // Param is passed by value, moved
374    pub fn set_os_short_name(&mut self, v: ::std::string::String) {
375        self.os_short_name = v;
376    }
377
378    // Mutable pointer to the field.
379    // If field is not initialized, it is initialized with default value first.
380    pub fn mut_os_short_name(&mut self) -> &mut ::std::string::String {
381        &mut self.os_short_name
382    }
383
384    // Take field
385    pub fn take_os_short_name(&mut self) -> ::std::string::String {
386        ::std::mem::replace(&mut self.os_short_name, ::std::string::String::new())
387    }
388
389    // string os_version = 2;
390
391
392    pub fn get_os_version(&self) -> &str {
393        &self.os_version
394    }
395    pub fn clear_os_version(&mut self) {
396        self.os_version.clear();
397    }
398
399    // Param is passed by value, moved
400    pub fn set_os_version(&mut self, v: ::std::string::String) {
401        self.os_version = v;
402    }
403
404    // Mutable pointer to the field.
405    // If field is not initialized, it is initialized with default value first.
406    pub fn mut_os_version(&mut self) -> &mut ::std::string::String {
407        &mut self.os_version
408    }
409
410    // Take field
411    pub fn take_os_version(&mut self) -> ::std::string::String {
412        ::std::mem::replace(&mut self.os_version, ::std::string::String::new())
413    }
414}
415
416impl ::protobuf::Message for OSPolicy_OSFilter {
417    fn is_initialized(&self) -> bool {
418        true
419    }
420
421    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
422        while !is.eof()? {
423            let (field_number, wire_type) = is.read_tag_unpack()?;
424            match field_number {
425                1 => {
426                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.os_short_name)?;
427                },
428                2 => {
429                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.os_version)?;
430                },
431                _ => {
432                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
433                },
434            };
435        }
436        ::std::result::Result::Ok(())
437    }
438
439    // Compute sizes of nested messages
440    #[allow(unused_variables)]
441    fn compute_size(&self) -> u32 {
442        let mut my_size = 0;
443        if !self.os_short_name.is_empty() {
444            my_size += ::protobuf::rt::string_size(1, &self.os_short_name);
445        }
446        if !self.os_version.is_empty() {
447            my_size += ::protobuf::rt::string_size(2, &self.os_version);
448        }
449        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
450        self.cached_size.set(my_size);
451        my_size
452    }
453
454    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
455        if !self.os_short_name.is_empty() {
456            os.write_string(1, &self.os_short_name)?;
457        }
458        if !self.os_version.is_empty() {
459            os.write_string(2, &self.os_version)?;
460        }
461        os.write_unknown_fields(self.get_unknown_fields())?;
462        ::std::result::Result::Ok(())
463    }
464
465    fn get_cached_size(&self) -> u32 {
466        self.cached_size.get()
467    }
468
469    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
470        &self.unknown_fields
471    }
472
473    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
474        &mut self.unknown_fields
475    }
476
477    fn as_any(&self) -> &dyn (::std::any::Any) {
478        self as &dyn (::std::any::Any)
479    }
480    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
481        self as &mut dyn (::std::any::Any)
482    }
483    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
484        self
485    }
486
487    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
488        Self::descriptor_static()
489    }
490
491    fn new() -> OSPolicy_OSFilter {
492        OSPolicy_OSFilter::new()
493    }
494
495    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
496        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
497        descriptor.get(|| {
498            let mut fields = ::std::vec::Vec::new();
499            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
500                "os_short_name",
501                |m: &OSPolicy_OSFilter| { &m.os_short_name },
502                |m: &mut OSPolicy_OSFilter| { &mut m.os_short_name },
503            ));
504            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
505                "os_version",
506                |m: &OSPolicy_OSFilter| { &m.os_version },
507                |m: &mut OSPolicy_OSFilter| { &mut m.os_version },
508            ));
509            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_OSFilter>(
510                "OSPolicy.OSFilter",
511                fields,
512                file_descriptor_proto()
513            )
514        })
515    }
516
517    fn default_instance() -> &'static OSPolicy_OSFilter {
518        static instance: ::protobuf::rt::LazyV2<OSPolicy_OSFilter> = ::protobuf::rt::LazyV2::INIT;
519        instance.get(OSPolicy_OSFilter::new)
520    }
521}
522
523impl ::protobuf::Clear for OSPolicy_OSFilter {
524    fn clear(&mut self) {
525        self.os_short_name.clear();
526        self.os_version.clear();
527        self.unknown_fields.clear();
528    }
529}
530
531impl ::std::fmt::Debug for OSPolicy_OSFilter {
532    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
533        ::protobuf::text_format::fmt(self, f)
534    }
535}
536
537impl ::protobuf::reflect::ProtobufValue for OSPolicy_OSFilter {
538    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
539        ::protobuf::reflect::ReflectValueRef::Message(self)
540    }
541}
542
543#[derive(PartialEq,Clone,Default)]
544pub struct OSPolicy_InventoryFilter {
545    // message fields
546    pub os_short_name: ::std::string::String,
547    pub os_version: ::std::string::String,
548    // special fields
549    pub unknown_fields: ::protobuf::UnknownFields,
550    pub cached_size: ::protobuf::CachedSize,
551}
552
553impl<'a> ::std::default::Default for &'a OSPolicy_InventoryFilter {
554    fn default() -> &'a OSPolicy_InventoryFilter {
555        <OSPolicy_InventoryFilter as ::protobuf::Message>::default_instance()
556    }
557}
558
559impl OSPolicy_InventoryFilter {
560    pub fn new() -> OSPolicy_InventoryFilter {
561        ::std::default::Default::default()
562    }
563
564    // string os_short_name = 1;
565
566
567    pub fn get_os_short_name(&self) -> &str {
568        &self.os_short_name
569    }
570    pub fn clear_os_short_name(&mut self) {
571        self.os_short_name.clear();
572    }
573
574    // Param is passed by value, moved
575    pub fn set_os_short_name(&mut self, v: ::std::string::String) {
576        self.os_short_name = v;
577    }
578
579    // Mutable pointer to the field.
580    // If field is not initialized, it is initialized with default value first.
581    pub fn mut_os_short_name(&mut self) -> &mut ::std::string::String {
582        &mut self.os_short_name
583    }
584
585    // Take field
586    pub fn take_os_short_name(&mut self) -> ::std::string::String {
587        ::std::mem::replace(&mut self.os_short_name, ::std::string::String::new())
588    }
589
590    // string os_version = 2;
591
592
593    pub fn get_os_version(&self) -> &str {
594        &self.os_version
595    }
596    pub fn clear_os_version(&mut self) {
597        self.os_version.clear();
598    }
599
600    // Param is passed by value, moved
601    pub fn set_os_version(&mut self, v: ::std::string::String) {
602        self.os_version = v;
603    }
604
605    // Mutable pointer to the field.
606    // If field is not initialized, it is initialized with default value first.
607    pub fn mut_os_version(&mut self) -> &mut ::std::string::String {
608        &mut self.os_version
609    }
610
611    // Take field
612    pub fn take_os_version(&mut self) -> ::std::string::String {
613        ::std::mem::replace(&mut self.os_version, ::std::string::String::new())
614    }
615}
616
617impl ::protobuf::Message for OSPolicy_InventoryFilter {
618    fn is_initialized(&self) -> bool {
619        true
620    }
621
622    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
623        while !is.eof()? {
624            let (field_number, wire_type) = is.read_tag_unpack()?;
625            match field_number {
626                1 => {
627                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.os_short_name)?;
628                },
629                2 => {
630                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.os_version)?;
631                },
632                _ => {
633                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
634                },
635            };
636        }
637        ::std::result::Result::Ok(())
638    }
639
640    // Compute sizes of nested messages
641    #[allow(unused_variables)]
642    fn compute_size(&self) -> u32 {
643        let mut my_size = 0;
644        if !self.os_short_name.is_empty() {
645            my_size += ::protobuf::rt::string_size(1, &self.os_short_name);
646        }
647        if !self.os_version.is_empty() {
648            my_size += ::protobuf::rt::string_size(2, &self.os_version);
649        }
650        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
651        self.cached_size.set(my_size);
652        my_size
653    }
654
655    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
656        if !self.os_short_name.is_empty() {
657            os.write_string(1, &self.os_short_name)?;
658        }
659        if !self.os_version.is_empty() {
660            os.write_string(2, &self.os_version)?;
661        }
662        os.write_unknown_fields(self.get_unknown_fields())?;
663        ::std::result::Result::Ok(())
664    }
665
666    fn get_cached_size(&self) -> u32 {
667        self.cached_size.get()
668    }
669
670    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
671        &self.unknown_fields
672    }
673
674    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
675        &mut self.unknown_fields
676    }
677
678    fn as_any(&self) -> &dyn (::std::any::Any) {
679        self as &dyn (::std::any::Any)
680    }
681    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
682        self as &mut dyn (::std::any::Any)
683    }
684    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
685        self
686    }
687
688    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
689        Self::descriptor_static()
690    }
691
692    fn new() -> OSPolicy_InventoryFilter {
693        OSPolicy_InventoryFilter::new()
694    }
695
696    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
697        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
698        descriptor.get(|| {
699            let mut fields = ::std::vec::Vec::new();
700            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
701                "os_short_name",
702                |m: &OSPolicy_InventoryFilter| { &m.os_short_name },
703                |m: &mut OSPolicy_InventoryFilter| { &mut m.os_short_name },
704            ));
705            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
706                "os_version",
707                |m: &OSPolicy_InventoryFilter| { &m.os_version },
708                |m: &mut OSPolicy_InventoryFilter| { &mut m.os_version },
709            ));
710            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_InventoryFilter>(
711                "OSPolicy.InventoryFilter",
712                fields,
713                file_descriptor_proto()
714            )
715        })
716    }
717
718    fn default_instance() -> &'static OSPolicy_InventoryFilter {
719        static instance: ::protobuf::rt::LazyV2<OSPolicy_InventoryFilter> = ::protobuf::rt::LazyV2::INIT;
720        instance.get(OSPolicy_InventoryFilter::new)
721    }
722}
723
724impl ::protobuf::Clear for OSPolicy_InventoryFilter {
725    fn clear(&mut self) {
726        self.os_short_name.clear();
727        self.os_version.clear();
728        self.unknown_fields.clear();
729    }
730}
731
732impl ::std::fmt::Debug for OSPolicy_InventoryFilter {
733    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
734        ::protobuf::text_format::fmt(self, f)
735    }
736}
737
738impl ::protobuf::reflect::ProtobufValue for OSPolicy_InventoryFilter {
739    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
740        ::protobuf::reflect::ReflectValueRef::Message(self)
741    }
742}
743
744#[derive(PartialEq,Clone,Default)]
745pub struct OSPolicy_Resource {
746    // message fields
747    pub id: ::std::string::String,
748    // message oneof groups
749    pub resource_type: ::std::option::Option<OSPolicy_Resource_oneof_resource_type>,
750    // special fields
751    pub unknown_fields: ::protobuf::UnknownFields,
752    pub cached_size: ::protobuf::CachedSize,
753}
754
755impl<'a> ::std::default::Default for &'a OSPolicy_Resource {
756    fn default() -> &'a OSPolicy_Resource {
757        <OSPolicy_Resource as ::protobuf::Message>::default_instance()
758    }
759}
760
761#[derive(Clone,PartialEq,Debug)]
762pub enum OSPolicy_Resource_oneof_resource_type {
763    pkg(OSPolicy_Resource_PackageResource),
764    repository(OSPolicy_Resource_RepositoryResource),
765    exec(OSPolicy_Resource_ExecResource),
766    file(OSPolicy_Resource_FileResource),
767}
768
769impl OSPolicy_Resource {
770    pub fn new() -> OSPolicy_Resource {
771        ::std::default::Default::default()
772    }
773
774    // string id = 1;
775
776
777    pub fn get_id(&self) -> &str {
778        &self.id
779    }
780    pub fn clear_id(&mut self) {
781        self.id.clear();
782    }
783
784    // Param is passed by value, moved
785    pub fn set_id(&mut self, v: ::std::string::String) {
786        self.id = v;
787    }
788
789    // Mutable pointer to the field.
790    // If field is not initialized, it is initialized with default value first.
791    pub fn mut_id(&mut self) -> &mut ::std::string::String {
792        &mut self.id
793    }
794
795    // Take field
796    pub fn take_id(&mut self) -> ::std::string::String {
797        ::std::mem::replace(&mut self.id, ::std::string::String::new())
798    }
799
800    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource pkg = 2;
801
802
803    pub fn get_pkg(&self) -> &OSPolicy_Resource_PackageResource {
804        match self.resource_type {
805            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::pkg(ref v)) => v,
806            _ => <OSPolicy_Resource_PackageResource as ::protobuf::Message>::default_instance(),
807        }
808    }
809    pub fn clear_pkg(&mut self) {
810        self.resource_type = ::std::option::Option::None;
811    }
812
813    pub fn has_pkg(&self) -> bool {
814        match self.resource_type {
815            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::pkg(..)) => true,
816            _ => false,
817        }
818    }
819
820    // Param is passed by value, moved
821    pub fn set_pkg(&mut self, v: OSPolicy_Resource_PackageResource) {
822        self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::pkg(v))
823    }
824
825    // Mutable pointer to the field.
826    pub fn mut_pkg(&mut self) -> &mut OSPolicy_Resource_PackageResource {
827        if let ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::pkg(_)) = self.resource_type {
828        } else {
829            self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::pkg(OSPolicy_Resource_PackageResource::new()));
830        }
831        match self.resource_type {
832            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::pkg(ref mut v)) => v,
833            _ => panic!(),
834        }
835    }
836
837    // Take field
838    pub fn take_pkg(&mut self) -> OSPolicy_Resource_PackageResource {
839        if self.has_pkg() {
840            match self.resource_type.take() {
841                ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::pkg(v)) => v,
842                _ => panic!(),
843            }
844        } else {
845            OSPolicy_Resource_PackageResource::new()
846        }
847    }
848
849    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryResource repository = 3;
850
851
852    pub fn get_repository(&self) -> &OSPolicy_Resource_RepositoryResource {
853        match self.resource_type {
854            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::repository(ref v)) => v,
855            _ => <OSPolicy_Resource_RepositoryResource as ::protobuf::Message>::default_instance(),
856        }
857    }
858    pub fn clear_repository(&mut self) {
859        self.resource_type = ::std::option::Option::None;
860    }
861
862    pub fn has_repository(&self) -> bool {
863        match self.resource_type {
864            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::repository(..)) => true,
865            _ => false,
866        }
867    }
868
869    // Param is passed by value, moved
870    pub fn set_repository(&mut self, v: OSPolicy_Resource_RepositoryResource) {
871        self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::repository(v))
872    }
873
874    // Mutable pointer to the field.
875    pub fn mut_repository(&mut self) -> &mut OSPolicy_Resource_RepositoryResource {
876        if let ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::repository(_)) = self.resource_type {
877        } else {
878            self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::repository(OSPolicy_Resource_RepositoryResource::new()));
879        }
880        match self.resource_type {
881            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::repository(ref mut v)) => v,
882            _ => panic!(),
883        }
884    }
885
886    // Take field
887    pub fn take_repository(&mut self) -> OSPolicy_Resource_RepositoryResource {
888        if self.has_repository() {
889            match self.resource_type.take() {
890                ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::repository(v)) => v,
891                _ => panic!(),
892            }
893        } else {
894            OSPolicy_Resource_RepositoryResource::new()
895        }
896    }
897
898    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource exec = 4;
899
900
901    pub fn get_exec(&self) -> &OSPolicy_Resource_ExecResource {
902        match self.resource_type {
903            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::exec(ref v)) => v,
904            _ => <OSPolicy_Resource_ExecResource as ::protobuf::Message>::default_instance(),
905        }
906    }
907    pub fn clear_exec(&mut self) {
908        self.resource_type = ::std::option::Option::None;
909    }
910
911    pub fn has_exec(&self) -> bool {
912        match self.resource_type {
913            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::exec(..)) => true,
914            _ => false,
915        }
916    }
917
918    // Param is passed by value, moved
919    pub fn set_exec(&mut self, v: OSPolicy_Resource_ExecResource) {
920        self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::exec(v))
921    }
922
923    // Mutable pointer to the field.
924    pub fn mut_exec(&mut self) -> &mut OSPolicy_Resource_ExecResource {
925        if let ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::exec(_)) = self.resource_type {
926        } else {
927            self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::exec(OSPolicy_Resource_ExecResource::new()));
928        }
929        match self.resource_type {
930            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::exec(ref mut v)) => v,
931            _ => panic!(),
932        }
933    }
934
935    // Take field
936    pub fn take_exec(&mut self) -> OSPolicy_Resource_ExecResource {
937        if self.has_exec() {
938            match self.resource_type.take() {
939                ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::exec(v)) => v,
940                _ => panic!(),
941            }
942        } else {
943            OSPolicy_Resource_ExecResource::new()
944        }
945    }
946
947    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.FileResource file = 5;
948
949
950    pub fn get_file(&self) -> &OSPolicy_Resource_FileResource {
951        match self.resource_type {
952            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::file(ref v)) => v,
953            _ => <OSPolicy_Resource_FileResource as ::protobuf::Message>::default_instance(),
954        }
955    }
956    pub fn clear_file(&mut self) {
957        self.resource_type = ::std::option::Option::None;
958    }
959
960    pub fn has_file(&self) -> bool {
961        match self.resource_type {
962            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::file(..)) => true,
963            _ => false,
964        }
965    }
966
967    // Param is passed by value, moved
968    pub fn set_file(&mut self, v: OSPolicy_Resource_FileResource) {
969        self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::file(v))
970    }
971
972    // Mutable pointer to the field.
973    pub fn mut_file(&mut self) -> &mut OSPolicy_Resource_FileResource {
974        if let ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::file(_)) = self.resource_type {
975        } else {
976            self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::file(OSPolicy_Resource_FileResource::new()));
977        }
978        match self.resource_type {
979            ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::file(ref mut v)) => v,
980            _ => panic!(),
981        }
982    }
983
984    // Take field
985    pub fn take_file(&mut self) -> OSPolicy_Resource_FileResource {
986        if self.has_file() {
987            match self.resource_type.take() {
988                ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::file(v)) => v,
989                _ => panic!(),
990            }
991        } else {
992            OSPolicy_Resource_FileResource::new()
993        }
994    }
995}
996
997impl ::protobuf::Message for OSPolicy_Resource {
998    fn is_initialized(&self) -> bool {
999        if let Some(OSPolicy_Resource_oneof_resource_type::pkg(ref v)) = self.resource_type {
1000            if !v.is_initialized() {
1001                return false;
1002            }
1003        }
1004        if let Some(OSPolicy_Resource_oneof_resource_type::repository(ref v)) = self.resource_type {
1005            if !v.is_initialized() {
1006                return false;
1007            }
1008        }
1009        if let Some(OSPolicy_Resource_oneof_resource_type::exec(ref v)) = self.resource_type {
1010            if !v.is_initialized() {
1011                return false;
1012            }
1013        }
1014        if let Some(OSPolicy_Resource_oneof_resource_type::file(ref v)) = self.resource_type {
1015            if !v.is_initialized() {
1016                return false;
1017            }
1018        }
1019        true
1020    }
1021
1022    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1023        while !is.eof()? {
1024            let (field_number, wire_type) = is.read_tag_unpack()?;
1025            match field_number {
1026                1 => {
1027                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.id)?;
1028                },
1029                2 => {
1030                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
1031                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1032                    }
1033                    self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::pkg(is.read_message()?));
1034                },
1035                3 => {
1036                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
1037                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1038                    }
1039                    self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::repository(is.read_message()?));
1040                },
1041                4 => {
1042                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
1043                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1044                    }
1045                    self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::exec(is.read_message()?));
1046                },
1047                5 => {
1048                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
1049                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1050                    }
1051                    self.resource_type = ::std::option::Option::Some(OSPolicy_Resource_oneof_resource_type::file(is.read_message()?));
1052                },
1053                _ => {
1054                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1055                },
1056            };
1057        }
1058        ::std::result::Result::Ok(())
1059    }
1060
1061    // Compute sizes of nested messages
1062    #[allow(unused_variables)]
1063    fn compute_size(&self) -> u32 {
1064        let mut my_size = 0;
1065        if !self.id.is_empty() {
1066            my_size += ::protobuf::rt::string_size(1, &self.id);
1067        }
1068        if let ::std::option::Option::Some(ref v) = self.resource_type {
1069            match v {
1070                &OSPolicy_Resource_oneof_resource_type::pkg(ref v) => {
1071                    let len = v.compute_size();
1072                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1073                },
1074                &OSPolicy_Resource_oneof_resource_type::repository(ref v) => {
1075                    let len = v.compute_size();
1076                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1077                },
1078                &OSPolicy_Resource_oneof_resource_type::exec(ref v) => {
1079                    let len = v.compute_size();
1080                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1081                },
1082                &OSPolicy_Resource_oneof_resource_type::file(ref v) => {
1083                    let len = v.compute_size();
1084                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1085                },
1086            };
1087        }
1088        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1089        self.cached_size.set(my_size);
1090        my_size
1091    }
1092
1093    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1094        if !self.id.is_empty() {
1095            os.write_string(1, &self.id)?;
1096        }
1097        if let ::std::option::Option::Some(ref v) = self.resource_type {
1098            match v {
1099                &OSPolicy_Resource_oneof_resource_type::pkg(ref v) => {
1100                    os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1101                    os.write_raw_varint32(v.get_cached_size())?;
1102                    v.write_to_with_cached_sizes(os)?;
1103                },
1104                &OSPolicy_Resource_oneof_resource_type::repository(ref v) => {
1105                    os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1106                    os.write_raw_varint32(v.get_cached_size())?;
1107                    v.write_to_with_cached_sizes(os)?;
1108                },
1109                &OSPolicy_Resource_oneof_resource_type::exec(ref v) => {
1110                    os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1111                    os.write_raw_varint32(v.get_cached_size())?;
1112                    v.write_to_with_cached_sizes(os)?;
1113                },
1114                &OSPolicy_Resource_oneof_resource_type::file(ref v) => {
1115                    os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1116                    os.write_raw_varint32(v.get_cached_size())?;
1117                    v.write_to_with_cached_sizes(os)?;
1118                },
1119            };
1120        }
1121        os.write_unknown_fields(self.get_unknown_fields())?;
1122        ::std::result::Result::Ok(())
1123    }
1124
1125    fn get_cached_size(&self) -> u32 {
1126        self.cached_size.get()
1127    }
1128
1129    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1130        &self.unknown_fields
1131    }
1132
1133    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1134        &mut self.unknown_fields
1135    }
1136
1137    fn as_any(&self) -> &dyn (::std::any::Any) {
1138        self as &dyn (::std::any::Any)
1139    }
1140    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1141        self as &mut dyn (::std::any::Any)
1142    }
1143    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1144        self
1145    }
1146
1147    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1148        Self::descriptor_static()
1149    }
1150
1151    fn new() -> OSPolicy_Resource {
1152        OSPolicy_Resource::new()
1153    }
1154
1155    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1156        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1157        descriptor.get(|| {
1158            let mut fields = ::std::vec::Vec::new();
1159            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1160                "id",
1161                |m: &OSPolicy_Resource| { &m.id },
1162                |m: &mut OSPolicy_Resource| { &mut m.id },
1163            ));
1164            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_PackageResource>(
1165                "pkg",
1166                OSPolicy_Resource::has_pkg,
1167                OSPolicy_Resource::get_pkg,
1168            ));
1169            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_RepositoryResource>(
1170                "repository",
1171                OSPolicy_Resource::has_repository,
1172                OSPolicy_Resource::get_repository,
1173            ));
1174            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_ExecResource>(
1175                "exec",
1176                OSPolicy_Resource::has_exec,
1177                OSPolicy_Resource::get_exec,
1178            ));
1179            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_FileResource>(
1180                "file",
1181                OSPolicy_Resource::has_file,
1182                OSPolicy_Resource::get_file,
1183            ));
1184            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource>(
1185                "OSPolicy.Resource",
1186                fields,
1187                file_descriptor_proto()
1188            )
1189        })
1190    }
1191
1192    fn default_instance() -> &'static OSPolicy_Resource {
1193        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource> = ::protobuf::rt::LazyV2::INIT;
1194        instance.get(OSPolicy_Resource::new)
1195    }
1196}
1197
1198impl ::protobuf::Clear for OSPolicy_Resource {
1199    fn clear(&mut self) {
1200        self.id.clear();
1201        self.resource_type = ::std::option::Option::None;
1202        self.resource_type = ::std::option::Option::None;
1203        self.resource_type = ::std::option::Option::None;
1204        self.resource_type = ::std::option::Option::None;
1205        self.unknown_fields.clear();
1206    }
1207}
1208
1209impl ::std::fmt::Debug for OSPolicy_Resource {
1210    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1211        ::protobuf::text_format::fmt(self, f)
1212    }
1213}
1214
1215impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource {
1216    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1217        ::protobuf::reflect::ReflectValueRef::Message(self)
1218    }
1219}
1220
1221#[derive(PartialEq,Clone,Default)]
1222pub struct OSPolicy_Resource_File {
1223    // message fields
1224    pub allow_insecure: bool,
1225    // message oneof groups
1226    pub field_type: ::std::option::Option<OSPolicy_Resource_File_oneof_type>,
1227    // special fields
1228    pub unknown_fields: ::protobuf::UnknownFields,
1229    pub cached_size: ::protobuf::CachedSize,
1230}
1231
1232impl<'a> ::std::default::Default for &'a OSPolicy_Resource_File {
1233    fn default() -> &'a OSPolicy_Resource_File {
1234        <OSPolicy_Resource_File as ::protobuf::Message>::default_instance()
1235    }
1236}
1237
1238#[derive(Clone,PartialEq,Debug)]
1239pub enum OSPolicy_Resource_File_oneof_type {
1240    remote(OSPolicy_Resource_File_Remote),
1241    gcs(OSPolicy_Resource_File_Gcs),
1242    local_path(::std::string::String),
1243}
1244
1245impl OSPolicy_Resource_File {
1246    pub fn new() -> OSPolicy_Resource_File {
1247        ::std::default::Default::default()
1248    }
1249
1250    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.File.Remote remote = 1;
1251
1252
1253    pub fn get_remote(&self) -> &OSPolicy_Resource_File_Remote {
1254        match self.field_type {
1255            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::remote(ref v)) => v,
1256            _ => <OSPolicy_Resource_File_Remote as ::protobuf::Message>::default_instance(),
1257        }
1258    }
1259    pub fn clear_remote(&mut self) {
1260        self.field_type = ::std::option::Option::None;
1261    }
1262
1263    pub fn has_remote(&self) -> bool {
1264        match self.field_type {
1265            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::remote(..)) => true,
1266            _ => false,
1267        }
1268    }
1269
1270    // Param is passed by value, moved
1271    pub fn set_remote(&mut self, v: OSPolicy_Resource_File_Remote) {
1272        self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::remote(v))
1273    }
1274
1275    // Mutable pointer to the field.
1276    pub fn mut_remote(&mut self) -> &mut OSPolicy_Resource_File_Remote {
1277        if let ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::remote(_)) = self.field_type {
1278        } else {
1279            self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::remote(OSPolicy_Resource_File_Remote::new()));
1280        }
1281        match self.field_type {
1282            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::remote(ref mut v)) => v,
1283            _ => panic!(),
1284        }
1285    }
1286
1287    // Take field
1288    pub fn take_remote(&mut self) -> OSPolicy_Resource_File_Remote {
1289        if self.has_remote() {
1290            match self.field_type.take() {
1291                ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::remote(v)) => v,
1292                _ => panic!(),
1293            }
1294        } else {
1295            OSPolicy_Resource_File_Remote::new()
1296        }
1297    }
1298
1299    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.File.Gcs gcs = 2;
1300
1301
1302    pub fn get_gcs(&self) -> &OSPolicy_Resource_File_Gcs {
1303        match self.field_type {
1304            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::gcs(ref v)) => v,
1305            _ => <OSPolicy_Resource_File_Gcs as ::protobuf::Message>::default_instance(),
1306        }
1307    }
1308    pub fn clear_gcs(&mut self) {
1309        self.field_type = ::std::option::Option::None;
1310    }
1311
1312    pub fn has_gcs(&self) -> bool {
1313        match self.field_type {
1314            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::gcs(..)) => true,
1315            _ => false,
1316        }
1317    }
1318
1319    // Param is passed by value, moved
1320    pub fn set_gcs(&mut self, v: OSPolicy_Resource_File_Gcs) {
1321        self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::gcs(v))
1322    }
1323
1324    // Mutable pointer to the field.
1325    pub fn mut_gcs(&mut self) -> &mut OSPolicy_Resource_File_Gcs {
1326        if let ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::gcs(_)) = self.field_type {
1327        } else {
1328            self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::gcs(OSPolicy_Resource_File_Gcs::new()));
1329        }
1330        match self.field_type {
1331            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::gcs(ref mut v)) => v,
1332            _ => panic!(),
1333        }
1334    }
1335
1336    // Take field
1337    pub fn take_gcs(&mut self) -> OSPolicy_Resource_File_Gcs {
1338        if self.has_gcs() {
1339            match self.field_type.take() {
1340                ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::gcs(v)) => v,
1341                _ => panic!(),
1342            }
1343        } else {
1344            OSPolicy_Resource_File_Gcs::new()
1345        }
1346    }
1347
1348    // string local_path = 3;
1349
1350
1351    pub fn get_local_path(&self) -> &str {
1352        match self.field_type {
1353            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::local_path(ref v)) => v,
1354            _ => "",
1355        }
1356    }
1357    pub fn clear_local_path(&mut self) {
1358        self.field_type = ::std::option::Option::None;
1359    }
1360
1361    pub fn has_local_path(&self) -> bool {
1362        match self.field_type {
1363            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::local_path(..)) => true,
1364            _ => false,
1365        }
1366    }
1367
1368    // Param is passed by value, moved
1369    pub fn set_local_path(&mut self, v: ::std::string::String) {
1370        self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::local_path(v))
1371    }
1372
1373    // Mutable pointer to the field.
1374    pub fn mut_local_path(&mut self) -> &mut ::std::string::String {
1375        if let ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::local_path(_)) = self.field_type {
1376        } else {
1377            self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::local_path(::std::string::String::new()));
1378        }
1379        match self.field_type {
1380            ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::local_path(ref mut v)) => v,
1381            _ => panic!(),
1382        }
1383    }
1384
1385    // Take field
1386    pub fn take_local_path(&mut self) -> ::std::string::String {
1387        if self.has_local_path() {
1388            match self.field_type.take() {
1389                ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::local_path(v)) => v,
1390                _ => panic!(),
1391            }
1392        } else {
1393            ::std::string::String::new()
1394        }
1395    }
1396
1397    // bool allow_insecure = 4;
1398
1399
1400    pub fn get_allow_insecure(&self) -> bool {
1401        self.allow_insecure
1402    }
1403    pub fn clear_allow_insecure(&mut self) {
1404        self.allow_insecure = false;
1405    }
1406
1407    // Param is passed by value, moved
1408    pub fn set_allow_insecure(&mut self, v: bool) {
1409        self.allow_insecure = v;
1410    }
1411}
1412
1413impl ::protobuf::Message for OSPolicy_Resource_File {
1414    fn is_initialized(&self) -> bool {
1415        if let Some(OSPolicy_Resource_File_oneof_type::remote(ref v)) = self.field_type {
1416            if !v.is_initialized() {
1417                return false;
1418            }
1419        }
1420        if let Some(OSPolicy_Resource_File_oneof_type::gcs(ref v)) = self.field_type {
1421            if !v.is_initialized() {
1422                return false;
1423            }
1424        }
1425        true
1426    }
1427
1428    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1429        while !is.eof()? {
1430            let (field_number, wire_type) = is.read_tag_unpack()?;
1431            match field_number {
1432                1 => {
1433                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
1434                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1435                    }
1436                    self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::remote(is.read_message()?));
1437                },
1438                2 => {
1439                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
1440                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1441                    }
1442                    self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::gcs(is.read_message()?));
1443                },
1444                3 => {
1445                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
1446                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1447                    }
1448                    self.field_type = ::std::option::Option::Some(OSPolicy_Resource_File_oneof_type::local_path(is.read_string()?));
1449                },
1450                4 => {
1451                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
1452                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1453                    }
1454                    let tmp = is.read_bool()?;
1455                    self.allow_insecure = tmp;
1456                },
1457                _ => {
1458                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1459                },
1460            };
1461        }
1462        ::std::result::Result::Ok(())
1463    }
1464
1465    // Compute sizes of nested messages
1466    #[allow(unused_variables)]
1467    fn compute_size(&self) -> u32 {
1468        let mut my_size = 0;
1469        if self.allow_insecure != false {
1470            my_size += 2;
1471        }
1472        if let ::std::option::Option::Some(ref v) = self.field_type {
1473            match v {
1474                &OSPolicy_Resource_File_oneof_type::remote(ref v) => {
1475                    let len = v.compute_size();
1476                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1477                },
1478                &OSPolicy_Resource_File_oneof_type::gcs(ref v) => {
1479                    let len = v.compute_size();
1480                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1481                },
1482                &OSPolicy_Resource_File_oneof_type::local_path(ref v) => {
1483                    my_size += ::protobuf::rt::string_size(3, &v);
1484                },
1485            };
1486        }
1487        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1488        self.cached_size.set(my_size);
1489        my_size
1490    }
1491
1492    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1493        if self.allow_insecure != false {
1494            os.write_bool(4, self.allow_insecure)?;
1495        }
1496        if let ::std::option::Option::Some(ref v) = self.field_type {
1497            match v {
1498                &OSPolicy_Resource_File_oneof_type::remote(ref v) => {
1499                    os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1500                    os.write_raw_varint32(v.get_cached_size())?;
1501                    v.write_to_with_cached_sizes(os)?;
1502                },
1503                &OSPolicy_Resource_File_oneof_type::gcs(ref v) => {
1504                    os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1505                    os.write_raw_varint32(v.get_cached_size())?;
1506                    v.write_to_with_cached_sizes(os)?;
1507                },
1508                &OSPolicy_Resource_File_oneof_type::local_path(ref v) => {
1509                    os.write_string(3, v)?;
1510                },
1511            };
1512        }
1513        os.write_unknown_fields(self.get_unknown_fields())?;
1514        ::std::result::Result::Ok(())
1515    }
1516
1517    fn get_cached_size(&self) -> u32 {
1518        self.cached_size.get()
1519    }
1520
1521    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1522        &self.unknown_fields
1523    }
1524
1525    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1526        &mut self.unknown_fields
1527    }
1528
1529    fn as_any(&self) -> &dyn (::std::any::Any) {
1530        self as &dyn (::std::any::Any)
1531    }
1532    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1533        self as &mut dyn (::std::any::Any)
1534    }
1535    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1536        self
1537    }
1538
1539    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1540        Self::descriptor_static()
1541    }
1542
1543    fn new() -> OSPolicy_Resource_File {
1544        OSPolicy_Resource_File::new()
1545    }
1546
1547    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1548        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1549        descriptor.get(|| {
1550            let mut fields = ::std::vec::Vec::new();
1551            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_File_Remote>(
1552                "remote",
1553                OSPolicy_Resource_File::has_remote,
1554                OSPolicy_Resource_File::get_remote,
1555            ));
1556            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_File_Gcs>(
1557                "gcs",
1558                OSPolicy_Resource_File::has_gcs,
1559                OSPolicy_Resource_File::get_gcs,
1560            ));
1561            fields.push(::protobuf::reflect::accessor::make_singular_string_accessor::<_>(
1562                "local_path",
1563                OSPolicy_Resource_File::has_local_path,
1564                OSPolicy_Resource_File::get_local_path,
1565            ));
1566            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
1567                "allow_insecure",
1568                |m: &OSPolicy_Resource_File| { &m.allow_insecure },
1569                |m: &mut OSPolicy_Resource_File| { &mut m.allow_insecure },
1570            ));
1571            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_File>(
1572                "OSPolicy.Resource.File",
1573                fields,
1574                file_descriptor_proto()
1575            )
1576        })
1577    }
1578
1579    fn default_instance() -> &'static OSPolicy_Resource_File {
1580        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_File> = ::protobuf::rt::LazyV2::INIT;
1581        instance.get(OSPolicy_Resource_File::new)
1582    }
1583}
1584
1585impl ::protobuf::Clear for OSPolicy_Resource_File {
1586    fn clear(&mut self) {
1587        self.field_type = ::std::option::Option::None;
1588        self.field_type = ::std::option::Option::None;
1589        self.field_type = ::std::option::Option::None;
1590        self.allow_insecure = false;
1591        self.unknown_fields.clear();
1592    }
1593}
1594
1595impl ::std::fmt::Debug for OSPolicy_Resource_File {
1596    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1597        ::protobuf::text_format::fmt(self, f)
1598    }
1599}
1600
1601impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_File {
1602    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1603        ::protobuf::reflect::ReflectValueRef::Message(self)
1604    }
1605}
1606
1607#[derive(PartialEq,Clone,Default)]
1608pub struct OSPolicy_Resource_File_Remote {
1609    // message fields
1610    pub uri: ::std::string::String,
1611    pub sha256_checksum: ::std::string::String,
1612    // special fields
1613    pub unknown_fields: ::protobuf::UnknownFields,
1614    pub cached_size: ::protobuf::CachedSize,
1615}
1616
1617impl<'a> ::std::default::Default for &'a OSPolicy_Resource_File_Remote {
1618    fn default() -> &'a OSPolicy_Resource_File_Remote {
1619        <OSPolicy_Resource_File_Remote as ::protobuf::Message>::default_instance()
1620    }
1621}
1622
1623impl OSPolicy_Resource_File_Remote {
1624    pub fn new() -> OSPolicy_Resource_File_Remote {
1625        ::std::default::Default::default()
1626    }
1627
1628    // string uri = 1;
1629
1630
1631    pub fn get_uri(&self) -> &str {
1632        &self.uri
1633    }
1634    pub fn clear_uri(&mut self) {
1635        self.uri.clear();
1636    }
1637
1638    // Param is passed by value, moved
1639    pub fn set_uri(&mut self, v: ::std::string::String) {
1640        self.uri = v;
1641    }
1642
1643    // Mutable pointer to the field.
1644    // If field is not initialized, it is initialized with default value first.
1645    pub fn mut_uri(&mut self) -> &mut ::std::string::String {
1646        &mut self.uri
1647    }
1648
1649    // Take field
1650    pub fn take_uri(&mut self) -> ::std::string::String {
1651        ::std::mem::replace(&mut self.uri, ::std::string::String::new())
1652    }
1653
1654    // string sha256_checksum = 2;
1655
1656
1657    pub fn get_sha256_checksum(&self) -> &str {
1658        &self.sha256_checksum
1659    }
1660    pub fn clear_sha256_checksum(&mut self) {
1661        self.sha256_checksum.clear();
1662    }
1663
1664    // Param is passed by value, moved
1665    pub fn set_sha256_checksum(&mut self, v: ::std::string::String) {
1666        self.sha256_checksum = v;
1667    }
1668
1669    // Mutable pointer to the field.
1670    // If field is not initialized, it is initialized with default value first.
1671    pub fn mut_sha256_checksum(&mut self) -> &mut ::std::string::String {
1672        &mut self.sha256_checksum
1673    }
1674
1675    // Take field
1676    pub fn take_sha256_checksum(&mut self) -> ::std::string::String {
1677        ::std::mem::replace(&mut self.sha256_checksum, ::std::string::String::new())
1678    }
1679}
1680
1681impl ::protobuf::Message for OSPolicy_Resource_File_Remote {
1682    fn is_initialized(&self) -> bool {
1683        true
1684    }
1685
1686    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1687        while !is.eof()? {
1688            let (field_number, wire_type) = is.read_tag_unpack()?;
1689            match field_number {
1690                1 => {
1691                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.uri)?;
1692                },
1693                2 => {
1694                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.sha256_checksum)?;
1695                },
1696                _ => {
1697                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1698                },
1699            };
1700        }
1701        ::std::result::Result::Ok(())
1702    }
1703
1704    // Compute sizes of nested messages
1705    #[allow(unused_variables)]
1706    fn compute_size(&self) -> u32 {
1707        let mut my_size = 0;
1708        if !self.uri.is_empty() {
1709            my_size += ::protobuf::rt::string_size(1, &self.uri);
1710        }
1711        if !self.sha256_checksum.is_empty() {
1712            my_size += ::protobuf::rt::string_size(2, &self.sha256_checksum);
1713        }
1714        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1715        self.cached_size.set(my_size);
1716        my_size
1717    }
1718
1719    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1720        if !self.uri.is_empty() {
1721            os.write_string(1, &self.uri)?;
1722        }
1723        if !self.sha256_checksum.is_empty() {
1724            os.write_string(2, &self.sha256_checksum)?;
1725        }
1726        os.write_unknown_fields(self.get_unknown_fields())?;
1727        ::std::result::Result::Ok(())
1728    }
1729
1730    fn get_cached_size(&self) -> u32 {
1731        self.cached_size.get()
1732    }
1733
1734    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1735        &self.unknown_fields
1736    }
1737
1738    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1739        &mut self.unknown_fields
1740    }
1741
1742    fn as_any(&self) -> &dyn (::std::any::Any) {
1743        self as &dyn (::std::any::Any)
1744    }
1745    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1746        self as &mut dyn (::std::any::Any)
1747    }
1748    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1749        self
1750    }
1751
1752    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1753        Self::descriptor_static()
1754    }
1755
1756    fn new() -> OSPolicy_Resource_File_Remote {
1757        OSPolicy_Resource_File_Remote::new()
1758    }
1759
1760    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1761        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1762        descriptor.get(|| {
1763            let mut fields = ::std::vec::Vec::new();
1764            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1765                "uri",
1766                |m: &OSPolicy_Resource_File_Remote| { &m.uri },
1767                |m: &mut OSPolicy_Resource_File_Remote| { &mut m.uri },
1768            ));
1769            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1770                "sha256_checksum",
1771                |m: &OSPolicy_Resource_File_Remote| { &m.sha256_checksum },
1772                |m: &mut OSPolicy_Resource_File_Remote| { &mut m.sha256_checksum },
1773            ));
1774            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_File_Remote>(
1775                "OSPolicy.Resource.File.Remote",
1776                fields,
1777                file_descriptor_proto()
1778            )
1779        })
1780    }
1781
1782    fn default_instance() -> &'static OSPolicy_Resource_File_Remote {
1783        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_File_Remote> = ::protobuf::rt::LazyV2::INIT;
1784        instance.get(OSPolicy_Resource_File_Remote::new)
1785    }
1786}
1787
1788impl ::protobuf::Clear for OSPolicy_Resource_File_Remote {
1789    fn clear(&mut self) {
1790        self.uri.clear();
1791        self.sha256_checksum.clear();
1792        self.unknown_fields.clear();
1793    }
1794}
1795
1796impl ::std::fmt::Debug for OSPolicy_Resource_File_Remote {
1797    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1798        ::protobuf::text_format::fmt(self, f)
1799    }
1800}
1801
1802impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_File_Remote {
1803    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1804        ::protobuf::reflect::ReflectValueRef::Message(self)
1805    }
1806}
1807
1808#[derive(PartialEq,Clone,Default)]
1809pub struct OSPolicy_Resource_File_Gcs {
1810    // message fields
1811    pub bucket: ::std::string::String,
1812    pub object: ::std::string::String,
1813    pub generation: i64,
1814    // special fields
1815    pub unknown_fields: ::protobuf::UnknownFields,
1816    pub cached_size: ::protobuf::CachedSize,
1817}
1818
1819impl<'a> ::std::default::Default for &'a OSPolicy_Resource_File_Gcs {
1820    fn default() -> &'a OSPolicy_Resource_File_Gcs {
1821        <OSPolicy_Resource_File_Gcs as ::protobuf::Message>::default_instance()
1822    }
1823}
1824
1825impl OSPolicy_Resource_File_Gcs {
1826    pub fn new() -> OSPolicy_Resource_File_Gcs {
1827        ::std::default::Default::default()
1828    }
1829
1830    // string bucket = 1;
1831
1832
1833    pub fn get_bucket(&self) -> &str {
1834        &self.bucket
1835    }
1836    pub fn clear_bucket(&mut self) {
1837        self.bucket.clear();
1838    }
1839
1840    // Param is passed by value, moved
1841    pub fn set_bucket(&mut self, v: ::std::string::String) {
1842        self.bucket = v;
1843    }
1844
1845    // Mutable pointer to the field.
1846    // If field is not initialized, it is initialized with default value first.
1847    pub fn mut_bucket(&mut self) -> &mut ::std::string::String {
1848        &mut self.bucket
1849    }
1850
1851    // Take field
1852    pub fn take_bucket(&mut self) -> ::std::string::String {
1853        ::std::mem::replace(&mut self.bucket, ::std::string::String::new())
1854    }
1855
1856    // string object = 2;
1857
1858
1859    pub fn get_object(&self) -> &str {
1860        &self.object
1861    }
1862    pub fn clear_object(&mut self) {
1863        self.object.clear();
1864    }
1865
1866    // Param is passed by value, moved
1867    pub fn set_object(&mut self, v: ::std::string::String) {
1868        self.object = v;
1869    }
1870
1871    // Mutable pointer to the field.
1872    // If field is not initialized, it is initialized with default value first.
1873    pub fn mut_object(&mut self) -> &mut ::std::string::String {
1874        &mut self.object
1875    }
1876
1877    // Take field
1878    pub fn take_object(&mut self) -> ::std::string::String {
1879        ::std::mem::replace(&mut self.object, ::std::string::String::new())
1880    }
1881
1882    // int64 generation = 3;
1883
1884
1885    pub fn get_generation(&self) -> i64 {
1886        self.generation
1887    }
1888    pub fn clear_generation(&mut self) {
1889        self.generation = 0;
1890    }
1891
1892    // Param is passed by value, moved
1893    pub fn set_generation(&mut self, v: i64) {
1894        self.generation = v;
1895    }
1896}
1897
1898impl ::protobuf::Message for OSPolicy_Resource_File_Gcs {
1899    fn is_initialized(&self) -> bool {
1900        true
1901    }
1902
1903    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1904        while !is.eof()? {
1905            let (field_number, wire_type) = is.read_tag_unpack()?;
1906            match field_number {
1907                1 => {
1908                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.bucket)?;
1909                },
1910                2 => {
1911                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.object)?;
1912                },
1913                3 => {
1914                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
1915                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
1916                    }
1917                    let tmp = is.read_int64()?;
1918                    self.generation = tmp;
1919                },
1920                _ => {
1921                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1922                },
1923            };
1924        }
1925        ::std::result::Result::Ok(())
1926    }
1927
1928    // Compute sizes of nested messages
1929    #[allow(unused_variables)]
1930    fn compute_size(&self) -> u32 {
1931        let mut my_size = 0;
1932        if !self.bucket.is_empty() {
1933            my_size += ::protobuf::rt::string_size(1, &self.bucket);
1934        }
1935        if !self.object.is_empty() {
1936            my_size += ::protobuf::rt::string_size(2, &self.object);
1937        }
1938        if self.generation != 0 {
1939            my_size += ::protobuf::rt::value_size(3, self.generation, ::protobuf::wire_format::WireTypeVarint);
1940        }
1941        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1942        self.cached_size.set(my_size);
1943        my_size
1944    }
1945
1946    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1947        if !self.bucket.is_empty() {
1948            os.write_string(1, &self.bucket)?;
1949        }
1950        if !self.object.is_empty() {
1951            os.write_string(2, &self.object)?;
1952        }
1953        if self.generation != 0 {
1954            os.write_int64(3, self.generation)?;
1955        }
1956        os.write_unknown_fields(self.get_unknown_fields())?;
1957        ::std::result::Result::Ok(())
1958    }
1959
1960    fn get_cached_size(&self) -> u32 {
1961        self.cached_size.get()
1962    }
1963
1964    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1965        &self.unknown_fields
1966    }
1967
1968    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1969        &mut self.unknown_fields
1970    }
1971
1972    fn as_any(&self) -> &dyn (::std::any::Any) {
1973        self as &dyn (::std::any::Any)
1974    }
1975    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1976        self as &mut dyn (::std::any::Any)
1977    }
1978    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1979        self
1980    }
1981
1982    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1983        Self::descriptor_static()
1984    }
1985
1986    fn new() -> OSPolicy_Resource_File_Gcs {
1987        OSPolicy_Resource_File_Gcs::new()
1988    }
1989
1990    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1991        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1992        descriptor.get(|| {
1993            let mut fields = ::std::vec::Vec::new();
1994            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1995                "bucket",
1996                |m: &OSPolicy_Resource_File_Gcs| { &m.bucket },
1997                |m: &mut OSPolicy_Resource_File_Gcs| { &mut m.bucket },
1998            ));
1999            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
2000                "object",
2001                |m: &OSPolicy_Resource_File_Gcs| { &m.object },
2002                |m: &mut OSPolicy_Resource_File_Gcs| { &mut m.object },
2003            ));
2004            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
2005                "generation",
2006                |m: &OSPolicy_Resource_File_Gcs| { &m.generation },
2007                |m: &mut OSPolicy_Resource_File_Gcs| { &mut m.generation },
2008            ));
2009            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_File_Gcs>(
2010                "OSPolicy.Resource.File.Gcs",
2011                fields,
2012                file_descriptor_proto()
2013            )
2014        })
2015    }
2016
2017    fn default_instance() -> &'static OSPolicy_Resource_File_Gcs {
2018        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_File_Gcs> = ::protobuf::rt::LazyV2::INIT;
2019        instance.get(OSPolicy_Resource_File_Gcs::new)
2020    }
2021}
2022
2023impl ::protobuf::Clear for OSPolicy_Resource_File_Gcs {
2024    fn clear(&mut self) {
2025        self.bucket.clear();
2026        self.object.clear();
2027        self.generation = 0;
2028        self.unknown_fields.clear();
2029    }
2030}
2031
2032impl ::std::fmt::Debug for OSPolicy_Resource_File_Gcs {
2033    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2034        ::protobuf::text_format::fmt(self, f)
2035    }
2036}
2037
2038impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_File_Gcs {
2039    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2040        ::protobuf::reflect::ReflectValueRef::Message(self)
2041    }
2042}
2043
2044#[derive(PartialEq,Clone,Default)]
2045pub struct OSPolicy_Resource_PackageResource {
2046    // message fields
2047    pub desired_state: OSPolicy_Resource_PackageResource_DesiredState,
2048    // message oneof groups
2049    pub system_package: ::std::option::Option<OSPolicy_Resource_PackageResource_oneof_system_package>,
2050    // special fields
2051    pub unknown_fields: ::protobuf::UnknownFields,
2052    pub cached_size: ::protobuf::CachedSize,
2053}
2054
2055impl<'a> ::std::default::Default for &'a OSPolicy_Resource_PackageResource {
2056    fn default() -> &'a OSPolicy_Resource_PackageResource {
2057        <OSPolicy_Resource_PackageResource as ::protobuf::Message>::default_instance()
2058    }
2059}
2060
2061#[derive(Clone,PartialEq,Debug)]
2062pub enum OSPolicy_Resource_PackageResource_oneof_system_package {
2063    apt(OSPolicy_Resource_PackageResource_APT),
2064    deb(OSPolicy_Resource_PackageResource_Deb),
2065    yum(OSPolicy_Resource_PackageResource_YUM),
2066    zypper(OSPolicy_Resource_PackageResource_Zypper),
2067    rpm(OSPolicy_Resource_PackageResource_RPM),
2068    googet(OSPolicy_Resource_PackageResource_GooGet),
2069    msi(OSPolicy_Resource_PackageResource_MSI),
2070}
2071
2072impl OSPolicy_Resource_PackageResource {
2073    pub fn new() -> OSPolicy_Resource_PackageResource {
2074        ::std::default::Default::default()
2075    }
2076
2077    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.DesiredState desired_state = 1;
2078
2079
2080    pub fn get_desired_state(&self) -> OSPolicy_Resource_PackageResource_DesiredState {
2081        self.desired_state
2082    }
2083    pub fn clear_desired_state(&mut self) {
2084        self.desired_state = OSPolicy_Resource_PackageResource_DesiredState::DESIRED_STATE_UNSPECIFIED;
2085    }
2086
2087    // Param is passed by value, moved
2088    pub fn set_desired_state(&mut self, v: OSPolicy_Resource_PackageResource_DesiredState) {
2089        self.desired_state = v;
2090    }
2091
2092    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.APT apt = 2;
2093
2094
2095    pub fn get_apt(&self) -> &OSPolicy_Resource_PackageResource_APT {
2096        match self.system_package {
2097            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(ref v)) => v,
2098            _ => <OSPolicy_Resource_PackageResource_APT as ::protobuf::Message>::default_instance(),
2099        }
2100    }
2101    pub fn clear_apt(&mut self) {
2102        self.system_package = ::std::option::Option::None;
2103    }
2104
2105    pub fn has_apt(&self) -> bool {
2106        match self.system_package {
2107            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(..)) => true,
2108            _ => false,
2109        }
2110    }
2111
2112    // Param is passed by value, moved
2113    pub fn set_apt(&mut self, v: OSPolicy_Resource_PackageResource_APT) {
2114        self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(v))
2115    }
2116
2117    // Mutable pointer to the field.
2118    pub fn mut_apt(&mut self) -> &mut OSPolicy_Resource_PackageResource_APT {
2119        if let ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(_)) = self.system_package {
2120        } else {
2121            self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(OSPolicy_Resource_PackageResource_APT::new()));
2122        }
2123        match self.system_package {
2124            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(ref mut v)) => v,
2125            _ => panic!(),
2126        }
2127    }
2128
2129    // Take field
2130    pub fn take_apt(&mut self) -> OSPolicy_Resource_PackageResource_APT {
2131        if self.has_apt() {
2132            match self.system_package.take() {
2133                ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(v)) => v,
2134                _ => panic!(),
2135            }
2136        } else {
2137            OSPolicy_Resource_PackageResource_APT::new()
2138        }
2139    }
2140
2141    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.Deb deb = 3;
2142
2143
2144    pub fn get_deb(&self) -> &OSPolicy_Resource_PackageResource_Deb {
2145        match self.system_package {
2146            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(ref v)) => v,
2147            _ => <OSPolicy_Resource_PackageResource_Deb as ::protobuf::Message>::default_instance(),
2148        }
2149    }
2150    pub fn clear_deb(&mut self) {
2151        self.system_package = ::std::option::Option::None;
2152    }
2153
2154    pub fn has_deb(&self) -> bool {
2155        match self.system_package {
2156            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(..)) => true,
2157            _ => false,
2158        }
2159    }
2160
2161    // Param is passed by value, moved
2162    pub fn set_deb(&mut self, v: OSPolicy_Resource_PackageResource_Deb) {
2163        self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(v))
2164    }
2165
2166    // Mutable pointer to the field.
2167    pub fn mut_deb(&mut self) -> &mut OSPolicy_Resource_PackageResource_Deb {
2168        if let ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(_)) = self.system_package {
2169        } else {
2170            self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(OSPolicy_Resource_PackageResource_Deb::new()));
2171        }
2172        match self.system_package {
2173            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(ref mut v)) => v,
2174            _ => panic!(),
2175        }
2176    }
2177
2178    // Take field
2179    pub fn take_deb(&mut self) -> OSPolicy_Resource_PackageResource_Deb {
2180        if self.has_deb() {
2181            match self.system_package.take() {
2182                ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(v)) => v,
2183                _ => panic!(),
2184            }
2185        } else {
2186            OSPolicy_Resource_PackageResource_Deb::new()
2187        }
2188    }
2189
2190    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.YUM yum = 4;
2191
2192
2193    pub fn get_yum(&self) -> &OSPolicy_Resource_PackageResource_YUM {
2194        match self.system_package {
2195            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(ref v)) => v,
2196            _ => <OSPolicy_Resource_PackageResource_YUM as ::protobuf::Message>::default_instance(),
2197        }
2198    }
2199    pub fn clear_yum(&mut self) {
2200        self.system_package = ::std::option::Option::None;
2201    }
2202
2203    pub fn has_yum(&self) -> bool {
2204        match self.system_package {
2205            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(..)) => true,
2206            _ => false,
2207        }
2208    }
2209
2210    // Param is passed by value, moved
2211    pub fn set_yum(&mut self, v: OSPolicy_Resource_PackageResource_YUM) {
2212        self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(v))
2213    }
2214
2215    // Mutable pointer to the field.
2216    pub fn mut_yum(&mut self) -> &mut OSPolicy_Resource_PackageResource_YUM {
2217        if let ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(_)) = self.system_package {
2218        } else {
2219            self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(OSPolicy_Resource_PackageResource_YUM::new()));
2220        }
2221        match self.system_package {
2222            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(ref mut v)) => v,
2223            _ => panic!(),
2224        }
2225    }
2226
2227    // Take field
2228    pub fn take_yum(&mut self) -> OSPolicy_Resource_PackageResource_YUM {
2229        if self.has_yum() {
2230            match self.system_package.take() {
2231                ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(v)) => v,
2232                _ => panic!(),
2233            }
2234        } else {
2235            OSPolicy_Resource_PackageResource_YUM::new()
2236        }
2237    }
2238
2239    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.Zypper zypper = 5;
2240
2241
2242    pub fn get_zypper(&self) -> &OSPolicy_Resource_PackageResource_Zypper {
2243        match self.system_package {
2244            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(ref v)) => v,
2245            _ => <OSPolicy_Resource_PackageResource_Zypper as ::protobuf::Message>::default_instance(),
2246        }
2247    }
2248    pub fn clear_zypper(&mut self) {
2249        self.system_package = ::std::option::Option::None;
2250    }
2251
2252    pub fn has_zypper(&self) -> bool {
2253        match self.system_package {
2254            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(..)) => true,
2255            _ => false,
2256        }
2257    }
2258
2259    // Param is passed by value, moved
2260    pub fn set_zypper(&mut self, v: OSPolicy_Resource_PackageResource_Zypper) {
2261        self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(v))
2262    }
2263
2264    // Mutable pointer to the field.
2265    pub fn mut_zypper(&mut self) -> &mut OSPolicy_Resource_PackageResource_Zypper {
2266        if let ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(_)) = self.system_package {
2267        } else {
2268            self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(OSPolicy_Resource_PackageResource_Zypper::new()));
2269        }
2270        match self.system_package {
2271            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(ref mut v)) => v,
2272            _ => panic!(),
2273        }
2274    }
2275
2276    // Take field
2277    pub fn take_zypper(&mut self) -> OSPolicy_Resource_PackageResource_Zypper {
2278        if self.has_zypper() {
2279            match self.system_package.take() {
2280                ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(v)) => v,
2281                _ => panic!(),
2282            }
2283        } else {
2284            OSPolicy_Resource_PackageResource_Zypper::new()
2285        }
2286    }
2287
2288    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.RPM rpm = 6;
2289
2290
2291    pub fn get_rpm(&self) -> &OSPolicy_Resource_PackageResource_RPM {
2292        match self.system_package {
2293            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(ref v)) => v,
2294            _ => <OSPolicy_Resource_PackageResource_RPM as ::protobuf::Message>::default_instance(),
2295        }
2296    }
2297    pub fn clear_rpm(&mut self) {
2298        self.system_package = ::std::option::Option::None;
2299    }
2300
2301    pub fn has_rpm(&self) -> bool {
2302        match self.system_package {
2303            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(..)) => true,
2304            _ => false,
2305        }
2306    }
2307
2308    // Param is passed by value, moved
2309    pub fn set_rpm(&mut self, v: OSPolicy_Resource_PackageResource_RPM) {
2310        self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(v))
2311    }
2312
2313    // Mutable pointer to the field.
2314    pub fn mut_rpm(&mut self) -> &mut OSPolicy_Resource_PackageResource_RPM {
2315        if let ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(_)) = self.system_package {
2316        } else {
2317            self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(OSPolicy_Resource_PackageResource_RPM::new()));
2318        }
2319        match self.system_package {
2320            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(ref mut v)) => v,
2321            _ => panic!(),
2322        }
2323    }
2324
2325    // Take field
2326    pub fn take_rpm(&mut self) -> OSPolicy_Resource_PackageResource_RPM {
2327        if self.has_rpm() {
2328            match self.system_package.take() {
2329                ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(v)) => v,
2330                _ => panic!(),
2331            }
2332        } else {
2333            OSPolicy_Resource_PackageResource_RPM::new()
2334        }
2335    }
2336
2337    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.GooGet googet = 7;
2338
2339
2340    pub fn get_googet(&self) -> &OSPolicy_Resource_PackageResource_GooGet {
2341        match self.system_package {
2342            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(ref v)) => v,
2343            _ => <OSPolicy_Resource_PackageResource_GooGet as ::protobuf::Message>::default_instance(),
2344        }
2345    }
2346    pub fn clear_googet(&mut self) {
2347        self.system_package = ::std::option::Option::None;
2348    }
2349
2350    pub fn has_googet(&self) -> bool {
2351        match self.system_package {
2352            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(..)) => true,
2353            _ => false,
2354        }
2355    }
2356
2357    // Param is passed by value, moved
2358    pub fn set_googet(&mut self, v: OSPolicy_Resource_PackageResource_GooGet) {
2359        self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(v))
2360    }
2361
2362    // Mutable pointer to the field.
2363    pub fn mut_googet(&mut self) -> &mut OSPolicy_Resource_PackageResource_GooGet {
2364        if let ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(_)) = self.system_package {
2365        } else {
2366            self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(OSPolicy_Resource_PackageResource_GooGet::new()));
2367        }
2368        match self.system_package {
2369            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(ref mut v)) => v,
2370            _ => panic!(),
2371        }
2372    }
2373
2374    // Take field
2375    pub fn take_googet(&mut self) -> OSPolicy_Resource_PackageResource_GooGet {
2376        if self.has_googet() {
2377            match self.system_package.take() {
2378                ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(v)) => v,
2379                _ => panic!(),
2380            }
2381        } else {
2382            OSPolicy_Resource_PackageResource_GooGet::new()
2383        }
2384    }
2385
2386    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.MSI msi = 8;
2387
2388
2389    pub fn get_msi(&self) -> &OSPolicy_Resource_PackageResource_MSI {
2390        match self.system_package {
2391            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(ref v)) => v,
2392            _ => <OSPolicy_Resource_PackageResource_MSI as ::protobuf::Message>::default_instance(),
2393        }
2394    }
2395    pub fn clear_msi(&mut self) {
2396        self.system_package = ::std::option::Option::None;
2397    }
2398
2399    pub fn has_msi(&self) -> bool {
2400        match self.system_package {
2401            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(..)) => true,
2402            _ => false,
2403        }
2404    }
2405
2406    // Param is passed by value, moved
2407    pub fn set_msi(&mut self, v: OSPolicy_Resource_PackageResource_MSI) {
2408        self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(v))
2409    }
2410
2411    // Mutable pointer to the field.
2412    pub fn mut_msi(&mut self) -> &mut OSPolicy_Resource_PackageResource_MSI {
2413        if let ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(_)) = self.system_package {
2414        } else {
2415            self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(OSPolicy_Resource_PackageResource_MSI::new()));
2416        }
2417        match self.system_package {
2418            ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(ref mut v)) => v,
2419            _ => panic!(),
2420        }
2421    }
2422
2423    // Take field
2424    pub fn take_msi(&mut self) -> OSPolicy_Resource_PackageResource_MSI {
2425        if self.has_msi() {
2426            match self.system_package.take() {
2427                ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(v)) => v,
2428                _ => panic!(),
2429            }
2430        } else {
2431            OSPolicy_Resource_PackageResource_MSI::new()
2432        }
2433    }
2434}
2435
2436impl ::protobuf::Message for OSPolicy_Resource_PackageResource {
2437    fn is_initialized(&self) -> bool {
2438        if let Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(ref v)) = self.system_package {
2439            if !v.is_initialized() {
2440                return false;
2441            }
2442        }
2443        if let Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(ref v)) = self.system_package {
2444            if !v.is_initialized() {
2445                return false;
2446            }
2447        }
2448        if let Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(ref v)) = self.system_package {
2449            if !v.is_initialized() {
2450                return false;
2451            }
2452        }
2453        if let Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(ref v)) = self.system_package {
2454            if !v.is_initialized() {
2455                return false;
2456            }
2457        }
2458        if let Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(ref v)) = self.system_package {
2459            if !v.is_initialized() {
2460                return false;
2461            }
2462        }
2463        if let Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(ref v)) = self.system_package {
2464            if !v.is_initialized() {
2465                return false;
2466            }
2467        }
2468        if let Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(ref v)) = self.system_package {
2469            if !v.is_initialized() {
2470                return false;
2471            }
2472        }
2473        true
2474    }
2475
2476    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2477        while !is.eof()? {
2478            let (field_number, wire_type) = is.read_tag_unpack()?;
2479            match field_number {
2480                1 => {
2481                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.desired_state, 1, &mut self.unknown_fields)?
2482                },
2483                2 => {
2484                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2485                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2486                    }
2487                    self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::apt(is.read_message()?));
2488                },
2489                3 => {
2490                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2491                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2492                    }
2493                    self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::deb(is.read_message()?));
2494                },
2495                4 => {
2496                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2497                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2498                    }
2499                    self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::yum(is.read_message()?));
2500                },
2501                5 => {
2502                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2503                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2504                    }
2505                    self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::zypper(is.read_message()?));
2506                },
2507                6 => {
2508                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2509                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2510                    }
2511                    self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::rpm(is.read_message()?));
2512                },
2513                7 => {
2514                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2515                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2516                    }
2517                    self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::googet(is.read_message()?));
2518                },
2519                8 => {
2520                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
2521                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2522                    }
2523                    self.system_package = ::std::option::Option::Some(OSPolicy_Resource_PackageResource_oneof_system_package::msi(is.read_message()?));
2524                },
2525                _ => {
2526                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2527                },
2528            };
2529        }
2530        ::std::result::Result::Ok(())
2531    }
2532
2533    // Compute sizes of nested messages
2534    #[allow(unused_variables)]
2535    fn compute_size(&self) -> u32 {
2536        let mut my_size = 0;
2537        if self.desired_state != OSPolicy_Resource_PackageResource_DesiredState::DESIRED_STATE_UNSPECIFIED {
2538            my_size += ::protobuf::rt::enum_size(1, self.desired_state);
2539        }
2540        if let ::std::option::Option::Some(ref v) = self.system_package {
2541            match v {
2542                &OSPolicy_Resource_PackageResource_oneof_system_package::apt(ref v) => {
2543                    let len = v.compute_size();
2544                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2545                },
2546                &OSPolicy_Resource_PackageResource_oneof_system_package::deb(ref v) => {
2547                    let len = v.compute_size();
2548                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2549                },
2550                &OSPolicy_Resource_PackageResource_oneof_system_package::yum(ref v) => {
2551                    let len = v.compute_size();
2552                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2553                },
2554                &OSPolicy_Resource_PackageResource_oneof_system_package::zypper(ref v) => {
2555                    let len = v.compute_size();
2556                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2557                },
2558                &OSPolicy_Resource_PackageResource_oneof_system_package::rpm(ref v) => {
2559                    let len = v.compute_size();
2560                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2561                },
2562                &OSPolicy_Resource_PackageResource_oneof_system_package::googet(ref v) => {
2563                    let len = v.compute_size();
2564                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2565                },
2566                &OSPolicy_Resource_PackageResource_oneof_system_package::msi(ref v) => {
2567                    let len = v.compute_size();
2568                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2569                },
2570            };
2571        }
2572        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2573        self.cached_size.set(my_size);
2574        my_size
2575    }
2576
2577    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2578        if self.desired_state != OSPolicy_Resource_PackageResource_DesiredState::DESIRED_STATE_UNSPECIFIED {
2579            os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.desired_state))?;
2580        }
2581        if let ::std::option::Option::Some(ref v) = self.system_package {
2582            match v {
2583                &OSPolicy_Resource_PackageResource_oneof_system_package::apt(ref v) => {
2584                    os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2585                    os.write_raw_varint32(v.get_cached_size())?;
2586                    v.write_to_with_cached_sizes(os)?;
2587                },
2588                &OSPolicy_Resource_PackageResource_oneof_system_package::deb(ref v) => {
2589                    os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2590                    os.write_raw_varint32(v.get_cached_size())?;
2591                    v.write_to_with_cached_sizes(os)?;
2592                },
2593                &OSPolicy_Resource_PackageResource_oneof_system_package::yum(ref v) => {
2594                    os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2595                    os.write_raw_varint32(v.get_cached_size())?;
2596                    v.write_to_with_cached_sizes(os)?;
2597                },
2598                &OSPolicy_Resource_PackageResource_oneof_system_package::zypper(ref v) => {
2599                    os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2600                    os.write_raw_varint32(v.get_cached_size())?;
2601                    v.write_to_with_cached_sizes(os)?;
2602                },
2603                &OSPolicy_Resource_PackageResource_oneof_system_package::rpm(ref v) => {
2604                    os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2605                    os.write_raw_varint32(v.get_cached_size())?;
2606                    v.write_to_with_cached_sizes(os)?;
2607                },
2608                &OSPolicy_Resource_PackageResource_oneof_system_package::googet(ref v) => {
2609                    os.write_tag(7, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2610                    os.write_raw_varint32(v.get_cached_size())?;
2611                    v.write_to_with_cached_sizes(os)?;
2612                },
2613                &OSPolicy_Resource_PackageResource_oneof_system_package::msi(ref v) => {
2614                    os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2615                    os.write_raw_varint32(v.get_cached_size())?;
2616                    v.write_to_with_cached_sizes(os)?;
2617                },
2618            };
2619        }
2620        os.write_unknown_fields(self.get_unknown_fields())?;
2621        ::std::result::Result::Ok(())
2622    }
2623
2624    fn get_cached_size(&self) -> u32 {
2625        self.cached_size.get()
2626    }
2627
2628    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2629        &self.unknown_fields
2630    }
2631
2632    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2633        &mut self.unknown_fields
2634    }
2635
2636    fn as_any(&self) -> &dyn (::std::any::Any) {
2637        self as &dyn (::std::any::Any)
2638    }
2639    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2640        self as &mut dyn (::std::any::Any)
2641    }
2642    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2643        self
2644    }
2645
2646    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2647        Self::descriptor_static()
2648    }
2649
2650    fn new() -> OSPolicy_Resource_PackageResource {
2651        OSPolicy_Resource_PackageResource::new()
2652    }
2653
2654    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2655        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
2656        descriptor.get(|| {
2657            let mut fields = ::std::vec::Vec::new();
2658            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<OSPolicy_Resource_PackageResource_DesiredState>>(
2659                "desired_state",
2660                |m: &OSPolicy_Resource_PackageResource| { &m.desired_state },
2661                |m: &mut OSPolicy_Resource_PackageResource| { &mut m.desired_state },
2662            ));
2663            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_PackageResource_APT>(
2664                "apt",
2665                OSPolicy_Resource_PackageResource::has_apt,
2666                OSPolicy_Resource_PackageResource::get_apt,
2667            ));
2668            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_PackageResource_Deb>(
2669                "deb",
2670                OSPolicy_Resource_PackageResource::has_deb,
2671                OSPolicy_Resource_PackageResource::get_deb,
2672            ));
2673            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_PackageResource_YUM>(
2674                "yum",
2675                OSPolicy_Resource_PackageResource::has_yum,
2676                OSPolicy_Resource_PackageResource::get_yum,
2677            ));
2678            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_PackageResource_Zypper>(
2679                "zypper",
2680                OSPolicy_Resource_PackageResource::has_zypper,
2681                OSPolicy_Resource_PackageResource::get_zypper,
2682            ));
2683            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_PackageResource_RPM>(
2684                "rpm",
2685                OSPolicy_Resource_PackageResource::has_rpm,
2686                OSPolicy_Resource_PackageResource::get_rpm,
2687            ));
2688            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_PackageResource_GooGet>(
2689                "googet",
2690                OSPolicy_Resource_PackageResource::has_googet,
2691                OSPolicy_Resource_PackageResource::get_googet,
2692            ));
2693            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_PackageResource_MSI>(
2694                "msi",
2695                OSPolicy_Resource_PackageResource::has_msi,
2696                OSPolicy_Resource_PackageResource::get_msi,
2697            ));
2698            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource>(
2699                "OSPolicy.Resource.PackageResource",
2700                fields,
2701                file_descriptor_proto()
2702            )
2703        })
2704    }
2705
2706    fn default_instance() -> &'static OSPolicy_Resource_PackageResource {
2707        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_PackageResource> = ::protobuf::rt::LazyV2::INIT;
2708        instance.get(OSPolicy_Resource_PackageResource::new)
2709    }
2710}
2711
2712impl ::protobuf::Clear for OSPolicy_Resource_PackageResource {
2713    fn clear(&mut self) {
2714        self.desired_state = OSPolicy_Resource_PackageResource_DesiredState::DESIRED_STATE_UNSPECIFIED;
2715        self.system_package = ::std::option::Option::None;
2716        self.system_package = ::std::option::Option::None;
2717        self.system_package = ::std::option::Option::None;
2718        self.system_package = ::std::option::Option::None;
2719        self.system_package = ::std::option::Option::None;
2720        self.system_package = ::std::option::Option::None;
2721        self.system_package = ::std::option::Option::None;
2722        self.unknown_fields.clear();
2723    }
2724}
2725
2726impl ::std::fmt::Debug for OSPolicy_Resource_PackageResource {
2727    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2728        ::protobuf::text_format::fmt(self, f)
2729    }
2730}
2731
2732impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource {
2733    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2734        ::protobuf::reflect::ReflectValueRef::Message(self)
2735    }
2736}
2737
2738#[derive(PartialEq,Clone,Default)]
2739pub struct OSPolicy_Resource_PackageResource_Deb {
2740    // message fields
2741    pub source: ::protobuf::SingularPtrField<OSPolicy_Resource_File>,
2742    pub pull_deps: bool,
2743    // special fields
2744    pub unknown_fields: ::protobuf::UnknownFields,
2745    pub cached_size: ::protobuf::CachedSize,
2746}
2747
2748impl<'a> ::std::default::Default for &'a OSPolicy_Resource_PackageResource_Deb {
2749    fn default() -> &'a OSPolicy_Resource_PackageResource_Deb {
2750        <OSPolicy_Resource_PackageResource_Deb as ::protobuf::Message>::default_instance()
2751    }
2752}
2753
2754impl OSPolicy_Resource_PackageResource_Deb {
2755    pub fn new() -> OSPolicy_Resource_PackageResource_Deb {
2756        ::std::default::Default::default()
2757    }
2758
2759    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.File source = 1;
2760
2761
2762    pub fn get_source(&self) -> &OSPolicy_Resource_File {
2763        self.source.as_ref().unwrap_or_else(|| <OSPolicy_Resource_File as ::protobuf::Message>::default_instance())
2764    }
2765    pub fn clear_source(&mut self) {
2766        self.source.clear();
2767    }
2768
2769    pub fn has_source(&self) -> bool {
2770        self.source.is_some()
2771    }
2772
2773    // Param is passed by value, moved
2774    pub fn set_source(&mut self, v: OSPolicy_Resource_File) {
2775        self.source = ::protobuf::SingularPtrField::some(v);
2776    }
2777
2778    // Mutable pointer to the field.
2779    // If field is not initialized, it is initialized with default value first.
2780    pub fn mut_source(&mut self) -> &mut OSPolicy_Resource_File {
2781        if self.source.is_none() {
2782            self.source.set_default();
2783        }
2784        self.source.as_mut().unwrap()
2785    }
2786
2787    // Take field
2788    pub fn take_source(&mut self) -> OSPolicy_Resource_File {
2789        self.source.take().unwrap_or_else(|| OSPolicy_Resource_File::new())
2790    }
2791
2792    // bool pull_deps = 2;
2793
2794
2795    pub fn get_pull_deps(&self) -> bool {
2796        self.pull_deps
2797    }
2798    pub fn clear_pull_deps(&mut self) {
2799        self.pull_deps = false;
2800    }
2801
2802    // Param is passed by value, moved
2803    pub fn set_pull_deps(&mut self, v: bool) {
2804        self.pull_deps = v;
2805    }
2806}
2807
2808impl ::protobuf::Message for OSPolicy_Resource_PackageResource_Deb {
2809    fn is_initialized(&self) -> bool {
2810        for v in &self.source {
2811            if !v.is_initialized() {
2812                return false;
2813            }
2814        };
2815        true
2816    }
2817
2818    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2819        while !is.eof()? {
2820            let (field_number, wire_type) = is.read_tag_unpack()?;
2821            match field_number {
2822                1 => {
2823                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.source)?;
2824                },
2825                2 => {
2826                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
2827                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
2828                    }
2829                    let tmp = is.read_bool()?;
2830                    self.pull_deps = tmp;
2831                },
2832                _ => {
2833                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
2834                },
2835            };
2836        }
2837        ::std::result::Result::Ok(())
2838    }
2839
2840    // Compute sizes of nested messages
2841    #[allow(unused_variables)]
2842    fn compute_size(&self) -> u32 {
2843        let mut my_size = 0;
2844        if let Some(ref v) = self.source.as_ref() {
2845            let len = v.compute_size();
2846            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
2847        }
2848        if self.pull_deps != false {
2849            my_size += 2;
2850        }
2851        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
2852        self.cached_size.set(my_size);
2853        my_size
2854    }
2855
2856    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
2857        if let Some(ref v) = self.source.as_ref() {
2858            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
2859            os.write_raw_varint32(v.get_cached_size())?;
2860            v.write_to_with_cached_sizes(os)?;
2861        }
2862        if self.pull_deps != false {
2863            os.write_bool(2, self.pull_deps)?;
2864        }
2865        os.write_unknown_fields(self.get_unknown_fields())?;
2866        ::std::result::Result::Ok(())
2867    }
2868
2869    fn get_cached_size(&self) -> u32 {
2870        self.cached_size.get()
2871    }
2872
2873    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
2874        &self.unknown_fields
2875    }
2876
2877    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
2878        &mut self.unknown_fields
2879    }
2880
2881    fn as_any(&self) -> &dyn (::std::any::Any) {
2882        self as &dyn (::std::any::Any)
2883    }
2884    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
2885        self as &mut dyn (::std::any::Any)
2886    }
2887    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
2888        self
2889    }
2890
2891    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
2892        Self::descriptor_static()
2893    }
2894
2895    fn new() -> OSPolicy_Resource_PackageResource_Deb {
2896        OSPolicy_Resource_PackageResource_Deb::new()
2897    }
2898
2899    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
2900        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
2901        descriptor.get(|| {
2902            let mut fields = ::std::vec::Vec::new();
2903            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_Resource_File>>(
2904                "source",
2905                |m: &OSPolicy_Resource_PackageResource_Deb| { &m.source },
2906                |m: &mut OSPolicy_Resource_PackageResource_Deb| { &mut m.source },
2907            ));
2908            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
2909                "pull_deps",
2910                |m: &OSPolicy_Resource_PackageResource_Deb| { &m.pull_deps },
2911                |m: &mut OSPolicy_Resource_PackageResource_Deb| { &mut m.pull_deps },
2912            ));
2913            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource_Deb>(
2914                "OSPolicy.Resource.PackageResource.Deb",
2915                fields,
2916                file_descriptor_proto()
2917            )
2918        })
2919    }
2920
2921    fn default_instance() -> &'static OSPolicy_Resource_PackageResource_Deb {
2922        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_PackageResource_Deb> = ::protobuf::rt::LazyV2::INIT;
2923        instance.get(OSPolicy_Resource_PackageResource_Deb::new)
2924    }
2925}
2926
2927impl ::protobuf::Clear for OSPolicy_Resource_PackageResource_Deb {
2928    fn clear(&mut self) {
2929        self.source.clear();
2930        self.pull_deps = false;
2931        self.unknown_fields.clear();
2932    }
2933}
2934
2935impl ::std::fmt::Debug for OSPolicy_Resource_PackageResource_Deb {
2936    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2937        ::protobuf::text_format::fmt(self, f)
2938    }
2939}
2940
2941impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource_Deb {
2942    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
2943        ::protobuf::reflect::ReflectValueRef::Message(self)
2944    }
2945}
2946
2947#[derive(PartialEq,Clone,Default)]
2948pub struct OSPolicy_Resource_PackageResource_APT {
2949    // message fields
2950    pub name: ::std::string::String,
2951    // special fields
2952    pub unknown_fields: ::protobuf::UnknownFields,
2953    pub cached_size: ::protobuf::CachedSize,
2954}
2955
2956impl<'a> ::std::default::Default for &'a OSPolicy_Resource_PackageResource_APT {
2957    fn default() -> &'a OSPolicy_Resource_PackageResource_APT {
2958        <OSPolicy_Resource_PackageResource_APT as ::protobuf::Message>::default_instance()
2959    }
2960}
2961
2962impl OSPolicy_Resource_PackageResource_APT {
2963    pub fn new() -> OSPolicy_Resource_PackageResource_APT {
2964        ::std::default::Default::default()
2965    }
2966
2967    // string name = 1;
2968
2969
2970    pub fn get_name(&self) -> &str {
2971        &self.name
2972    }
2973    pub fn clear_name(&mut self) {
2974        self.name.clear();
2975    }
2976
2977    // Param is passed by value, moved
2978    pub fn set_name(&mut self, v: ::std::string::String) {
2979        self.name = v;
2980    }
2981
2982    // Mutable pointer to the field.
2983    // If field is not initialized, it is initialized with default value first.
2984    pub fn mut_name(&mut self) -> &mut ::std::string::String {
2985        &mut self.name
2986    }
2987
2988    // Take field
2989    pub fn take_name(&mut self) -> ::std::string::String {
2990        ::std::mem::replace(&mut self.name, ::std::string::String::new())
2991    }
2992}
2993
2994impl ::protobuf::Message for OSPolicy_Resource_PackageResource_APT {
2995    fn is_initialized(&self) -> bool {
2996        true
2997    }
2998
2999    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3000        while !is.eof()? {
3001            let (field_number, wire_type) = is.read_tag_unpack()?;
3002            match field_number {
3003                1 => {
3004                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
3005                },
3006                _ => {
3007                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3008                },
3009            };
3010        }
3011        ::std::result::Result::Ok(())
3012    }
3013
3014    // Compute sizes of nested messages
3015    #[allow(unused_variables)]
3016    fn compute_size(&self) -> u32 {
3017        let mut my_size = 0;
3018        if !self.name.is_empty() {
3019            my_size += ::protobuf::rt::string_size(1, &self.name);
3020        }
3021        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3022        self.cached_size.set(my_size);
3023        my_size
3024    }
3025
3026    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3027        if !self.name.is_empty() {
3028            os.write_string(1, &self.name)?;
3029        }
3030        os.write_unknown_fields(self.get_unknown_fields())?;
3031        ::std::result::Result::Ok(())
3032    }
3033
3034    fn get_cached_size(&self) -> u32 {
3035        self.cached_size.get()
3036    }
3037
3038    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3039        &self.unknown_fields
3040    }
3041
3042    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3043        &mut self.unknown_fields
3044    }
3045
3046    fn as_any(&self) -> &dyn (::std::any::Any) {
3047        self as &dyn (::std::any::Any)
3048    }
3049    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3050        self as &mut dyn (::std::any::Any)
3051    }
3052    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3053        self
3054    }
3055
3056    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3057        Self::descriptor_static()
3058    }
3059
3060    fn new() -> OSPolicy_Resource_PackageResource_APT {
3061        OSPolicy_Resource_PackageResource_APT::new()
3062    }
3063
3064    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3065        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
3066        descriptor.get(|| {
3067            let mut fields = ::std::vec::Vec::new();
3068            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3069                "name",
3070                |m: &OSPolicy_Resource_PackageResource_APT| { &m.name },
3071                |m: &mut OSPolicy_Resource_PackageResource_APT| { &mut m.name },
3072            ));
3073            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource_APT>(
3074                "OSPolicy.Resource.PackageResource.APT",
3075                fields,
3076                file_descriptor_proto()
3077            )
3078        })
3079    }
3080
3081    fn default_instance() -> &'static OSPolicy_Resource_PackageResource_APT {
3082        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_PackageResource_APT> = ::protobuf::rt::LazyV2::INIT;
3083        instance.get(OSPolicy_Resource_PackageResource_APT::new)
3084    }
3085}
3086
3087impl ::protobuf::Clear for OSPolicy_Resource_PackageResource_APT {
3088    fn clear(&mut self) {
3089        self.name.clear();
3090        self.unknown_fields.clear();
3091    }
3092}
3093
3094impl ::std::fmt::Debug for OSPolicy_Resource_PackageResource_APT {
3095    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3096        ::protobuf::text_format::fmt(self, f)
3097    }
3098}
3099
3100impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource_APT {
3101    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
3102        ::protobuf::reflect::ReflectValueRef::Message(self)
3103    }
3104}
3105
3106#[derive(PartialEq,Clone,Default)]
3107pub struct OSPolicy_Resource_PackageResource_RPM {
3108    // message fields
3109    pub source: ::protobuf::SingularPtrField<OSPolicy_Resource_File>,
3110    pub pull_deps: bool,
3111    // special fields
3112    pub unknown_fields: ::protobuf::UnknownFields,
3113    pub cached_size: ::protobuf::CachedSize,
3114}
3115
3116impl<'a> ::std::default::Default for &'a OSPolicy_Resource_PackageResource_RPM {
3117    fn default() -> &'a OSPolicy_Resource_PackageResource_RPM {
3118        <OSPolicy_Resource_PackageResource_RPM as ::protobuf::Message>::default_instance()
3119    }
3120}
3121
3122impl OSPolicy_Resource_PackageResource_RPM {
3123    pub fn new() -> OSPolicy_Resource_PackageResource_RPM {
3124        ::std::default::Default::default()
3125    }
3126
3127    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.File source = 1;
3128
3129
3130    pub fn get_source(&self) -> &OSPolicy_Resource_File {
3131        self.source.as_ref().unwrap_or_else(|| <OSPolicy_Resource_File as ::protobuf::Message>::default_instance())
3132    }
3133    pub fn clear_source(&mut self) {
3134        self.source.clear();
3135    }
3136
3137    pub fn has_source(&self) -> bool {
3138        self.source.is_some()
3139    }
3140
3141    // Param is passed by value, moved
3142    pub fn set_source(&mut self, v: OSPolicy_Resource_File) {
3143        self.source = ::protobuf::SingularPtrField::some(v);
3144    }
3145
3146    // Mutable pointer to the field.
3147    // If field is not initialized, it is initialized with default value first.
3148    pub fn mut_source(&mut self) -> &mut OSPolicy_Resource_File {
3149        if self.source.is_none() {
3150            self.source.set_default();
3151        }
3152        self.source.as_mut().unwrap()
3153    }
3154
3155    // Take field
3156    pub fn take_source(&mut self) -> OSPolicy_Resource_File {
3157        self.source.take().unwrap_or_else(|| OSPolicy_Resource_File::new())
3158    }
3159
3160    // bool pull_deps = 2;
3161
3162
3163    pub fn get_pull_deps(&self) -> bool {
3164        self.pull_deps
3165    }
3166    pub fn clear_pull_deps(&mut self) {
3167        self.pull_deps = false;
3168    }
3169
3170    // Param is passed by value, moved
3171    pub fn set_pull_deps(&mut self, v: bool) {
3172        self.pull_deps = v;
3173    }
3174}
3175
3176impl ::protobuf::Message for OSPolicy_Resource_PackageResource_RPM {
3177    fn is_initialized(&self) -> bool {
3178        for v in &self.source {
3179            if !v.is_initialized() {
3180                return false;
3181            }
3182        };
3183        true
3184    }
3185
3186    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3187        while !is.eof()? {
3188            let (field_number, wire_type) = is.read_tag_unpack()?;
3189            match field_number {
3190                1 => {
3191                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.source)?;
3192                },
3193                2 => {
3194                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
3195                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
3196                    }
3197                    let tmp = is.read_bool()?;
3198                    self.pull_deps = tmp;
3199                },
3200                _ => {
3201                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3202                },
3203            };
3204        }
3205        ::std::result::Result::Ok(())
3206    }
3207
3208    // Compute sizes of nested messages
3209    #[allow(unused_variables)]
3210    fn compute_size(&self) -> u32 {
3211        let mut my_size = 0;
3212        if let Some(ref v) = self.source.as_ref() {
3213            let len = v.compute_size();
3214            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3215        }
3216        if self.pull_deps != false {
3217            my_size += 2;
3218        }
3219        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3220        self.cached_size.set(my_size);
3221        my_size
3222    }
3223
3224    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3225        if let Some(ref v) = self.source.as_ref() {
3226            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3227            os.write_raw_varint32(v.get_cached_size())?;
3228            v.write_to_with_cached_sizes(os)?;
3229        }
3230        if self.pull_deps != false {
3231            os.write_bool(2, self.pull_deps)?;
3232        }
3233        os.write_unknown_fields(self.get_unknown_fields())?;
3234        ::std::result::Result::Ok(())
3235    }
3236
3237    fn get_cached_size(&self) -> u32 {
3238        self.cached_size.get()
3239    }
3240
3241    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3242        &self.unknown_fields
3243    }
3244
3245    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3246        &mut self.unknown_fields
3247    }
3248
3249    fn as_any(&self) -> &dyn (::std::any::Any) {
3250        self as &dyn (::std::any::Any)
3251    }
3252    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3253        self as &mut dyn (::std::any::Any)
3254    }
3255    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3256        self
3257    }
3258
3259    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3260        Self::descriptor_static()
3261    }
3262
3263    fn new() -> OSPolicy_Resource_PackageResource_RPM {
3264        OSPolicy_Resource_PackageResource_RPM::new()
3265    }
3266
3267    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3268        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
3269        descriptor.get(|| {
3270            let mut fields = ::std::vec::Vec::new();
3271            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_Resource_File>>(
3272                "source",
3273                |m: &OSPolicy_Resource_PackageResource_RPM| { &m.source },
3274                |m: &mut OSPolicy_Resource_PackageResource_RPM| { &mut m.source },
3275            ));
3276            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
3277                "pull_deps",
3278                |m: &OSPolicy_Resource_PackageResource_RPM| { &m.pull_deps },
3279                |m: &mut OSPolicy_Resource_PackageResource_RPM| { &mut m.pull_deps },
3280            ));
3281            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource_RPM>(
3282                "OSPolicy.Resource.PackageResource.RPM",
3283                fields,
3284                file_descriptor_proto()
3285            )
3286        })
3287    }
3288
3289    fn default_instance() -> &'static OSPolicy_Resource_PackageResource_RPM {
3290        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_PackageResource_RPM> = ::protobuf::rt::LazyV2::INIT;
3291        instance.get(OSPolicy_Resource_PackageResource_RPM::new)
3292    }
3293}
3294
3295impl ::protobuf::Clear for OSPolicy_Resource_PackageResource_RPM {
3296    fn clear(&mut self) {
3297        self.source.clear();
3298        self.pull_deps = false;
3299        self.unknown_fields.clear();
3300    }
3301}
3302
3303impl ::std::fmt::Debug for OSPolicy_Resource_PackageResource_RPM {
3304    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3305        ::protobuf::text_format::fmt(self, f)
3306    }
3307}
3308
3309impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource_RPM {
3310    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
3311        ::protobuf::reflect::ReflectValueRef::Message(self)
3312    }
3313}
3314
3315#[derive(PartialEq,Clone,Default)]
3316pub struct OSPolicy_Resource_PackageResource_YUM {
3317    // message fields
3318    pub name: ::std::string::String,
3319    // special fields
3320    pub unknown_fields: ::protobuf::UnknownFields,
3321    pub cached_size: ::protobuf::CachedSize,
3322}
3323
3324impl<'a> ::std::default::Default for &'a OSPolicy_Resource_PackageResource_YUM {
3325    fn default() -> &'a OSPolicy_Resource_PackageResource_YUM {
3326        <OSPolicy_Resource_PackageResource_YUM as ::protobuf::Message>::default_instance()
3327    }
3328}
3329
3330impl OSPolicy_Resource_PackageResource_YUM {
3331    pub fn new() -> OSPolicy_Resource_PackageResource_YUM {
3332        ::std::default::Default::default()
3333    }
3334
3335    // string name = 1;
3336
3337
3338    pub fn get_name(&self) -> &str {
3339        &self.name
3340    }
3341    pub fn clear_name(&mut self) {
3342        self.name.clear();
3343    }
3344
3345    // Param is passed by value, moved
3346    pub fn set_name(&mut self, v: ::std::string::String) {
3347        self.name = v;
3348    }
3349
3350    // Mutable pointer to the field.
3351    // If field is not initialized, it is initialized with default value first.
3352    pub fn mut_name(&mut self) -> &mut ::std::string::String {
3353        &mut self.name
3354    }
3355
3356    // Take field
3357    pub fn take_name(&mut self) -> ::std::string::String {
3358        ::std::mem::replace(&mut self.name, ::std::string::String::new())
3359    }
3360}
3361
3362impl ::protobuf::Message for OSPolicy_Resource_PackageResource_YUM {
3363    fn is_initialized(&self) -> bool {
3364        true
3365    }
3366
3367    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3368        while !is.eof()? {
3369            let (field_number, wire_type) = is.read_tag_unpack()?;
3370            match field_number {
3371                1 => {
3372                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
3373                },
3374                _ => {
3375                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3376                },
3377            };
3378        }
3379        ::std::result::Result::Ok(())
3380    }
3381
3382    // Compute sizes of nested messages
3383    #[allow(unused_variables)]
3384    fn compute_size(&self) -> u32 {
3385        let mut my_size = 0;
3386        if !self.name.is_empty() {
3387            my_size += ::protobuf::rt::string_size(1, &self.name);
3388        }
3389        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3390        self.cached_size.set(my_size);
3391        my_size
3392    }
3393
3394    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3395        if !self.name.is_empty() {
3396            os.write_string(1, &self.name)?;
3397        }
3398        os.write_unknown_fields(self.get_unknown_fields())?;
3399        ::std::result::Result::Ok(())
3400    }
3401
3402    fn get_cached_size(&self) -> u32 {
3403        self.cached_size.get()
3404    }
3405
3406    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3407        &self.unknown_fields
3408    }
3409
3410    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3411        &mut self.unknown_fields
3412    }
3413
3414    fn as_any(&self) -> &dyn (::std::any::Any) {
3415        self as &dyn (::std::any::Any)
3416    }
3417    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3418        self as &mut dyn (::std::any::Any)
3419    }
3420    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3421        self
3422    }
3423
3424    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3425        Self::descriptor_static()
3426    }
3427
3428    fn new() -> OSPolicy_Resource_PackageResource_YUM {
3429        OSPolicy_Resource_PackageResource_YUM::new()
3430    }
3431
3432    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3433        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
3434        descriptor.get(|| {
3435            let mut fields = ::std::vec::Vec::new();
3436            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3437                "name",
3438                |m: &OSPolicy_Resource_PackageResource_YUM| { &m.name },
3439                |m: &mut OSPolicy_Resource_PackageResource_YUM| { &mut m.name },
3440            ));
3441            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource_YUM>(
3442                "OSPolicy.Resource.PackageResource.YUM",
3443                fields,
3444                file_descriptor_proto()
3445            )
3446        })
3447    }
3448
3449    fn default_instance() -> &'static OSPolicy_Resource_PackageResource_YUM {
3450        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_PackageResource_YUM> = ::protobuf::rt::LazyV2::INIT;
3451        instance.get(OSPolicy_Resource_PackageResource_YUM::new)
3452    }
3453}
3454
3455impl ::protobuf::Clear for OSPolicy_Resource_PackageResource_YUM {
3456    fn clear(&mut self) {
3457        self.name.clear();
3458        self.unknown_fields.clear();
3459    }
3460}
3461
3462impl ::std::fmt::Debug for OSPolicy_Resource_PackageResource_YUM {
3463    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3464        ::protobuf::text_format::fmt(self, f)
3465    }
3466}
3467
3468impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource_YUM {
3469    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
3470        ::protobuf::reflect::ReflectValueRef::Message(self)
3471    }
3472}
3473
3474#[derive(PartialEq,Clone,Default)]
3475pub struct OSPolicy_Resource_PackageResource_Zypper {
3476    // message fields
3477    pub name: ::std::string::String,
3478    // special fields
3479    pub unknown_fields: ::protobuf::UnknownFields,
3480    pub cached_size: ::protobuf::CachedSize,
3481}
3482
3483impl<'a> ::std::default::Default for &'a OSPolicy_Resource_PackageResource_Zypper {
3484    fn default() -> &'a OSPolicy_Resource_PackageResource_Zypper {
3485        <OSPolicy_Resource_PackageResource_Zypper as ::protobuf::Message>::default_instance()
3486    }
3487}
3488
3489impl OSPolicy_Resource_PackageResource_Zypper {
3490    pub fn new() -> OSPolicy_Resource_PackageResource_Zypper {
3491        ::std::default::Default::default()
3492    }
3493
3494    // string name = 1;
3495
3496
3497    pub fn get_name(&self) -> &str {
3498        &self.name
3499    }
3500    pub fn clear_name(&mut self) {
3501        self.name.clear();
3502    }
3503
3504    // Param is passed by value, moved
3505    pub fn set_name(&mut self, v: ::std::string::String) {
3506        self.name = v;
3507    }
3508
3509    // Mutable pointer to the field.
3510    // If field is not initialized, it is initialized with default value first.
3511    pub fn mut_name(&mut self) -> &mut ::std::string::String {
3512        &mut self.name
3513    }
3514
3515    // Take field
3516    pub fn take_name(&mut self) -> ::std::string::String {
3517        ::std::mem::replace(&mut self.name, ::std::string::String::new())
3518    }
3519}
3520
3521impl ::protobuf::Message for OSPolicy_Resource_PackageResource_Zypper {
3522    fn is_initialized(&self) -> bool {
3523        true
3524    }
3525
3526    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3527        while !is.eof()? {
3528            let (field_number, wire_type) = is.read_tag_unpack()?;
3529            match field_number {
3530                1 => {
3531                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
3532                },
3533                _ => {
3534                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3535                },
3536            };
3537        }
3538        ::std::result::Result::Ok(())
3539    }
3540
3541    // Compute sizes of nested messages
3542    #[allow(unused_variables)]
3543    fn compute_size(&self) -> u32 {
3544        let mut my_size = 0;
3545        if !self.name.is_empty() {
3546            my_size += ::protobuf::rt::string_size(1, &self.name);
3547        }
3548        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3549        self.cached_size.set(my_size);
3550        my_size
3551    }
3552
3553    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3554        if !self.name.is_empty() {
3555            os.write_string(1, &self.name)?;
3556        }
3557        os.write_unknown_fields(self.get_unknown_fields())?;
3558        ::std::result::Result::Ok(())
3559    }
3560
3561    fn get_cached_size(&self) -> u32 {
3562        self.cached_size.get()
3563    }
3564
3565    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3566        &self.unknown_fields
3567    }
3568
3569    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3570        &mut self.unknown_fields
3571    }
3572
3573    fn as_any(&self) -> &dyn (::std::any::Any) {
3574        self as &dyn (::std::any::Any)
3575    }
3576    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3577        self as &mut dyn (::std::any::Any)
3578    }
3579    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3580        self
3581    }
3582
3583    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3584        Self::descriptor_static()
3585    }
3586
3587    fn new() -> OSPolicy_Resource_PackageResource_Zypper {
3588        OSPolicy_Resource_PackageResource_Zypper::new()
3589    }
3590
3591    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3592        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
3593        descriptor.get(|| {
3594            let mut fields = ::std::vec::Vec::new();
3595            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3596                "name",
3597                |m: &OSPolicy_Resource_PackageResource_Zypper| { &m.name },
3598                |m: &mut OSPolicy_Resource_PackageResource_Zypper| { &mut m.name },
3599            ));
3600            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource_Zypper>(
3601                "OSPolicy.Resource.PackageResource.Zypper",
3602                fields,
3603                file_descriptor_proto()
3604            )
3605        })
3606    }
3607
3608    fn default_instance() -> &'static OSPolicy_Resource_PackageResource_Zypper {
3609        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_PackageResource_Zypper> = ::protobuf::rt::LazyV2::INIT;
3610        instance.get(OSPolicy_Resource_PackageResource_Zypper::new)
3611    }
3612}
3613
3614impl ::protobuf::Clear for OSPolicy_Resource_PackageResource_Zypper {
3615    fn clear(&mut self) {
3616        self.name.clear();
3617        self.unknown_fields.clear();
3618    }
3619}
3620
3621impl ::std::fmt::Debug for OSPolicy_Resource_PackageResource_Zypper {
3622    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3623        ::protobuf::text_format::fmt(self, f)
3624    }
3625}
3626
3627impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource_Zypper {
3628    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
3629        ::protobuf::reflect::ReflectValueRef::Message(self)
3630    }
3631}
3632
3633#[derive(PartialEq,Clone,Default)]
3634pub struct OSPolicy_Resource_PackageResource_GooGet {
3635    // message fields
3636    pub name: ::std::string::String,
3637    // special fields
3638    pub unknown_fields: ::protobuf::UnknownFields,
3639    pub cached_size: ::protobuf::CachedSize,
3640}
3641
3642impl<'a> ::std::default::Default for &'a OSPolicy_Resource_PackageResource_GooGet {
3643    fn default() -> &'a OSPolicy_Resource_PackageResource_GooGet {
3644        <OSPolicy_Resource_PackageResource_GooGet as ::protobuf::Message>::default_instance()
3645    }
3646}
3647
3648impl OSPolicy_Resource_PackageResource_GooGet {
3649    pub fn new() -> OSPolicy_Resource_PackageResource_GooGet {
3650        ::std::default::Default::default()
3651    }
3652
3653    // string name = 1;
3654
3655
3656    pub fn get_name(&self) -> &str {
3657        &self.name
3658    }
3659    pub fn clear_name(&mut self) {
3660        self.name.clear();
3661    }
3662
3663    // Param is passed by value, moved
3664    pub fn set_name(&mut self, v: ::std::string::String) {
3665        self.name = v;
3666    }
3667
3668    // Mutable pointer to the field.
3669    // If field is not initialized, it is initialized with default value first.
3670    pub fn mut_name(&mut self) -> &mut ::std::string::String {
3671        &mut self.name
3672    }
3673
3674    // Take field
3675    pub fn take_name(&mut self) -> ::std::string::String {
3676        ::std::mem::replace(&mut self.name, ::std::string::String::new())
3677    }
3678}
3679
3680impl ::protobuf::Message for OSPolicy_Resource_PackageResource_GooGet {
3681    fn is_initialized(&self) -> bool {
3682        true
3683    }
3684
3685    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3686        while !is.eof()? {
3687            let (field_number, wire_type) = is.read_tag_unpack()?;
3688            match field_number {
3689                1 => {
3690                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
3691                },
3692                _ => {
3693                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3694                },
3695            };
3696        }
3697        ::std::result::Result::Ok(())
3698    }
3699
3700    // Compute sizes of nested messages
3701    #[allow(unused_variables)]
3702    fn compute_size(&self) -> u32 {
3703        let mut my_size = 0;
3704        if !self.name.is_empty() {
3705            my_size += ::protobuf::rt::string_size(1, &self.name);
3706        }
3707        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3708        self.cached_size.set(my_size);
3709        my_size
3710    }
3711
3712    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3713        if !self.name.is_empty() {
3714            os.write_string(1, &self.name)?;
3715        }
3716        os.write_unknown_fields(self.get_unknown_fields())?;
3717        ::std::result::Result::Ok(())
3718    }
3719
3720    fn get_cached_size(&self) -> u32 {
3721        self.cached_size.get()
3722    }
3723
3724    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3725        &self.unknown_fields
3726    }
3727
3728    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3729        &mut self.unknown_fields
3730    }
3731
3732    fn as_any(&self) -> &dyn (::std::any::Any) {
3733        self as &dyn (::std::any::Any)
3734    }
3735    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3736        self as &mut dyn (::std::any::Any)
3737    }
3738    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3739        self
3740    }
3741
3742    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3743        Self::descriptor_static()
3744    }
3745
3746    fn new() -> OSPolicy_Resource_PackageResource_GooGet {
3747        OSPolicy_Resource_PackageResource_GooGet::new()
3748    }
3749
3750    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3751        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
3752        descriptor.get(|| {
3753            let mut fields = ::std::vec::Vec::new();
3754            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3755                "name",
3756                |m: &OSPolicy_Resource_PackageResource_GooGet| { &m.name },
3757                |m: &mut OSPolicy_Resource_PackageResource_GooGet| { &mut m.name },
3758            ));
3759            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource_GooGet>(
3760                "OSPolicy.Resource.PackageResource.GooGet",
3761                fields,
3762                file_descriptor_proto()
3763            )
3764        })
3765    }
3766
3767    fn default_instance() -> &'static OSPolicy_Resource_PackageResource_GooGet {
3768        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_PackageResource_GooGet> = ::protobuf::rt::LazyV2::INIT;
3769        instance.get(OSPolicy_Resource_PackageResource_GooGet::new)
3770    }
3771}
3772
3773impl ::protobuf::Clear for OSPolicy_Resource_PackageResource_GooGet {
3774    fn clear(&mut self) {
3775        self.name.clear();
3776        self.unknown_fields.clear();
3777    }
3778}
3779
3780impl ::std::fmt::Debug for OSPolicy_Resource_PackageResource_GooGet {
3781    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3782        ::protobuf::text_format::fmt(self, f)
3783    }
3784}
3785
3786impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource_GooGet {
3787    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
3788        ::protobuf::reflect::ReflectValueRef::Message(self)
3789    }
3790}
3791
3792#[derive(PartialEq,Clone,Default)]
3793pub struct OSPolicy_Resource_PackageResource_MSI {
3794    // message fields
3795    pub source: ::protobuf::SingularPtrField<OSPolicy_Resource_File>,
3796    pub properties: ::protobuf::RepeatedField<::std::string::String>,
3797    // special fields
3798    pub unknown_fields: ::protobuf::UnknownFields,
3799    pub cached_size: ::protobuf::CachedSize,
3800}
3801
3802impl<'a> ::std::default::Default for &'a OSPolicy_Resource_PackageResource_MSI {
3803    fn default() -> &'a OSPolicy_Resource_PackageResource_MSI {
3804        <OSPolicy_Resource_PackageResource_MSI as ::protobuf::Message>::default_instance()
3805    }
3806}
3807
3808impl OSPolicy_Resource_PackageResource_MSI {
3809    pub fn new() -> OSPolicy_Resource_PackageResource_MSI {
3810        ::std::default::Default::default()
3811    }
3812
3813    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.File source = 1;
3814
3815
3816    pub fn get_source(&self) -> &OSPolicy_Resource_File {
3817        self.source.as_ref().unwrap_or_else(|| <OSPolicy_Resource_File as ::protobuf::Message>::default_instance())
3818    }
3819    pub fn clear_source(&mut self) {
3820        self.source.clear();
3821    }
3822
3823    pub fn has_source(&self) -> bool {
3824        self.source.is_some()
3825    }
3826
3827    // Param is passed by value, moved
3828    pub fn set_source(&mut self, v: OSPolicy_Resource_File) {
3829        self.source = ::protobuf::SingularPtrField::some(v);
3830    }
3831
3832    // Mutable pointer to the field.
3833    // If field is not initialized, it is initialized with default value first.
3834    pub fn mut_source(&mut self) -> &mut OSPolicy_Resource_File {
3835        if self.source.is_none() {
3836            self.source.set_default();
3837        }
3838        self.source.as_mut().unwrap()
3839    }
3840
3841    // Take field
3842    pub fn take_source(&mut self) -> OSPolicy_Resource_File {
3843        self.source.take().unwrap_or_else(|| OSPolicy_Resource_File::new())
3844    }
3845
3846    // repeated string properties = 2;
3847
3848
3849    pub fn get_properties(&self) -> &[::std::string::String] {
3850        &self.properties
3851    }
3852    pub fn clear_properties(&mut self) {
3853        self.properties.clear();
3854    }
3855
3856    // Param is passed by value, moved
3857    pub fn set_properties(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
3858        self.properties = v;
3859    }
3860
3861    // Mutable pointer to the field.
3862    pub fn mut_properties(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
3863        &mut self.properties
3864    }
3865
3866    // Take field
3867    pub fn take_properties(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
3868        ::std::mem::replace(&mut self.properties, ::protobuf::RepeatedField::new())
3869    }
3870}
3871
3872impl ::protobuf::Message for OSPolicy_Resource_PackageResource_MSI {
3873    fn is_initialized(&self) -> bool {
3874        for v in &self.source {
3875            if !v.is_initialized() {
3876                return false;
3877            }
3878        };
3879        true
3880    }
3881
3882    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3883        while !is.eof()? {
3884            let (field_number, wire_type) = is.read_tag_unpack()?;
3885            match field_number {
3886                1 => {
3887                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.source)?;
3888                },
3889                2 => {
3890                    ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.properties)?;
3891                },
3892                _ => {
3893                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
3894                },
3895            };
3896        }
3897        ::std::result::Result::Ok(())
3898    }
3899
3900    // Compute sizes of nested messages
3901    #[allow(unused_variables)]
3902    fn compute_size(&self) -> u32 {
3903        let mut my_size = 0;
3904        if let Some(ref v) = self.source.as_ref() {
3905            let len = v.compute_size();
3906            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
3907        }
3908        for value in &self.properties {
3909            my_size += ::protobuf::rt::string_size(2, &value);
3910        };
3911        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
3912        self.cached_size.set(my_size);
3913        my_size
3914    }
3915
3916    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
3917        if let Some(ref v) = self.source.as_ref() {
3918            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
3919            os.write_raw_varint32(v.get_cached_size())?;
3920            v.write_to_with_cached_sizes(os)?;
3921        }
3922        for v in &self.properties {
3923            os.write_string(2, &v)?;
3924        };
3925        os.write_unknown_fields(self.get_unknown_fields())?;
3926        ::std::result::Result::Ok(())
3927    }
3928
3929    fn get_cached_size(&self) -> u32 {
3930        self.cached_size.get()
3931    }
3932
3933    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
3934        &self.unknown_fields
3935    }
3936
3937    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
3938        &mut self.unknown_fields
3939    }
3940
3941    fn as_any(&self) -> &dyn (::std::any::Any) {
3942        self as &dyn (::std::any::Any)
3943    }
3944    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
3945        self as &mut dyn (::std::any::Any)
3946    }
3947    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
3948        self
3949    }
3950
3951    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
3952        Self::descriptor_static()
3953    }
3954
3955    fn new() -> OSPolicy_Resource_PackageResource_MSI {
3956        OSPolicy_Resource_PackageResource_MSI::new()
3957    }
3958
3959    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
3960        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
3961        descriptor.get(|| {
3962            let mut fields = ::std::vec::Vec::new();
3963            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_Resource_File>>(
3964                "source",
3965                |m: &OSPolicy_Resource_PackageResource_MSI| { &m.source },
3966                |m: &mut OSPolicy_Resource_PackageResource_MSI| { &mut m.source },
3967            ));
3968            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
3969                "properties",
3970                |m: &OSPolicy_Resource_PackageResource_MSI| { &m.properties },
3971                |m: &mut OSPolicy_Resource_PackageResource_MSI| { &mut m.properties },
3972            ));
3973            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource_MSI>(
3974                "OSPolicy.Resource.PackageResource.MSI",
3975                fields,
3976                file_descriptor_proto()
3977            )
3978        })
3979    }
3980
3981    fn default_instance() -> &'static OSPolicy_Resource_PackageResource_MSI {
3982        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_PackageResource_MSI> = ::protobuf::rt::LazyV2::INIT;
3983        instance.get(OSPolicy_Resource_PackageResource_MSI::new)
3984    }
3985}
3986
3987impl ::protobuf::Clear for OSPolicy_Resource_PackageResource_MSI {
3988    fn clear(&mut self) {
3989        self.source.clear();
3990        self.properties.clear();
3991        self.unknown_fields.clear();
3992    }
3993}
3994
3995impl ::std::fmt::Debug for OSPolicy_Resource_PackageResource_MSI {
3996    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3997        ::protobuf::text_format::fmt(self, f)
3998    }
3999}
4000
4001impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource_MSI {
4002    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
4003        ::protobuf::reflect::ReflectValueRef::Message(self)
4004    }
4005}
4006
4007#[derive(Clone,PartialEq,Eq,Debug,Hash)]
4008pub enum OSPolicy_Resource_PackageResource_DesiredState {
4009    DESIRED_STATE_UNSPECIFIED = 0,
4010    INSTALLED = 1,
4011    REMOVED = 2,
4012}
4013
4014impl ::protobuf::ProtobufEnum for OSPolicy_Resource_PackageResource_DesiredState {
4015    fn value(&self) -> i32 {
4016        *self as i32
4017    }
4018
4019    fn from_i32(value: i32) -> ::std::option::Option<OSPolicy_Resource_PackageResource_DesiredState> {
4020        match value {
4021            0 => ::std::option::Option::Some(OSPolicy_Resource_PackageResource_DesiredState::DESIRED_STATE_UNSPECIFIED),
4022            1 => ::std::option::Option::Some(OSPolicy_Resource_PackageResource_DesiredState::INSTALLED),
4023            2 => ::std::option::Option::Some(OSPolicy_Resource_PackageResource_DesiredState::REMOVED),
4024            _ => ::std::option::Option::None
4025        }
4026    }
4027
4028    fn values() -> &'static [Self] {
4029        static values: &'static [OSPolicy_Resource_PackageResource_DesiredState] = &[
4030            OSPolicy_Resource_PackageResource_DesiredState::DESIRED_STATE_UNSPECIFIED,
4031            OSPolicy_Resource_PackageResource_DesiredState::INSTALLED,
4032            OSPolicy_Resource_PackageResource_DesiredState::REMOVED,
4033        ];
4034        values
4035    }
4036
4037    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
4038        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
4039        descriptor.get(|| {
4040            ::protobuf::reflect::EnumDescriptor::new_pb_name::<OSPolicy_Resource_PackageResource_DesiredState>("OSPolicy.Resource.PackageResource.DesiredState", file_descriptor_proto())
4041        })
4042    }
4043}
4044
4045impl ::std::marker::Copy for OSPolicy_Resource_PackageResource_DesiredState {
4046}
4047
4048impl ::std::default::Default for OSPolicy_Resource_PackageResource_DesiredState {
4049    fn default() -> Self {
4050        OSPolicy_Resource_PackageResource_DesiredState::DESIRED_STATE_UNSPECIFIED
4051    }
4052}
4053
4054impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_PackageResource_DesiredState {
4055    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
4056        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
4057    }
4058}
4059
4060#[derive(PartialEq,Clone,Default)]
4061pub struct OSPolicy_Resource_RepositoryResource {
4062    // message oneof groups
4063    pub repository: ::std::option::Option<OSPolicy_Resource_RepositoryResource_oneof_repository>,
4064    // special fields
4065    pub unknown_fields: ::protobuf::UnknownFields,
4066    pub cached_size: ::protobuf::CachedSize,
4067}
4068
4069impl<'a> ::std::default::Default for &'a OSPolicy_Resource_RepositoryResource {
4070    fn default() -> &'a OSPolicy_Resource_RepositoryResource {
4071        <OSPolicy_Resource_RepositoryResource as ::protobuf::Message>::default_instance()
4072    }
4073}
4074
4075#[derive(Clone,PartialEq,Debug)]
4076pub enum OSPolicy_Resource_RepositoryResource_oneof_repository {
4077    apt(OSPolicy_Resource_RepositoryResource_AptRepository),
4078    yum(OSPolicy_Resource_RepositoryResource_YumRepository),
4079    zypper(OSPolicy_Resource_RepositoryResource_ZypperRepository),
4080    goo(OSPolicy_Resource_RepositoryResource_GooRepository),
4081}
4082
4083impl OSPolicy_Resource_RepositoryResource {
4084    pub fn new() -> OSPolicy_Resource_RepositoryResource {
4085        ::std::default::Default::default()
4086    }
4087
4088    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryResource.AptRepository apt = 1;
4089
4090
4091    pub fn get_apt(&self) -> &OSPolicy_Resource_RepositoryResource_AptRepository {
4092        match self.repository {
4093            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(ref v)) => v,
4094            _ => <OSPolicy_Resource_RepositoryResource_AptRepository as ::protobuf::Message>::default_instance(),
4095        }
4096    }
4097    pub fn clear_apt(&mut self) {
4098        self.repository = ::std::option::Option::None;
4099    }
4100
4101    pub fn has_apt(&self) -> bool {
4102        match self.repository {
4103            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(..)) => true,
4104            _ => false,
4105        }
4106    }
4107
4108    // Param is passed by value, moved
4109    pub fn set_apt(&mut self, v: OSPolicy_Resource_RepositoryResource_AptRepository) {
4110        self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(v))
4111    }
4112
4113    // Mutable pointer to the field.
4114    pub fn mut_apt(&mut self) -> &mut OSPolicy_Resource_RepositoryResource_AptRepository {
4115        if let ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(_)) = self.repository {
4116        } else {
4117            self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(OSPolicy_Resource_RepositoryResource_AptRepository::new()));
4118        }
4119        match self.repository {
4120            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(ref mut v)) => v,
4121            _ => panic!(),
4122        }
4123    }
4124
4125    // Take field
4126    pub fn take_apt(&mut self) -> OSPolicy_Resource_RepositoryResource_AptRepository {
4127        if self.has_apt() {
4128            match self.repository.take() {
4129                ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(v)) => v,
4130                _ => panic!(),
4131            }
4132        } else {
4133            OSPolicy_Resource_RepositoryResource_AptRepository::new()
4134        }
4135    }
4136
4137    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryResource.YumRepository yum = 2;
4138
4139
4140    pub fn get_yum(&self) -> &OSPolicy_Resource_RepositoryResource_YumRepository {
4141        match self.repository {
4142            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(ref v)) => v,
4143            _ => <OSPolicy_Resource_RepositoryResource_YumRepository as ::protobuf::Message>::default_instance(),
4144        }
4145    }
4146    pub fn clear_yum(&mut self) {
4147        self.repository = ::std::option::Option::None;
4148    }
4149
4150    pub fn has_yum(&self) -> bool {
4151        match self.repository {
4152            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(..)) => true,
4153            _ => false,
4154        }
4155    }
4156
4157    // Param is passed by value, moved
4158    pub fn set_yum(&mut self, v: OSPolicy_Resource_RepositoryResource_YumRepository) {
4159        self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(v))
4160    }
4161
4162    // Mutable pointer to the field.
4163    pub fn mut_yum(&mut self) -> &mut OSPolicy_Resource_RepositoryResource_YumRepository {
4164        if let ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(_)) = self.repository {
4165        } else {
4166            self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(OSPolicy_Resource_RepositoryResource_YumRepository::new()));
4167        }
4168        match self.repository {
4169            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(ref mut v)) => v,
4170            _ => panic!(),
4171        }
4172    }
4173
4174    // Take field
4175    pub fn take_yum(&mut self) -> OSPolicy_Resource_RepositoryResource_YumRepository {
4176        if self.has_yum() {
4177            match self.repository.take() {
4178                ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(v)) => v,
4179                _ => panic!(),
4180            }
4181        } else {
4182            OSPolicy_Resource_RepositoryResource_YumRepository::new()
4183        }
4184    }
4185
4186    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryResource.ZypperRepository zypper = 3;
4187
4188
4189    pub fn get_zypper(&self) -> &OSPolicy_Resource_RepositoryResource_ZypperRepository {
4190        match self.repository {
4191            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(ref v)) => v,
4192            _ => <OSPolicy_Resource_RepositoryResource_ZypperRepository as ::protobuf::Message>::default_instance(),
4193        }
4194    }
4195    pub fn clear_zypper(&mut self) {
4196        self.repository = ::std::option::Option::None;
4197    }
4198
4199    pub fn has_zypper(&self) -> bool {
4200        match self.repository {
4201            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(..)) => true,
4202            _ => false,
4203        }
4204    }
4205
4206    // Param is passed by value, moved
4207    pub fn set_zypper(&mut self, v: OSPolicy_Resource_RepositoryResource_ZypperRepository) {
4208        self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(v))
4209    }
4210
4211    // Mutable pointer to the field.
4212    pub fn mut_zypper(&mut self) -> &mut OSPolicy_Resource_RepositoryResource_ZypperRepository {
4213        if let ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(_)) = self.repository {
4214        } else {
4215            self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(OSPolicy_Resource_RepositoryResource_ZypperRepository::new()));
4216        }
4217        match self.repository {
4218            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(ref mut v)) => v,
4219            _ => panic!(),
4220        }
4221    }
4222
4223    // Take field
4224    pub fn take_zypper(&mut self) -> OSPolicy_Resource_RepositoryResource_ZypperRepository {
4225        if self.has_zypper() {
4226            match self.repository.take() {
4227                ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(v)) => v,
4228                _ => panic!(),
4229            }
4230        } else {
4231            OSPolicy_Resource_RepositoryResource_ZypperRepository::new()
4232        }
4233    }
4234
4235    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryResource.GooRepository goo = 4;
4236
4237
4238    pub fn get_goo(&self) -> &OSPolicy_Resource_RepositoryResource_GooRepository {
4239        match self.repository {
4240            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(ref v)) => v,
4241            _ => <OSPolicy_Resource_RepositoryResource_GooRepository as ::protobuf::Message>::default_instance(),
4242        }
4243    }
4244    pub fn clear_goo(&mut self) {
4245        self.repository = ::std::option::Option::None;
4246    }
4247
4248    pub fn has_goo(&self) -> bool {
4249        match self.repository {
4250            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(..)) => true,
4251            _ => false,
4252        }
4253    }
4254
4255    // Param is passed by value, moved
4256    pub fn set_goo(&mut self, v: OSPolicy_Resource_RepositoryResource_GooRepository) {
4257        self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(v))
4258    }
4259
4260    // Mutable pointer to the field.
4261    pub fn mut_goo(&mut self) -> &mut OSPolicy_Resource_RepositoryResource_GooRepository {
4262        if let ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(_)) = self.repository {
4263        } else {
4264            self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(OSPolicy_Resource_RepositoryResource_GooRepository::new()));
4265        }
4266        match self.repository {
4267            ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(ref mut v)) => v,
4268            _ => panic!(),
4269        }
4270    }
4271
4272    // Take field
4273    pub fn take_goo(&mut self) -> OSPolicy_Resource_RepositoryResource_GooRepository {
4274        if self.has_goo() {
4275            match self.repository.take() {
4276                ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(v)) => v,
4277                _ => panic!(),
4278            }
4279        } else {
4280            OSPolicy_Resource_RepositoryResource_GooRepository::new()
4281        }
4282    }
4283}
4284
4285impl ::protobuf::Message for OSPolicy_Resource_RepositoryResource {
4286    fn is_initialized(&self) -> bool {
4287        if let Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(ref v)) = self.repository {
4288            if !v.is_initialized() {
4289                return false;
4290            }
4291        }
4292        if let Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(ref v)) = self.repository {
4293            if !v.is_initialized() {
4294                return false;
4295            }
4296        }
4297        if let Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(ref v)) = self.repository {
4298            if !v.is_initialized() {
4299                return false;
4300            }
4301        }
4302        if let Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(ref v)) = self.repository {
4303            if !v.is_initialized() {
4304                return false;
4305            }
4306        }
4307        true
4308    }
4309
4310    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
4311        while !is.eof()? {
4312            let (field_number, wire_type) = is.read_tag_unpack()?;
4313            match field_number {
4314                1 => {
4315                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
4316                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4317                    }
4318                    self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::apt(is.read_message()?));
4319                },
4320                2 => {
4321                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
4322                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4323                    }
4324                    self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::yum(is.read_message()?));
4325                },
4326                3 => {
4327                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
4328                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4329                    }
4330                    self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(is.read_message()?));
4331                },
4332                4 => {
4333                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
4334                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
4335                    }
4336                    self.repository = ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_oneof_repository::goo(is.read_message()?));
4337                },
4338                _ => {
4339                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
4340                },
4341            };
4342        }
4343        ::std::result::Result::Ok(())
4344    }
4345
4346    // Compute sizes of nested messages
4347    #[allow(unused_variables)]
4348    fn compute_size(&self) -> u32 {
4349        let mut my_size = 0;
4350        if let ::std::option::Option::Some(ref v) = self.repository {
4351            match v {
4352                &OSPolicy_Resource_RepositoryResource_oneof_repository::apt(ref v) => {
4353                    let len = v.compute_size();
4354                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
4355                },
4356                &OSPolicy_Resource_RepositoryResource_oneof_repository::yum(ref v) => {
4357                    let len = v.compute_size();
4358                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
4359                },
4360                &OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(ref v) => {
4361                    let len = v.compute_size();
4362                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
4363                },
4364                &OSPolicy_Resource_RepositoryResource_oneof_repository::goo(ref v) => {
4365                    let len = v.compute_size();
4366                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
4367                },
4368            };
4369        }
4370        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
4371        self.cached_size.set(my_size);
4372        my_size
4373    }
4374
4375    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
4376        if let ::std::option::Option::Some(ref v) = self.repository {
4377            match v {
4378                &OSPolicy_Resource_RepositoryResource_oneof_repository::apt(ref v) => {
4379                    os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
4380                    os.write_raw_varint32(v.get_cached_size())?;
4381                    v.write_to_with_cached_sizes(os)?;
4382                },
4383                &OSPolicy_Resource_RepositoryResource_oneof_repository::yum(ref v) => {
4384                    os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
4385                    os.write_raw_varint32(v.get_cached_size())?;
4386                    v.write_to_with_cached_sizes(os)?;
4387                },
4388                &OSPolicy_Resource_RepositoryResource_oneof_repository::zypper(ref v) => {
4389                    os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
4390                    os.write_raw_varint32(v.get_cached_size())?;
4391                    v.write_to_with_cached_sizes(os)?;
4392                },
4393                &OSPolicy_Resource_RepositoryResource_oneof_repository::goo(ref v) => {
4394                    os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
4395                    os.write_raw_varint32(v.get_cached_size())?;
4396                    v.write_to_with_cached_sizes(os)?;
4397                },
4398            };
4399        }
4400        os.write_unknown_fields(self.get_unknown_fields())?;
4401        ::std::result::Result::Ok(())
4402    }
4403
4404    fn get_cached_size(&self) -> u32 {
4405        self.cached_size.get()
4406    }
4407
4408    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
4409        &self.unknown_fields
4410    }
4411
4412    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
4413        &mut self.unknown_fields
4414    }
4415
4416    fn as_any(&self) -> &dyn (::std::any::Any) {
4417        self as &dyn (::std::any::Any)
4418    }
4419    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
4420        self as &mut dyn (::std::any::Any)
4421    }
4422    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
4423        self
4424    }
4425
4426    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
4427        Self::descriptor_static()
4428    }
4429
4430    fn new() -> OSPolicy_Resource_RepositoryResource {
4431        OSPolicy_Resource_RepositoryResource::new()
4432    }
4433
4434    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
4435        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
4436        descriptor.get(|| {
4437            let mut fields = ::std::vec::Vec::new();
4438            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_RepositoryResource_AptRepository>(
4439                "apt",
4440                OSPolicy_Resource_RepositoryResource::has_apt,
4441                OSPolicy_Resource_RepositoryResource::get_apt,
4442            ));
4443            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_RepositoryResource_YumRepository>(
4444                "yum",
4445                OSPolicy_Resource_RepositoryResource::has_yum,
4446                OSPolicy_Resource_RepositoryResource::get_yum,
4447            ));
4448            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_RepositoryResource_ZypperRepository>(
4449                "zypper",
4450                OSPolicy_Resource_RepositoryResource::has_zypper,
4451                OSPolicy_Resource_RepositoryResource::get_zypper,
4452            ));
4453            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_RepositoryResource_GooRepository>(
4454                "goo",
4455                OSPolicy_Resource_RepositoryResource::has_goo,
4456                OSPolicy_Resource_RepositoryResource::get_goo,
4457            ));
4458            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_RepositoryResource>(
4459                "OSPolicy.Resource.RepositoryResource",
4460                fields,
4461                file_descriptor_proto()
4462            )
4463        })
4464    }
4465
4466    fn default_instance() -> &'static OSPolicy_Resource_RepositoryResource {
4467        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_RepositoryResource> = ::protobuf::rt::LazyV2::INIT;
4468        instance.get(OSPolicy_Resource_RepositoryResource::new)
4469    }
4470}
4471
4472impl ::protobuf::Clear for OSPolicy_Resource_RepositoryResource {
4473    fn clear(&mut self) {
4474        self.repository = ::std::option::Option::None;
4475        self.repository = ::std::option::Option::None;
4476        self.repository = ::std::option::Option::None;
4477        self.repository = ::std::option::Option::None;
4478        self.unknown_fields.clear();
4479    }
4480}
4481
4482impl ::std::fmt::Debug for OSPolicy_Resource_RepositoryResource {
4483    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4484        ::protobuf::text_format::fmt(self, f)
4485    }
4486}
4487
4488impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_RepositoryResource {
4489    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
4490        ::protobuf::reflect::ReflectValueRef::Message(self)
4491    }
4492}
4493
4494#[derive(PartialEq,Clone,Default)]
4495pub struct OSPolicy_Resource_RepositoryResource_AptRepository {
4496    // message fields
4497    pub archive_type: OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType,
4498    pub uri: ::std::string::String,
4499    pub distribution: ::std::string::String,
4500    pub components: ::protobuf::RepeatedField<::std::string::String>,
4501    pub gpg_key: ::std::string::String,
4502    // special fields
4503    pub unknown_fields: ::protobuf::UnknownFields,
4504    pub cached_size: ::protobuf::CachedSize,
4505}
4506
4507impl<'a> ::std::default::Default for &'a OSPolicy_Resource_RepositoryResource_AptRepository {
4508    fn default() -> &'a OSPolicy_Resource_RepositoryResource_AptRepository {
4509        <OSPolicy_Resource_RepositoryResource_AptRepository as ::protobuf::Message>::default_instance()
4510    }
4511}
4512
4513impl OSPolicy_Resource_RepositoryResource_AptRepository {
4514    pub fn new() -> OSPolicy_Resource_RepositoryResource_AptRepository {
4515        ::std::default::Default::default()
4516    }
4517
4518    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryResource.AptRepository.ArchiveType archive_type = 1;
4519
4520
4521    pub fn get_archive_type(&self) -> OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType {
4522        self.archive_type
4523    }
4524    pub fn clear_archive_type(&mut self) {
4525        self.archive_type = OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::ARCHIVE_TYPE_UNSPECIFIED;
4526    }
4527
4528    // Param is passed by value, moved
4529    pub fn set_archive_type(&mut self, v: OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType) {
4530        self.archive_type = v;
4531    }
4532
4533    // string uri = 2;
4534
4535
4536    pub fn get_uri(&self) -> &str {
4537        &self.uri
4538    }
4539    pub fn clear_uri(&mut self) {
4540        self.uri.clear();
4541    }
4542
4543    // Param is passed by value, moved
4544    pub fn set_uri(&mut self, v: ::std::string::String) {
4545        self.uri = v;
4546    }
4547
4548    // Mutable pointer to the field.
4549    // If field is not initialized, it is initialized with default value first.
4550    pub fn mut_uri(&mut self) -> &mut ::std::string::String {
4551        &mut self.uri
4552    }
4553
4554    // Take field
4555    pub fn take_uri(&mut self) -> ::std::string::String {
4556        ::std::mem::replace(&mut self.uri, ::std::string::String::new())
4557    }
4558
4559    // string distribution = 3;
4560
4561
4562    pub fn get_distribution(&self) -> &str {
4563        &self.distribution
4564    }
4565    pub fn clear_distribution(&mut self) {
4566        self.distribution.clear();
4567    }
4568
4569    // Param is passed by value, moved
4570    pub fn set_distribution(&mut self, v: ::std::string::String) {
4571        self.distribution = v;
4572    }
4573
4574    // Mutable pointer to the field.
4575    // If field is not initialized, it is initialized with default value first.
4576    pub fn mut_distribution(&mut self) -> &mut ::std::string::String {
4577        &mut self.distribution
4578    }
4579
4580    // Take field
4581    pub fn take_distribution(&mut self) -> ::std::string::String {
4582        ::std::mem::replace(&mut self.distribution, ::std::string::String::new())
4583    }
4584
4585    // repeated string components = 4;
4586
4587
4588    pub fn get_components(&self) -> &[::std::string::String] {
4589        &self.components
4590    }
4591    pub fn clear_components(&mut self) {
4592        self.components.clear();
4593    }
4594
4595    // Param is passed by value, moved
4596    pub fn set_components(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
4597        self.components = v;
4598    }
4599
4600    // Mutable pointer to the field.
4601    pub fn mut_components(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
4602        &mut self.components
4603    }
4604
4605    // Take field
4606    pub fn take_components(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
4607        ::std::mem::replace(&mut self.components, ::protobuf::RepeatedField::new())
4608    }
4609
4610    // string gpg_key = 5;
4611
4612
4613    pub fn get_gpg_key(&self) -> &str {
4614        &self.gpg_key
4615    }
4616    pub fn clear_gpg_key(&mut self) {
4617        self.gpg_key.clear();
4618    }
4619
4620    // Param is passed by value, moved
4621    pub fn set_gpg_key(&mut self, v: ::std::string::String) {
4622        self.gpg_key = v;
4623    }
4624
4625    // Mutable pointer to the field.
4626    // If field is not initialized, it is initialized with default value first.
4627    pub fn mut_gpg_key(&mut self) -> &mut ::std::string::String {
4628        &mut self.gpg_key
4629    }
4630
4631    // Take field
4632    pub fn take_gpg_key(&mut self) -> ::std::string::String {
4633        ::std::mem::replace(&mut self.gpg_key, ::std::string::String::new())
4634    }
4635}
4636
4637impl ::protobuf::Message for OSPolicy_Resource_RepositoryResource_AptRepository {
4638    fn is_initialized(&self) -> bool {
4639        true
4640    }
4641
4642    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
4643        while !is.eof()? {
4644            let (field_number, wire_type) = is.read_tag_unpack()?;
4645            match field_number {
4646                1 => {
4647                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.archive_type, 1, &mut self.unknown_fields)?
4648                },
4649                2 => {
4650                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.uri)?;
4651                },
4652                3 => {
4653                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.distribution)?;
4654                },
4655                4 => {
4656                    ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.components)?;
4657                },
4658                5 => {
4659                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.gpg_key)?;
4660                },
4661                _ => {
4662                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
4663                },
4664            };
4665        }
4666        ::std::result::Result::Ok(())
4667    }
4668
4669    // Compute sizes of nested messages
4670    #[allow(unused_variables)]
4671    fn compute_size(&self) -> u32 {
4672        let mut my_size = 0;
4673        if self.archive_type != OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::ARCHIVE_TYPE_UNSPECIFIED {
4674            my_size += ::protobuf::rt::enum_size(1, self.archive_type);
4675        }
4676        if !self.uri.is_empty() {
4677            my_size += ::protobuf::rt::string_size(2, &self.uri);
4678        }
4679        if !self.distribution.is_empty() {
4680            my_size += ::protobuf::rt::string_size(3, &self.distribution);
4681        }
4682        for value in &self.components {
4683            my_size += ::protobuf::rt::string_size(4, &value);
4684        };
4685        if !self.gpg_key.is_empty() {
4686            my_size += ::protobuf::rt::string_size(5, &self.gpg_key);
4687        }
4688        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
4689        self.cached_size.set(my_size);
4690        my_size
4691    }
4692
4693    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
4694        if self.archive_type != OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::ARCHIVE_TYPE_UNSPECIFIED {
4695            os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.archive_type))?;
4696        }
4697        if !self.uri.is_empty() {
4698            os.write_string(2, &self.uri)?;
4699        }
4700        if !self.distribution.is_empty() {
4701            os.write_string(3, &self.distribution)?;
4702        }
4703        for v in &self.components {
4704            os.write_string(4, &v)?;
4705        };
4706        if !self.gpg_key.is_empty() {
4707            os.write_string(5, &self.gpg_key)?;
4708        }
4709        os.write_unknown_fields(self.get_unknown_fields())?;
4710        ::std::result::Result::Ok(())
4711    }
4712
4713    fn get_cached_size(&self) -> u32 {
4714        self.cached_size.get()
4715    }
4716
4717    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
4718        &self.unknown_fields
4719    }
4720
4721    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
4722        &mut self.unknown_fields
4723    }
4724
4725    fn as_any(&self) -> &dyn (::std::any::Any) {
4726        self as &dyn (::std::any::Any)
4727    }
4728    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
4729        self as &mut dyn (::std::any::Any)
4730    }
4731    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
4732        self
4733    }
4734
4735    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
4736        Self::descriptor_static()
4737    }
4738
4739    fn new() -> OSPolicy_Resource_RepositoryResource_AptRepository {
4740        OSPolicy_Resource_RepositoryResource_AptRepository::new()
4741    }
4742
4743    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
4744        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
4745        descriptor.get(|| {
4746            let mut fields = ::std::vec::Vec::new();
4747            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType>>(
4748                "archive_type",
4749                |m: &OSPolicy_Resource_RepositoryResource_AptRepository| { &m.archive_type },
4750                |m: &mut OSPolicy_Resource_RepositoryResource_AptRepository| { &mut m.archive_type },
4751            ));
4752            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4753                "uri",
4754                |m: &OSPolicy_Resource_RepositoryResource_AptRepository| { &m.uri },
4755                |m: &mut OSPolicy_Resource_RepositoryResource_AptRepository| { &mut m.uri },
4756            ));
4757            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4758                "distribution",
4759                |m: &OSPolicy_Resource_RepositoryResource_AptRepository| { &m.distribution },
4760                |m: &mut OSPolicy_Resource_RepositoryResource_AptRepository| { &mut m.distribution },
4761            ));
4762            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4763                "components",
4764                |m: &OSPolicy_Resource_RepositoryResource_AptRepository| { &m.components },
4765                |m: &mut OSPolicy_Resource_RepositoryResource_AptRepository| { &mut m.components },
4766            ));
4767            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
4768                "gpg_key",
4769                |m: &OSPolicy_Resource_RepositoryResource_AptRepository| { &m.gpg_key },
4770                |m: &mut OSPolicy_Resource_RepositoryResource_AptRepository| { &mut m.gpg_key },
4771            ));
4772            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_RepositoryResource_AptRepository>(
4773                "OSPolicy.Resource.RepositoryResource.AptRepository",
4774                fields,
4775                file_descriptor_proto()
4776            )
4777        })
4778    }
4779
4780    fn default_instance() -> &'static OSPolicy_Resource_RepositoryResource_AptRepository {
4781        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_RepositoryResource_AptRepository> = ::protobuf::rt::LazyV2::INIT;
4782        instance.get(OSPolicy_Resource_RepositoryResource_AptRepository::new)
4783    }
4784}
4785
4786impl ::protobuf::Clear for OSPolicy_Resource_RepositoryResource_AptRepository {
4787    fn clear(&mut self) {
4788        self.archive_type = OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::ARCHIVE_TYPE_UNSPECIFIED;
4789        self.uri.clear();
4790        self.distribution.clear();
4791        self.components.clear();
4792        self.gpg_key.clear();
4793        self.unknown_fields.clear();
4794    }
4795}
4796
4797impl ::std::fmt::Debug for OSPolicy_Resource_RepositoryResource_AptRepository {
4798    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
4799        ::protobuf::text_format::fmt(self, f)
4800    }
4801}
4802
4803impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_RepositoryResource_AptRepository {
4804    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
4805        ::protobuf::reflect::ReflectValueRef::Message(self)
4806    }
4807}
4808
4809#[derive(Clone,PartialEq,Eq,Debug,Hash)]
4810pub enum OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType {
4811    ARCHIVE_TYPE_UNSPECIFIED = 0,
4812    DEB = 1,
4813    DEB_SRC = 2,
4814}
4815
4816impl ::protobuf::ProtobufEnum for OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType {
4817    fn value(&self) -> i32 {
4818        *self as i32
4819    }
4820
4821    fn from_i32(value: i32) -> ::std::option::Option<OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType> {
4822        match value {
4823            0 => ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::ARCHIVE_TYPE_UNSPECIFIED),
4824            1 => ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::DEB),
4825            2 => ::std::option::Option::Some(OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::DEB_SRC),
4826            _ => ::std::option::Option::None
4827        }
4828    }
4829
4830    fn values() -> &'static [Self] {
4831        static values: &'static [OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType] = &[
4832            OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::ARCHIVE_TYPE_UNSPECIFIED,
4833            OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::DEB,
4834            OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::DEB_SRC,
4835        ];
4836        values
4837    }
4838
4839    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
4840        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
4841        descriptor.get(|| {
4842            ::protobuf::reflect::EnumDescriptor::new_pb_name::<OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType>("OSPolicy.Resource.RepositoryResource.AptRepository.ArchiveType", file_descriptor_proto())
4843        })
4844    }
4845}
4846
4847impl ::std::marker::Copy for OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType {
4848}
4849
4850impl ::std::default::Default for OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType {
4851    fn default() -> Self {
4852        OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType::ARCHIVE_TYPE_UNSPECIFIED
4853    }
4854}
4855
4856impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_RepositoryResource_AptRepository_ArchiveType {
4857    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
4858        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
4859    }
4860}
4861
4862#[derive(PartialEq,Clone,Default)]
4863pub struct OSPolicy_Resource_RepositoryResource_YumRepository {
4864    // message fields
4865    pub id: ::std::string::String,
4866    pub display_name: ::std::string::String,
4867    pub base_url: ::std::string::String,
4868    pub gpg_keys: ::protobuf::RepeatedField<::std::string::String>,
4869    // special fields
4870    pub unknown_fields: ::protobuf::UnknownFields,
4871    pub cached_size: ::protobuf::CachedSize,
4872}
4873
4874impl<'a> ::std::default::Default for &'a OSPolicy_Resource_RepositoryResource_YumRepository {
4875    fn default() -> &'a OSPolicy_Resource_RepositoryResource_YumRepository {
4876        <OSPolicy_Resource_RepositoryResource_YumRepository as ::protobuf::Message>::default_instance()
4877    }
4878}
4879
4880impl OSPolicy_Resource_RepositoryResource_YumRepository {
4881    pub fn new() -> OSPolicy_Resource_RepositoryResource_YumRepository {
4882        ::std::default::Default::default()
4883    }
4884
4885    // string id = 1;
4886
4887
4888    pub fn get_id(&self) -> &str {
4889        &self.id
4890    }
4891    pub fn clear_id(&mut self) {
4892        self.id.clear();
4893    }
4894
4895    // Param is passed by value, moved
4896    pub fn set_id(&mut self, v: ::std::string::String) {
4897        self.id = v;
4898    }
4899
4900    // Mutable pointer to the field.
4901    // If field is not initialized, it is initialized with default value first.
4902    pub fn mut_id(&mut self) -> &mut ::std::string::String {
4903        &mut self.id
4904    }
4905
4906    // Take field
4907    pub fn take_id(&mut self) -> ::std::string::String {
4908        ::std::mem::replace(&mut self.id, ::std::string::String::new())
4909    }
4910
4911    // string display_name = 2;
4912
4913
4914    pub fn get_display_name(&self) -> &str {
4915        &self.display_name
4916    }
4917    pub fn clear_display_name(&mut self) {
4918        self.display_name.clear();
4919    }
4920
4921    // Param is passed by value, moved
4922    pub fn set_display_name(&mut self, v: ::std::string::String) {
4923        self.display_name = v;
4924    }
4925
4926    // Mutable pointer to the field.
4927    // If field is not initialized, it is initialized with default value first.
4928    pub fn mut_display_name(&mut self) -> &mut ::std::string::String {
4929        &mut self.display_name
4930    }
4931
4932    // Take field
4933    pub fn take_display_name(&mut self) -> ::std::string::String {
4934        ::std::mem::replace(&mut self.display_name, ::std::string::String::new())
4935    }
4936
4937    // string base_url = 3;
4938
4939
4940    pub fn get_base_url(&self) -> &str {
4941        &self.base_url
4942    }
4943    pub fn clear_base_url(&mut self) {
4944        self.base_url.clear();
4945    }
4946
4947    // Param is passed by value, moved
4948    pub fn set_base_url(&mut self, v: ::std::string::String) {
4949        self.base_url = v;
4950    }
4951
4952    // Mutable pointer to the field.
4953    // If field is not initialized, it is initialized with default value first.
4954    pub fn mut_base_url(&mut self) -> &mut ::std::string::String {
4955        &mut self.base_url
4956    }
4957
4958    // Take field
4959    pub fn take_base_url(&mut self) -> ::std::string::String {
4960        ::std::mem::replace(&mut self.base_url, ::std::string::String::new())
4961    }
4962
4963    // repeated string gpg_keys = 4;
4964
4965
4966    pub fn get_gpg_keys(&self) -> &[::std::string::String] {
4967        &self.gpg_keys
4968    }
4969    pub fn clear_gpg_keys(&mut self) {
4970        self.gpg_keys.clear();
4971    }
4972
4973    // Param is passed by value, moved
4974    pub fn set_gpg_keys(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
4975        self.gpg_keys = v;
4976    }
4977
4978    // Mutable pointer to the field.
4979    pub fn mut_gpg_keys(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
4980        &mut self.gpg_keys
4981    }
4982
4983    // Take field
4984    pub fn take_gpg_keys(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
4985        ::std::mem::replace(&mut self.gpg_keys, ::protobuf::RepeatedField::new())
4986    }
4987}
4988
4989impl ::protobuf::Message for OSPolicy_Resource_RepositoryResource_YumRepository {
4990    fn is_initialized(&self) -> bool {
4991        true
4992    }
4993
4994    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
4995        while !is.eof()? {
4996            let (field_number, wire_type) = is.read_tag_unpack()?;
4997            match field_number {
4998                1 => {
4999                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.id)?;
5000                },
5001                2 => {
5002                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.display_name)?;
5003                },
5004                3 => {
5005                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.base_url)?;
5006                },
5007                4 => {
5008                    ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.gpg_keys)?;
5009                },
5010                _ => {
5011                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
5012                },
5013            };
5014        }
5015        ::std::result::Result::Ok(())
5016    }
5017
5018    // Compute sizes of nested messages
5019    #[allow(unused_variables)]
5020    fn compute_size(&self) -> u32 {
5021        let mut my_size = 0;
5022        if !self.id.is_empty() {
5023            my_size += ::protobuf::rt::string_size(1, &self.id);
5024        }
5025        if !self.display_name.is_empty() {
5026            my_size += ::protobuf::rt::string_size(2, &self.display_name);
5027        }
5028        if !self.base_url.is_empty() {
5029            my_size += ::protobuf::rt::string_size(3, &self.base_url);
5030        }
5031        for value in &self.gpg_keys {
5032            my_size += ::protobuf::rt::string_size(4, &value);
5033        };
5034        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
5035        self.cached_size.set(my_size);
5036        my_size
5037    }
5038
5039    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
5040        if !self.id.is_empty() {
5041            os.write_string(1, &self.id)?;
5042        }
5043        if !self.display_name.is_empty() {
5044            os.write_string(2, &self.display_name)?;
5045        }
5046        if !self.base_url.is_empty() {
5047            os.write_string(3, &self.base_url)?;
5048        }
5049        for v in &self.gpg_keys {
5050            os.write_string(4, &v)?;
5051        };
5052        os.write_unknown_fields(self.get_unknown_fields())?;
5053        ::std::result::Result::Ok(())
5054    }
5055
5056    fn get_cached_size(&self) -> u32 {
5057        self.cached_size.get()
5058    }
5059
5060    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
5061        &self.unknown_fields
5062    }
5063
5064    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
5065        &mut self.unknown_fields
5066    }
5067
5068    fn as_any(&self) -> &dyn (::std::any::Any) {
5069        self as &dyn (::std::any::Any)
5070    }
5071    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
5072        self as &mut dyn (::std::any::Any)
5073    }
5074    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
5075        self
5076    }
5077
5078    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
5079        Self::descriptor_static()
5080    }
5081
5082    fn new() -> OSPolicy_Resource_RepositoryResource_YumRepository {
5083        OSPolicy_Resource_RepositoryResource_YumRepository::new()
5084    }
5085
5086    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
5087        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
5088        descriptor.get(|| {
5089            let mut fields = ::std::vec::Vec::new();
5090            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5091                "id",
5092                |m: &OSPolicy_Resource_RepositoryResource_YumRepository| { &m.id },
5093                |m: &mut OSPolicy_Resource_RepositoryResource_YumRepository| { &mut m.id },
5094            ));
5095            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5096                "display_name",
5097                |m: &OSPolicy_Resource_RepositoryResource_YumRepository| { &m.display_name },
5098                |m: &mut OSPolicy_Resource_RepositoryResource_YumRepository| { &mut m.display_name },
5099            ));
5100            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5101                "base_url",
5102                |m: &OSPolicy_Resource_RepositoryResource_YumRepository| { &m.base_url },
5103                |m: &mut OSPolicy_Resource_RepositoryResource_YumRepository| { &mut m.base_url },
5104            ));
5105            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5106                "gpg_keys",
5107                |m: &OSPolicy_Resource_RepositoryResource_YumRepository| { &m.gpg_keys },
5108                |m: &mut OSPolicy_Resource_RepositoryResource_YumRepository| { &mut m.gpg_keys },
5109            ));
5110            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_RepositoryResource_YumRepository>(
5111                "OSPolicy.Resource.RepositoryResource.YumRepository",
5112                fields,
5113                file_descriptor_proto()
5114            )
5115        })
5116    }
5117
5118    fn default_instance() -> &'static OSPolicy_Resource_RepositoryResource_YumRepository {
5119        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_RepositoryResource_YumRepository> = ::protobuf::rt::LazyV2::INIT;
5120        instance.get(OSPolicy_Resource_RepositoryResource_YumRepository::new)
5121    }
5122}
5123
5124impl ::protobuf::Clear for OSPolicy_Resource_RepositoryResource_YumRepository {
5125    fn clear(&mut self) {
5126        self.id.clear();
5127        self.display_name.clear();
5128        self.base_url.clear();
5129        self.gpg_keys.clear();
5130        self.unknown_fields.clear();
5131    }
5132}
5133
5134impl ::std::fmt::Debug for OSPolicy_Resource_RepositoryResource_YumRepository {
5135    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5136        ::protobuf::text_format::fmt(self, f)
5137    }
5138}
5139
5140impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_RepositoryResource_YumRepository {
5141    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
5142        ::protobuf::reflect::ReflectValueRef::Message(self)
5143    }
5144}
5145
5146#[derive(PartialEq,Clone,Default)]
5147pub struct OSPolicy_Resource_RepositoryResource_ZypperRepository {
5148    // message fields
5149    pub id: ::std::string::String,
5150    pub display_name: ::std::string::String,
5151    pub base_url: ::std::string::String,
5152    pub gpg_keys: ::protobuf::RepeatedField<::std::string::String>,
5153    // special fields
5154    pub unknown_fields: ::protobuf::UnknownFields,
5155    pub cached_size: ::protobuf::CachedSize,
5156}
5157
5158impl<'a> ::std::default::Default for &'a OSPolicy_Resource_RepositoryResource_ZypperRepository {
5159    fn default() -> &'a OSPolicy_Resource_RepositoryResource_ZypperRepository {
5160        <OSPolicy_Resource_RepositoryResource_ZypperRepository as ::protobuf::Message>::default_instance()
5161    }
5162}
5163
5164impl OSPolicy_Resource_RepositoryResource_ZypperRepository {
5165    pub fn new() -> OSPolicy_Resource_RepositoryResource_ZypperRepository {
5166        ::std::default::Default::default()
5167    }
5168
5169    // string id = 1;
5170
5171
5172    pub fn get_id(&self) -> &str {
5173        &self.id
5174    }
5175    pub fn clear_id(&mut self) {
5176        self.id.clear();
5177    }
5178
5179    // Param is passed by value, moved
5180    pub fn set_id(&mut self, v: ::std::string::String) {
5181        self.id = v;
5182    }
5183
5184    // Mutable pointer to the field.
5185    // If field is not initialized, it is initialized with default value first.
5186    pub fn mut_id(&mut self) -> &mut ::std::string::String {
5187        &mut self.id
5188    }
5189
5190    // Take field
5191    pub fn take_id(&mut self) -> ::std::string::String {
5192        ::std::mem::replace(&mut self.id, ::std::string::String::new())
5193    }
5194
5195    // string display_name = 2;
5196
5197
5198    pub fn get_display_name(&self) -> &str {
5199        &self.display_name
5200    }
5201    pub fn clear_display_name(&mut self) {
5202        self.display_name.clear();
5203    }
5204
5205    // Param is passed by value, moved
5206    pub fn set_display_name(&mut self, v: ::std::string::String) {
5207        self.display_name = v;
5208    }
5209
5210    // Mutable pointer to the field.
5211    // If field is not initialized, it is initialized with default value first.
5212    pub fn mut_display_name(&mut self) -> &mut ::std::string::String {
5213        &mut self.display_name
5214    }
5215
5216    // Take field
5217    pub fn take_display_name(&mut self) -> ::std::string::String {
5218        ::std::mem::replace(&mut self.display_name, ::std::string::String::new())
5219    }
5220
5221    // string base_url = 3;
5222
5223
5224    pub fn get_base_url(&self) -> &str {
5225        &self.base_url
5226    }
5227    pub fn clear_base_url(&mut self) {
5228        self.base_url.clear();
5229    }
5230
5231    // Param is passed by value, moved
5232    pub fn set_base_url(&mut self, v: ::std::string::String) {
5233        self.base_url = v;
5234    }
5235
5236    // Mutable pointer to the field.
5237    // If field is not initialized, it is initialized with default value first.
5238    pub fn mut_base_url(&mut self) -> &mut ::std::string::String {
5239        &mut self.base_url
5240    }
5241
5242    // Take field
5243    pub fn take_base_url(&mut self) -> ::std::string::String {
5244        ::std::mem::replace(&mut self.base_url, ::std::string::String::new())
5245    }
5246
5247    // repeated string gpg_keys = 4;
5248
5249
5250    pub fn get_gpg_keys(&self) -> &[::std::string::String] {
5251        &self.gpg_keys
5252    }
5253    pub fn clear_gpg_keys(&mut self) {
5254        self.gpg_keys.clear();
5255    }
5256
5257    // Param is passed by value, moved
5258    pub fn set_gpg_keys(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
5259        self.gpg_keys = v;
5260    }
5261
5262    // Mutable pointer to the field.
5263    pub fn mut_gpg_keys(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
5264        &mut self.gpg_keys
5265    }
5266
5267    // Take field
5268    pub fn take_gpg_keys(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
5269        ::std::mem::replace(&mut self.gpg_keys, ::protobuf::RepeatedField::new())
5270    }
5271}
5272
5273impl ::protobuf::Message for OSPolicy_Resource_RepositoryResource_ZypperRepository {
5274    fn is_initialized(&self) -> bool {
5275        true
5276    }
5277
5278    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
5279        while !is.eof()? {
5280            let (field_number, wire_type) = is.read_tag_unpack()?;
5281            match field_number {
5282                1 => {
5283                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.id)?;
5284                },
5285                2 => {
5286                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.display_name)?;
5287                },
5288                3 => {
5289                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.base_url)?;
5290                },
5291                4 => {
5292                    ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.gpg_keys)?;
5293                },
5294                _ => {
5295                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
5296                },
5297            };
5298        }
5299        ::std::result::Result::Ok(())
5300    }
5301
5302    // Compute sizes of nested messages
5303    #[allow(unused_variables)]
5304    fn compute_size(&self) -> u32 {
5305        let mut my_size = 0;
5306        if !self.id.is_empty() {
5307            my_size += ::protobuf::rt::string_size(1, &self.id);
5308        }
5309        if !self.display_name.is_empty() {
5310            my_size += ::protobuf::rt::string_size(2, &self.display_name);
5311        }
5312        if !self.base_url.is_empty() {
5313            my_size += ::protobuf::rt::string_size(3, &self.base_url);
5314        }
5315        for value in &self.gpg_keys {
5316            my_size += ::protobuf::rt::string_size(4, &value);
5317        };
5318        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
5319        self.cached_size.set(my_size);
5320        my_size
5321    }
5322
5323    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
5324        if !self.id.is_empty() {
5325            os.write_string(1, &self.id)?;
5326        }
5327        if !self.display_name.is_empty() {
5328            os.write_string(2, &self.display_name)?;
5329        }
5330        if !self.base_url.is_empty() {
5331            os.write_string(3, &self.base_url)?;
5332        }
5333        for v in &self.gpg_keys {
5334            os.write_string(4, &v)?;
5335        };
5336        os.write_unknown_fields(self.get_unknown_fields())?;
5337        ::std::result::Result::Ok(())
5338    }
5339
5340    fn get_cached_size(&self) -> u32 {
5341        self.cached_size.get()
5342    }
5343
5344    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
5345        &self.unknown_fields
5346    }
5347
5348    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
5349        &mut self.unknown_fields
5350    }
5351
5352    fn as_any(&self) -> &dyn (::std::any::Any) {
5353        self as &dyn (::std::any::Any)
5354    }
5355    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
5356        self as &mut dyn (::std::any::Any)
5357    }
5358    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
5359        self
5360    }
5361
5362    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
5363        Self::descriptor_static()
5364    }
5365
5366    fn new() -> OSPolicy_Resource_RepositoryResource_ZypperRepository {
5367        OSPolicy_Resource_RepositoryResource_ZypperRepository::new()
5368    }
5369
5370    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
5371        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
5372        descriptor.get(|| {
5373            let mut fields = ::std::vec::Vec::new();
5374            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5375                "id",
5376                |m: &OSPolicy_Resource_RepositoryResource_ZypperRepository| { &m.id },
5377                |m: &mut OSPolicy_Resource_RepositoryResource_ZypperRepository| { &mut m.id },
5378            ));
5379            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5380                "display_name",
5381                |m: &OSPolicy_Resource_RepositoryResource_ZypperRepository| { &m.display_name },
5382                |m: &mut OSPolicy_Resource_RepositoryResource_ZypperRepository| { &mut m.display_name },
5383            ));
5384            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5385                "base_url",
5386                |m: &OSPolicy_Resource_RepositoryResource_ZypperRepository| { &m.base_url },
5387                |m: &mut OSPolicy_Resource_RepositoryResource_ZypperRepository| { &mut m.base_url },
5388            ));
5389            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5390                "gpg_keys",
5391                |m: &OSPolicy_Resource_RepositoryResource_ZypperRepository| { &m.gpg_keys },
5392                |m: &mut OSPolicy_Resource_RepositoryResource_ZypperRepository| { &mut m.gpg_keys },
5393            ));
5394            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_RepositoryResource_ZypperRepository>(
5395                "OSPolicy.Resource.RepositoryResource.ZypperRepository",
5396                fields,
5397                file_descriptor_proto()
5398            )
5399        })
5400    }
5401
5402    fn default_instance() -> &'static OSPolicy_Resource_RepositoryResource_ZypperRepository {
5403        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_RepositoryResource_ZypperRepository> = ::protobuf::rt::LazyV2::INIT;
5404        instance.get(OSPolicy_Resource_RepositoryResource_ZypperRepository::new)
5405    }
5406}
5407
5408impl ::protobuf::Clear for OSPolicy_Resource_RepositoryResource_ZypperRepository {
5409    fn clear(&mut self) {
5410        self.id.clear();
5411        self.display_name.clear();
5412        self.base_url.clear();
5413        self.gpg_keys.clear();
5414        self.unknown_fields.clear();
5415    }
5416}
5417
5418impl ::std::fmt::Debug for OSPolicy_Resource_RepositoryResource_ZypperRepository {
5419    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5420        ::protobuf::text_format::fmt(self, f)
5421    }
5422}
5423
5424impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_RepositoryResource_ZypperRepository {
5425    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
5426        ::protobuf::reflect::ReflectValueRef::Message(self)
5427    }
5428}
5429
5430#[derive(PartialEq,Clone,Default)]
5431pub struct OSPolicy_Resource_RepositoryResource_GooRepository {
5432    // message fields
5433    pub name: ::std::string::String,
5434    pub url: ::std::string::String,
5435    // special fields
5436    pub unknown_fields: ::protobuf::UnknownFields,
5437    pub cached_size: ::protobuf::CachedSize,
5438}
5439
5440impl<'a> ::std::default::Default for &'a OSPolicy_Resource_RepositoryResource_GooRepository {
5441    fn default() -> &'a OSPolicy_Resource_RepositoryResource_GooRepository {
5442        <OSPolicy_Resource_RepositoryResource_GooRepository as ::protobuf::Message>::default_instance()
5443    }
5444}
5445
5446impl OSPolicy_Resource_RepositoryResource_GooRepository {
5447    pub fn new() -> OSPolicy_Resource_RepositoryResource_GooRepository {
5448        ::std::default::Default::default()
5449    }
5450
5451    // string name = 1;
5452
5453
5454    pub fn get_name(&self) -> &str {
5455        &self.name
5456    }
5457    pub fn clear_name(&mut self) {
5458        self.name.clear();
5459    }
5460
5461    // Param is passed by value, moved
5462    pub fn set_name(&mut self, v: ::std::string::String) {
5463        self.name = v;
5464    }
5465
5466    // Mutable pointer to the field.
5467    // If field is not initialized, it is initialized with default value first.
5468    pub fn mut_name(&mut self) -> &mut ::std::string::String {
5469        &mut self.name
5470    }
5471
5472    // Take field
5473    pub fn take_name(&mut self) -> ::std::string::String {
5474        ::std::mem::replace(&mut self.name, ::std::string::String::new())
5475    }
5476
5477    // string url = 2;
5478
5479
5480    pub fn get_url(&self) -> &str {
5481        &self.url
5482    }
5483    pub fn clear_url(&mut self) {
5484        self.url.clear();
5485    }
5486
5487    // Param is passed by value, moved
5488    pub fn set_url(&mut self, v: ::std::string::String) {
5489        self.url = v;
5490    }
5491
5492    // Mutable pointer to the field.
5493    // If field is not initialized, it is initialized with default value first.
5494    pub fn mut_url(&mut self) -> &mut ::std::string::String {
5495        &mut self.url
5496    }
5497
5498    // Take field
5499    pub fn take_url(&mut self) -> ::std::string::String {
5500        ::std::mem::replace(&mut self.url, ::std::string::String::new())
5501    }
5502}
5503
5504impl ::protobuf::Message for OSPolicy_Resource_RepositoryResource_GooRepository {
5505    fn is_initialized(&self) -> bool {
5506        true
5507    }
5508
5509    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
5510        while !is.eof()? {
5511            let (field_number, wire_type) = is.read_tag_unpack()?;
5512            match field_number {
5513                1 => {
5514                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
5515                },
5516                2 => {
5517                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.url)?;
5518                },
5519                _ => {
5520                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
5521                },
5522            };
5523        }
5524        ::std::result::Result::Ok(())
5525    }
5526
5527    // Compute sizes of nested messages
5528    #[allow(unused_variables)]
5529    fn compute_size(&self) -> u32 {
5530        let mut my_size = 0;
5531        if !self.name.is_empty() {
5532            my_size += ::protobuf::rt::string_size(1, &self.name);
5533        }
5534        if !self.url.is_empty() {
5535            my_size += ::protobuf::rt::string_size(2, &self.url);
5536        }
5537        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
5538        self.cached_size.set(my_size);
5539        my_size
5540    }
5541
5542    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
5543        if !self.name.is_empty() {
5544            os.write_string(1, &self.name)?;
5545        }
5546        if !self.url.is_empty() {
5547            os.write_string(2, &self.url)?;
5548        }
5549        os.write_unknown_fields(self.get_unknown_fields())?;
5550        ::std::result::Result::Ok(())
5551    }
5552
5553    fn get_cached_size(&self) -> u32 {
5554        self.cached_size.get()
5555    }
5556
5557    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
5558        &self.unknown_fields
5559    }
5560
5561    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
5562        &mut self.unknown_fields
5563    }
5564
5565    fn as_any(&self) -> &dyn (::std::any::Any) {
5566        self as &dyn (::std::any::Any)
5567    }
5568    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
5569        self as &mut dyn (::std::any::Any)
5570    }
5571    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
5572        self
5573    }
5574
5575    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
5576        Self::descriptor_static()
5577    }
5578
5579    fn new() -> OSPolicy_Resource_RepositoryResource_GooRepository {
5580        OSPolicy_Resource_RepositoryResource_GooRepository::new()
5581    }
5582
5583    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
5584        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
5585        descriptor.get(|| {
5586            let mut fields = ::std::vec::Vec::new();
5587            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5588                "name",
5589                |m: &OSPolicy_Resource_RepositoryResource_GooRepository| { &m.name },
5590                |m: &mut OSPolicy_Resource_RepositoryResource_GooRepository| { &mut m.name },
5591            ));
5592            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
5593                "url",
5594                |m: &OSPolicy_Resource_RepositoryResource_GooRepository| { &m.url },
5595                |m: &mut OSPolicy_Resource_RepositoryResource_GooRepository| { &mut m.url },
5596            ));
5597            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_RepositoryResource_GooRepository>(
5598                "OSPolicy.Resource.RepositoryResource.GooRepository",
5599                fields,
5600                file_descriptor_proto()
5601            )
5602        })
5603    }
5604
5605    fn default_instance() -> &'static OSPolicy_Resource_RepositoryResource_GooRepository {
5606        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_RepositoryResource_GooRepository> = ::protobuf::rt::LazyV2::INIT;
5607        instance.get(OSPolicy_Resource_RepositoryResource_GooRepository::new)
5608    }
5609}
5610
5611impl ::protobuf::Clear for OSPolicy_Resource_RepositoryResource_GooRepository {
5612    fn clear(&mut self) {
5613        self.name.clear();
5614        self.url.clear();
5615        self.unknown_fields.clear();
5616    }
5617}
5618
5619impl ::std::fmt::Debug for OSPolicy_Resource_RepositoryResource_GooRepository {
5620    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5621        ::protobuf::text_format::fmt(self, f)
5622    }
5623}
5624
5625impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_RepositoryResource_GooRepository {
5626    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
5627        ::protobuf::reflect::ReflectValueRef::Message(self)
5628    }
5629}
5630
5631#[derive(PartialEq,Clone,Default)]
5632pub struct OSPolicy_Resource_ExecResource {
5633    // message fields
5634    pub validate: ::protobuf::SingularPtrField<OSPolicy_Resource_ExecResource_Exec>,
5635    pub enforce: ::protobuf::SingularPtrField<OSPolicy_Resource_ExecResource_Exec>,
5636    // special fields
5637    pub unknown_fields: ::protobuf::UnknownFields,
5638    pub cached_size: ::protobuf::CachedSize,
5639}
5640
5641impl<'a> ::std::default::Default for &'a OSPolicy_Resource_ExecResource {
5642    fn default() -> &'a OSPolicy_Resource_ExecResource {
5643        <OSPolicy_Resource_ExecResource as ::protobuf::Message>::default_instance()
5644    }
5645}
5646
5647impl OSPolicy_Resource_ExecResource {
5648    pub fn new() -> OSPolicy_Resource_ExecResource {
5649        ::std::default::Default::default()
5650    }
5651
5652    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1;
5653
5654
5655    pub fn get_validate(&self) -> &OSPolicy_Resource_ExecResource_Exec {
5656        self.validate.as_ref().unwrap_or_else(|| <OSPolicy_Resource_ExecResource_Exec as ::protobuf::Message>::default_instance())
5657    }
5658    pub fn clear_validate(&mut self) {
5659        self.validate.clear();
5660    }
5661
5662    pub fn has_validate(&self) -> bool {
5663        self.validate.is_some()
5664    }
5665
5666    // Param is passed by value, moved
5667    pub fn set_validate(&mut self, v: OSPolicy_Resource_ExecResource_Exec) {
5668        self.validate = ::protobuf::SingularPtrField::some(v);
5669    }
5670
5671    // Mutable pointer to the field.
5672    // If field is not initialized, it is initialized with default value first.
5673    pub fn mut_validate(&mut self) -> &mut OSPolicy_Resource_ExecResource_Exec {
5674        if self.validate.is_none() {
5675            self.validate.set_default();
5676        }
5677        self.validate.as_mut().unwrap()
5678    }
5679
5680    // Take field
5681    pub fn take_validate(&mut self) -> OSPolicy_Resource_ExecResource_Exec {
5682        self.validate.take().unwrap_or_else(|| OSPolicy_Resource_ExecResource_Exec::new())
5683    }
5684
5685    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
5686
5687
5688    pub fn get_enforce(&self) -> &OSPolicy_Resource_ExecResource_Exec {
5689        self.enforce.as_ref().unwrap_or_else(|| <OSPolicy_Resource_ExecResource_Exec as ::protobuf::Message>::default_instance())
5690    }
5691    pub fn clear_enforce(&mut self) {
5692        self.enforce.clear();
5693    }
5694
5695    pub fn has_enforce(&self) -> bool {
5696        self.enforce.is_some()
5697    }
5698
5699    // Param is passed by value, moved
5700    pub fn set_enforce(&mut self, v: OSPolicy_Resource_ExecResource_Exec) {
5701        self.enforce = ::protobuf::SingularPtrField::some(v);
5702    }
5703
5704    // Mutable pointer to the field.
5705    // If field is not initialized, it is initialized with default value first.
5706    pub fn mut_enforce(&mut self) -> &mut OSPolicy_Resource_ExecResource_Exec {
5707        if self.enforce.is_none() {
5708            self.enforce.set_default();
5709        }
5710        self.enforce.as_mut().unwrap()
5711    }
5712
5713    // Take field
5714    pub fn take_enforce(&mut self) -> OSPolicy_Resource_ExecResource_Exec {
5715        self.enforce.take().unwrap_or_else(|| OSPolicy_Resource_ExecResource_Exec::new())
5716    }
5717}
5718
5719impl ::protobuf::Message for OSPolicy_Resource_ExecResource {
5720    fn is_initialized(&self) -> bool {
5721        for v in &self.validate {
5722            if !v.is_initialized() {
5723                return false;
5724            }
5725        };
5726        for v in &self.enforce {
5727            if !v.is_initialized() {
5728                return false;
5729            }
5730        };
5731        true
5732    }
5733
5734    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
5735        while !is.eof()? {
5736            let (field_number, wire_type) = is.read_tag_unpack()?;
5737            match field_number {
5738                1 => {
5739                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.validate)?;
5740                },
5741                2 => {
5742                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.enforce)?;
5743                },
5744                _ => {
5745                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
5746                },
5747            };
5748        }
5749        ::std::result::Result::Ok(())
5750    }
5751
5752    // Compute sizes of nested messages
5753    #[allow(unused_variables)]
5754    fn compute_size(&self) -> u32 {
5755        let mut my_size = 0;
5756        if let Some(ref v) = self.validate.as_ref() {
5757            let len = v.compute_size();
5758            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
5759        }
5760        if let Some(ref v) = self.enforce.as_ref() {
5761            let len = v.compute_size();
5762            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
5763        }
5764        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
5765        self.cached_size.set(my_size);
5766        my_size
5767    }
5768
5769    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
5770        if let Some(ref v) = self.validate.as_ref() {
5771            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
5772            os.write_raw_varint32(v.get_cached_size())?;
5773            v.write_to_with_cached_sizes(os)?;
5774        }
5775        if let Some(ref v) = self.enforce.as_ref() {
5776            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
5777            os.write_raw_varint32(v.get_cached_size())?;
5778            v.write_to_with_cached_sizes(os)?;
5779        }
5780        os.write_unknown_fields(self.get_unknown_fields())?;
5781        ::std::result::Result::Ok(())
5782    }
5783
5784    fn get_cached_size(&self) -> u32 {
5785        self.cached_size.get()
5786    }
5787
5788    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
5789        &self.unknown_fields
5790    }
5791
5792    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
5793        &mut self.unknown_fields
5794    }
5795
5796    fn as_any(&self) -> &dyn (::std::any::Any) {
5797        self as &dyn (::std::any::Any)
5798    }
5799    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
5800        self as &mut dyn (::std::any::Any)
5801    }
5802    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
5803        self
5804    }
5805
5806    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
5807        Self::descriptor_static()
5808    }
5809
5810    fn new() -> OSPolicy_Resource_ExecResource {
5811        OSPolicy_Resource_ExecResource::new()
5812    }
5813
5814    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
5815        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
5816        descriptor.get(|| {
5817            let mut fields = ::std::vec::Vec::new();
5818            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_Resource_ExecResource_Exec>>(
5819                "validate",
5820                |m: &OSPolicy_Resource_ExecResource| { &m.validate },
5821                |m: &mut OSPolicy_Resource_ExecResource| { &mut m.validate },
5822            ));
5823            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_Resource_ExecResource_Exec>>(
5824                "enforce",
5825                |m: &OSPolicy_Resource_ExecResource| { &m.enforce },
5826                |m: &mut OSPolicy_Resource_ExecResource| { &mut m.enforce },
5827            ));
5828            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_ExecResource>(
5829                "OSPolicy.Resource.ExecResource",
5830                fields,
5831                file_descriptor_proto()
5832            )
5833        })
5834    }
5835
5836    fn default_instance() -> &'static OSPolicy_Resource_ExecResource {
5837        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_ExecResource> = ::protobuf::rt::LazyV2::INIT;
5838        instance.get(OSPolicy_Resource_ExecResource::new)
5839    }
5840}
5841
5842impl ::protobuf::Clear for OSPolicy_Resource_ExecResource {
5843    fn clear(&mut self) {
5844        self.validate.clear();
5845        self.enforce.clear();
5846        self.unknown_fields.clear();
5847    }
5848}
5849
5850impl ::std::fmt::Debug for OSPolicy_Resource_ExecResource {
5851    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
5852        ::protobuf::text_format::fmt(self, f)
5853    }
5854}
5855
5856impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_ExecResource {
5857    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
5858        ::protobuf::reflect::ReflectValueRef::Message(self)
5859    }
5860}
5861
5862#[derive(PartialEq,Clone,Default)]
5863pub struct OSPolicy_Resource_ExecResource_Exec {
5864    // message fields
5865    pub args: ::protobuf::RepeatedField<::std::string::String>,
5866    pub interpreter: OSPolicy_Resource_ExecResource_Exec_Interpreter,
5867    pub output_file_path: ::std::string::String,
5868    // message oneof groups
5869    pub source: ::std::option::Option<OSPolicy_Resource_ExecResource_Exec_oneof_source>,
5870    // special fields
5871    pub unknown_fields: ::protobuf::UnknownFields,
5872    pub cached_size: ::protobuf::CachedSize,
5873}
5874
5875impl<'a> ::std::default::Default for &'a OSPolicy_Resource_ExecResource_Exec {
5876    fn default() -> &'a OSPolicy_Resource_ExecResource_Exec {
5877        <OSPolicy_Resource_ExecResource_Exec as ::protobuf::Message>::default_instance()
5878    }
5879}
5880
5881#[derive(Clone,PartialEq,Debug)]
5882pub enum OSPolicy_Resource_ExecResource_Exec_oneof_source {
5883    file(OSPolicy_Resource_File),
5884    script(::std::string::String),
5885}
5886
5887impl OSPolicy_Resource_ExecResource_Exec {
5888    pub fn new() -> OSPolicy_Resource_ExecResource_Exec {
5889        ::std::default::Default::default()
5890    }
5891
5892    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.File file = 1;
5893
5894
5895    pub fn get_file(&self) -> &OSPolicy_Resource_File {
5896        match self.source {
5897            ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(ref v)) => v,
5898            _ => <OSPolicy_Resource_File as ::protobuf::Message>::default_instance(),
5899        }
5900    }
5901    pub fn clear_file(&mut self) {
5902        self.source = ::std::option::Option::None;
5903    }
5904
5905    pub fn has_file(&self) -> bool {
5906        match self.source {
5907            ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(..)) => true,
5908            _ => false,
5909        }
5910    }
5911
5912    // Param is passed by value, moved
5913    pub fn set_file(&mut self, v: OSPolicy_Resource_File) {
5914        self.source = ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(v))
5915    }
5916
5917    // Mutable pointer to the field.
5918    pub fn mut_file(&mut self) -> &mut OSPolicy_Resource_File {
5919        if let ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(_)) = self.source {
5920        } else {
5921            self.source = ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(OSPolicy_Resource_File::new()));
5922        }
5923        match self.source {
5924            ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(ref mut v)) => v,
5925            _ => panic!(),
5926        }
5927    }
5928
5929    // Take field
5930    pub fn take_file(&mut self) -> OSPolicy_Resource_File {
5931        if self.has_file() {
5932            match self.source.take() {
5933                ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(v)) => v,
5934                _ => panic!(),
5935            }
5936        } else {
5937            OSPolicy_Resource_File::new()
5938        }
5939    }
5940
5941    // string script = 2;
5942
5943
5944    pub fn get_script(&self) -> &str {
5945        match self.source {
5946            ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::script(ref v)) => v,
5947            _ => "",
5948        }
5949    }
5950    pub fn clear_script(&mut self) {
5951        self.source = ::std::option::Option::None;
5952    }
5953
5954    pub fn has_script(&self) -> bool {
5955        match self.source {
5956            ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::script(..)) => true,
5957            _ => false,
5958        }
5959    }
5960
5961    // Param is passed by value, moved
5962    pub fn set_script(&mut self, v: ::std::string::String) {
5963        self.source = ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::script(v))
5964    }
5965
5966    // Mutable pointer to the field.
5967    pub fn mut_script(&mut self) -> &mut ::std::string::String {
5968        if let ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::script(_)) = self.source {
5969        } else {
5970            self.source = ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::script(::std::string::String::new()));
5971        }
5972        match self.source {
5973            ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::script(ref mut v)) => v,
5974            _ => panic!(),
5975        }
5976    }
5977
5978    // Take field
5979    pub fn take_script(&mut self) -> ::std::string::String {
5980        if self.has_script() {
5981            match self.source.take() {
5982                ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::script(v)) => v,
5983                _ => panic!(),
5984            }
5985        } else {
5986            ::std::string::String::new()
5987        }
5988    }
5989
5990    // repeated string args = 3;
5991
5992
5993    pub fn get_args(&self) -> &[::std::string::String] {
5994        &self.args
5995    }
5996    pub fn clear_args(&mut self) {
5997        self.args.clear();
5998    }
5999
6000    // Param is passed by value, moved
6001    pub fn set_args(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
6002        self.args = v;
6003    }
6004
6005    // Mutable pointer to the field.
6006    pub fn mut_args(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
6007        &mut self.args
6008    }
6009
6010    // Take field
6011    pub fn take_args(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
6012        ::std::mem::replace(&mut self.args, ::protobuf::RepeatedField::new())
6013    }
6014
6015    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec.Interpreter interpreter = 4;
6016
6017
6018    pub fn get_interpreter(&self) -> OSPolicy_Resource_ExecResource_Exec_Interpreter {
6019        self.interpreter
6020    }
6021    pub fn clear_interpreter(&mut self) {
6022        self.interpreter = OSPolicy_Resource_ExecResource_Exec_Interpreter::INTERPRETER_UNSPECIFIED;
6023    }
6024
6025    // Param is passed by value, moved
6026    pub fn set_interpreter(&mut self, v: OSPolicy_Resource_ExecResource_Exec_Interpreter) {
6027        self.interpreter = v;
6028    }
6029
6030    // string output_file_path = 5;
6031
6032
6033    pub fn get_output_file_path(&self) -> &str {
6034        &self.output_file_path
6035    }
6036    pub fn clear_output_file_path(&mut self) {
6037        self.output_file_path.clear();
6038    }
6039
6040    // Param is passed by value, moved
6041    pub fn set_output_file_path(&mut self, v: ::std::string::String) {
6042        self.output_file_path = v;
6043    }
6044
6045    // Mutable pointer to the field.
6046    // If field is not initialized, it is initialized with default value first.
6047    pub fn mut_output_file_path(&mut self) -> &mut ::std::string::String {
6048        &mut self.output_file_path
6049    }
6050
6051    // Take field
6052    pub fn take_output_file_path(&mut self) -> ::std::string::String {
6053        ::std::mem::replace(&mut self.output_file_path, ::std::string::String::new())
6054    }
6055}
6056
6057impl ::protobuf::Message for OSPolicy_Resource_ExecResource_Exec {
6058    fn is_initialized(&self) -> bool {
6059        if let Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(ref v)) = self.source {
6060            if !v.is_initialized() {
6061                return false;
6062            }
6063        }
6064        true
6065    }
6066
6067    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
6068        while !is.eof()? {
6069            let (field_number, wire_type) = is.read_tag_unpack()?;
6070            match field_number {
6071                1 => {
6072                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
6073                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6074                    }
6075                    self.source = ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::file(is.read_message()?));
6076                },
6077                2 => {
6078                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
6079                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6080                    }
6081                    self.source = ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_oneof_source::script(is.read_string()?));
6082                },
6083                3 => {
6084                    ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.args)?;
6085                },
6086                4 => {
6087                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.interpreter, 4, &mut self.unknown_fields)?
6088                },
6089                5 => {
6090                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.output_file_path)?;
6091                },
6092                _ => {
6093                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
6094                },
6095            };
6096        }
6097        ::std::result::Result::Ok(())
6098    }
6099
6100    // Compute sizes of nested messages
6101    #[allow(unused_variables)]
6102    fn compute_size(&self) -> u32 {
6103        let mut my_size = 0;
6104        for value in &self.args {
6105            my_size += ::protobuf::rt::string_size(3, &value);
6106        };
6107        if self.interpreter != OSPolicy_Resource_ExecResource_Exec_Interpreter::INTERPRETER_UNSPECIFIED {
6108            my_size += ::protobuf::rt::enum_size(4, self.interpreter);
6109        }
6110        if !self.output_file_path.is_empty() {
6111            my_size += ::protobuf::rt::string_size(5, &self.output_file_path);
6112        }
6113        if let ::std::option::Option::Some(ref v) = self.source {
6114            match v {
6115                &OSPolicy_Resource_ExecResource_Exec_oneof_source::file(ref v) => {
6116                    let len = v.compute_size();
6117                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6118                },
6119                &OSPolicy_Resource_ExecResource_Exec_oneof_source::script(ref v) => {
6120                    my_size += ::protobuf::rt::string_size(2, &v);
6121                },
6122            };
6123        }
6124        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
6125        self.cached_size.set(my_size);
6126        my_size
6127    }
6128
6129    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
6130        for v in &self.args {
6131            os.write_string(3, &v)?;
6132        };
6133        if self.interpreter != OSPolicy_Resource_ExecResource_Exec_Interpreter::INTERPRETER_UNSPECIFIED {
6134            os.write_enum(4, ::protobuf::ProtobufEnum::value(&self.interpreter))?;
6135        }
6136        if !self.output_file_path.is_empty() {
6137            os.write_string(5, &self.output_file_path)?;
6138        }
6139        if let ::std::option::Option::Some(ref v) = self.source {
6140            match v {
6141                &OSPolicy_Resource_ExecResource_Exec_oneof_source::file(ref v) => {
6142                    os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6143                    os.write_raw_varint32(v.get_cached_size())?;
6144                    v.write_to_with_cached_sizes(os)?;
6145                },
6146                &OSPolicy_Resource_ExecResource_Exec_oneof_source::script(ref v) => {
6147                    os.write_string(2, v)?;
6148                },
6149            };
6150        }
6151        os.write_unknown_fields(self.get_unknown_fields())?;
6152        ::std::result::Result::Ok(())
6153    }
6154
6155    fn get_cached_size(&self) -> u32 {
6156        self.cached_size.get()
6157    }
6158
6159    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
6160        &self.unknown_fields
6161    }
6162
6163    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
6164        &mut self.unknown_fields
6165    }
6166
6167    fn as_any(&self) -> &dyn (::std::any::Any) {
6168        self as &dyn (::std::any::Any)
6169    }
6170    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
6171        self as &mut dyn (::std::any::Any)
6172    }
6173    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
6174        self
6175    }
6176
6177    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
6178        Self::descriptor_static()
6179    }
6180
6181    fn new() -> OSPolicy_Resource_ExecResource_Exec {
6182        OSPolicy_Resource_ExecResource_Exec::new()
6183    }
6184
6185    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
6186        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
6187        descriptor.get(|| {
6188            let mut fields = ::std::vec::Vec::new();
6189            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_File>(
6190                "file",
6191                OSPolicy_Resource_ExecResource_Exec::has_file,
6192                OSPolicy_Resource_ExecResource_Exec::get_file,
6193            ));
6194            fields.push(::protobuf::reflect::accessor::make_singular_string_accessor::<_>(
6195                "script",
6196                OSPolicy_Resource_ExecResource_Exec::has_script,
6197                OSPolicy_Resource_ExecResource_Exec::get_script,
6198            ));
6199            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
6200                "args",
6201                |m: &OSPolicy_Resource_ExecResource_Exec| { &m.args },
6202                |m: &mut OSPolicy_Resource_ExecResource_Exec| { &mut m.args },
6203            ));
6204            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<OSPolicy_Resource_ExecResource_Exec_Interpreter>>(
6205                "interpreter",
6206                |m: &OSPolicy_Resource_ExecResource_Exec| { &m.interpreter },
6207                |m: &mut OSPolicy_Resource_ExecResource_Exec| { &mut m.interpreter },
6208            ));
6209            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
6210                "output_file_path",
6211                |m: &OSPolicy_Resource_ExecResource_Exec| { &m.output_file_path },
6212                |m: &mut OSPolicy_Resource_ExecResource_Exec| { &mut m.output_file_path },
6213            ));
6214            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_ExecResource_Exec>(
6215                "OSPolicy.Resource.ExecResource.Exec",
6216                fields,
6217                file_descriptor_proto()
6218            )
6219        })
6220    }
6221
6222    fn default_instance() -> &'static OSPolicy_Resource_ExecResource_Exec {
6223        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_ExecResource_Exec> = ::protobuf::rt::LazyV2::INIT;
6224        instance.get(OSPolicy_Resource_ExecResource_Exec::new)
6225    }
6226}
6227
6228impl ::protobuf::Clear for OSPolicy_Resource_ExecResource_Exec {
6229    fn clear(&mut self) {
6230        self.source = ::std::option::Option::None;
6231        self.source = ::std::option::Option::None;
6232        self.args.clear();
6233        self.interpreter = OSPolicy_Resource_ExecResource_Exec_Interpreter::INTERPRETER_UNSPECIFIED;
6234        self.output_file_path.clear();
6235        self.unknown_fields.clear();
6236    }
6237}
6238
6239impl ::std::fmt::Debug for OSPolicy_Resource_ExecResource_Exec {
6240    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6241        ::protobuf::text_format::fmt(self, f)
6242    }
6243}
6244
6245impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_ExecResource_Exec {
6246    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
6247        ::protobuf::reflect::ReflectValueRef::Message(self)
6248    }
6249}
6250
6251#[derive(Clone,PartialEq,Eq,Debug,Hash)]
6252pub enum OSPolicy_Resource_ExecResource_Exec_Interpreter {
6253    INTERPRETER_UNSPECIFIED = 0,
6254    NONE = 1,
6255    SHELL = 2,
6256    POWERSHELL = 3,
6257}
6258
6259impl ::protobuf::ProtobufEnum for OSPolicy_Resource_ExecResource_Exec_Interpreter {
6260    fn value(&self) -> i32 {
6261        *self as i32
6262    }
6263
6264    fn from_i32(value: i32) -> ::std::option::Option<OSPolicy_Resource_ExecResource_Exec_Interpreter> {
6265        match value {
6266            0 => ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_Interpreter::INTERPRETER_UNSPECIFIED),
6267            1 => ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_Interpreter::NONE),
6268            2 => ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_Interpreter::SHELL),
6269            3 => ::std::option::Option::Some(OSPolicy_Resource_ExecResource_Exec_Interpreter::POWERSHELL),
6270            _ => ::std::option::Option::None
6271        }
6272    }
6273
6274    fn values() -> &'static [Self] {
6275        static values: &'static [OSPolicy_Resource_ExecResource_Exec_Interpreter] = &[
6276            OSPolicy_Resource_ExecResource_Exec_Interpreter::INTERPRETER_UNSPECIFIED,
6277            OSPolicy_Resource_ExecResource_Exec_Interpreter::NONE,
6278            OSPolicy_Resource_ExecResource_Exec_Interpreter::SHELL,
6279            OSPolicy_Resource_ExecResource_Exec_Interpreter::POWERSHELL,
6280        ];
6281        values
6282    }
6283
6284    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
6285        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
6286        descriptor.get(|| {
6287            ::protobuf::reflect::EnumDescriptor::new_pb_name::<OSPolicy_Resource_ExecResource_Exec_Interpreter>("OSPolicy.Resource.ExecResource.Exec.Interpreter", file_descriptor_proto())
6288        })
6289    }
6290}
6291
6292impl ::std::marker::Copy for OSPolicy_Resource_ExecResource_Exec_Interpreter {
6293}
6294
6295impl ::std::default::Default for OSPolicy_Resource_ExecResource_Exec_Interpreter {
6296    fn default() -> Self {
6297        OSPolicy_Resource_ExecResource_Exec_Interpreter::INTERPRETER_UNSPECIFIED
6298    }
6299}
6300
6301impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_ExecResource_Exec_Interpreter {
6302    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
6303        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
6304    }
6305}
6306
6307#[derive(PartialEq,Clone,Default)]
6308pub struct OSPolicy_Resource_FileResource {
6309    // message fields
6310    pub path: ::std::string::String,
6311    pub state: OSPolicy_Resource_FileResource_DesiredState,
6312    pub permissions: ::std::string::String,
6313    // message oneof groups
6314    pub source: ::std::option::Option<OSPolicy_Resource_FileResource_oneof_source>,
6315    // special fields
6316    pub unknown_fields: ::protobuf::UnknownFields,
6317    pub cached_size: ::protobuf::CachedSize,
6318}
6319
6320impl<'a> ::std::default::Default for &'a OSPolicy_Resource_FileResource {
6321    fn default() -> &'a OSPolicy_Resource_FileResource {
6322        <OSPolicy_Resource_FileResource as ::protobuf::Message>::default_instance()
6323    }
6324}
6325
6326#[derive(Clone,PartialEq,Debug)]
6327pub enum OSPolicy_Resource_FileResource_oneof_source {
6328    file(OSPolicy_Resource_File),
6329    content(::std::string::String),
6330}
6331
6332impl OSPolicy_Resource_FileResource {
6333    pub fn new() -> OSPolicy_Resource_FileResource {
6334        ::std::default::Default::default()
6335    }
6336
6337    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.File file = 1;
6338
6339
6340    pub fn get_file(&self) -> &OSPolicy_Resource_File {
6341        match self.source {
6342            ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::file(ref v)) => v,
6343            _ => <OSPolicy_Resource_File as ::protobuf::Message>::default_instance(),
6344        }
6345    }
6346    pub fn clear_file(&mut self) {
6347        self.source = ::std::option::Option::None;
6348    }
6349
6350    pub fn has_file(&self) -> bool {
6351        match self.source {
6352            ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::file(..)) => true,
6353            _ => false,
6354        }
6355    }
6356
6357    // Param is passed by value, moved
6358    pub fn set_file(&mut self, v: OSPolicy_Resource_File) {
6359        self.source = ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::file(v))
6360    }
6361
6362    // Mutable pointer to the field.
6363    pub fn mut_file(&mut self) -> &mut OSPolicy_Resource_File {
6364        if let ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::file(_)) = self.source {
6365        } else {
6366            self.source = ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::file(OSPolicy_Resource_File::new()));
6367        }
6368        match self.source {
6369            ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::file(ref mut v)) => v,
6370            _ => panic!(),
6371        }
6372    }
6373
6374    // Take field
6375    pub fn take_file(&mut self) -> OSPolicy_Resource_File {
6376        if self.has_file() {
6377            match self.source.take() {
6378                ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::file(v)) => v,
6379                _ => panic!(),
6380            }
6381        } else {
6382            OSPolicy_Resource_File::new()
6383        }
6384    }
6385
6386    // string content = 2;
6387
6388
6389    pub fn get_content(&self) -> &str {
6390        match self.source {
6391            ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::content(ref v)) => v,
6392            _ => "",
6393        }
6394    }
6395    pub fn clear_content(&mut self) {
6396        self.source = ::std::option::Option::None;
6397    }
6398
6399    pub fn has_content(&self) -> bool {
6400        match self.source {
6401            ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::content(..)) => true,
6402            _ => false,
6403        }
6404    }
6405
6406    // Param is passed by value, moved
6407    pub fn set_content(&mut self, v: ::std::string::String) {
6408        self.source = ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::content(v))
6409    }
6410
6411    // Mutable pointer to the field.
6412    pub fn mut_content(&mut self) -> &mut ::std::string::String {
6413        if let ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::content(_)) = self.source {
6414        } else {
6415            self.source = ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::content(::std::string::String::new()));
6416        }
6417        match self.source {
6418            ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::content(ref mut v)) => v,
6419            _ => panic!(),
6420        }
6421    }
6422
6423    // Take field
6424    pub fn take_content(&mut self) -> ::std::string::String {
6425        if self.has_content() {
6426            match self.source.take() {
6427                ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::content(v)) => v,
6428                _ => panic!(),
6429            }
6430        } else {
6431            ::std::string::String::new()
6432        }
6433    }
6434
6435    // string path = 3;
6436
6437
6438    pub fn get_path(&self) -> &str {
6439        &self.path
6440    }
6441    pub fn clear_path(&mut self) {
6442        self.path.clear();
6443    }
6444
6445    // Param is passed by value, moved
6446    pub fn set_path(&mut self, v: ::std::string::String) {
6447        self.path = v;
6448    }
6449
6450    // Mutable pointer to the field.
6451    // If field is not initialized, it is initialized with default value first.
6452    pub fn mut_path(&mut self) -> &mut ::std::string::String {
6453        &mut self.path
6454    }
6455
6456    // Take field
6457    pub fn take_path(&mut self) -> ::std::string::String {
6458        ::std::mem::replace(&mut self.path, ::std::string::String::new())
6459    }
6460
6461    // .google.cloud.osconfig.v1alpha.OSPolicy.Resource.FileResource.DesiredState state = 4;
6462
6463
6464    pub fn get_state(&self) -> OSPolicy_Resource_FileResource_DesiredState {
6465        self.state
6466    }
6467    pub fn clear_state(&mut self) {
6468        self.state = OSPolicy_Resource_FileResource_DesiredState::DESIRED_STATE_UNSPECIFIED;
6469    }
6470
6471    // Param is passed by value, moved
6472    pub fn set_state(&mut self, v: OSPolicy_Resource_FileResource_DesiredState) {
6473        self.state = v;
6474    }
6475
6476    // string permissions = 5;
6477
6478
6479    pub fn get_permissions(&self) -> &str {
6480        &self.permissions
6481    }
6482    pub fn clear_permissions(&mut self) {
6483        self.permissions.clear();
6484    }
6485
6486    // Param is passed by value, moved
6487    pub fn set_permissions(&mut self, v: ::std::string::String) {
6488        self.permissions = v;
6489    }
6490
6491    // Mutable pointer to the field.
6492    // If field is not initialized, it is initialized with default value first.
6493    pub fn mut_permissions(&mut self) -> &mut ::std::string::String {
6494        &mut self.permissions
6495    }
6496
6497    // Take field
6498    pub fn take_permissions(&mut self) -> ::std::string::String {
6499        ::std::mem::replace(&mut self.permissions, ::std::string::String::new())
6500    }
6501}
6502
6503impl ::protobuf::Message for OSPolicy_Resource_FileResource {
6504    fn is_initialized(&self) -> bool {
6505        if let Some(OSPolicy_Resource_FileResource_oneof_source::file(ref v)) = self.source {
6506            if !v.is_initialized() {
6507                return false;
6508            }
6509        }
6510        true
6511    }
6512
6513    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
6514        while !is.eof()? {
6515            let (field_number, wire_type) = is.read_tag_unpack()?;
6516            match field_number {
6517                1 => {
6518                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
6519                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6520                    }
6521                    self.source = ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::file(is.read_message()?));
6522                },
6523                2 => {
6524                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
6525                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
6526                    }
6527                    self.source = ::std::option::Option::Some(OSPolicy_Resource_FileResource_oneof_source::content(is.read_string()?));
6528                },
6529                3 => {
6530                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.path)?;
6531                },
6532                4 => {
6533                    ::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.state, 4, &mut self.unknown_fields)?
6534                },
6535                5 => {
6536                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.permissions)?;
6537                },
6538                _ => {
6539                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
6540                },
6541            };
6542        }
6543        ::std::result::Result::Ok(())
6544    }
6545
6546    // Compute sizes of nested messages
6547    #[allow(unused_variables)]
6548    fn compute_size(&self) -> u32 {
6549        let mut my_size = 0;
6550        if !self.path.is_empty() {
6551            my_size += ::protobuf::rt::string_size(3, &self.path);
6552        }
6553        if self.state != OSPolicy_Resource_FileResource_DesiredState::DESIRED_STATE_UNSPECIFIED {
6554            my_size += ::protobuf::rt::enum_size(4, self.state);
6555        }
6556        if !self.permissions.is_empty() {
6557            my_size += ::protobuf::rt::string_size(5, &self.permissions);
6558        }
6559        if let ::std::option::Option::Some(ref v) = self.source {
6560            match v {
6561                &OSPolicy_Resource_FileResource_oneof_source::file(ref v) => {
6562                    let len = v.compute_size();
6563                    my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6564                },
6565                &OSPolicy_Resource_FileResource_oneof_source::content(ref v) => {
6566                    my_size += ::protobuf::rt::string_size(2, &v);
6567                },
6568            };
6569        }
6570        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
6571        self.cached_size.set(my_size);
6572        my_size
6573    }
6574
6575    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
6576        if !self.path.is_empty() {
6577            os.write_string(3, &self.path)?;
6578        }
6579        if self.state != OSPolicy_Resource_FileResource_DesiredState::DESIRED_STATE_UNSPECIFIED {
6580            os.write_enum(4, ::protobuf::ProtobufEnum::value(&self.state))?;
6581        }
6582        if !self.permissions.is_empty() {
6583            os.write_string(5, &self.permissions)?;
6584        }
6585        if let ::std::option::Option::Some(ref v) = self.source {
6586            match v {
6587                &OSPolicy_Resource_FileResource_oneof_source::file(ref v) => {
6588                    os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6589                    os.write_raw_varint32(v.get_cached_size())?;
6590                    v.write_to_with_cached_sizes(os)?;
6591                },
6592                &OSPolicy_Resource_FileResource_oneof_source::content(ref v) => {
6593                    os.write_string(2, v)?;
6594                },
6595            };
6596        }
6597        os.write_unknown_fields(self.get_unknown_fields())?;
6598        ::std::result::Result::Ok(())
6599    }
6600
6601    fn get_cached_size(&self) -> u32 {
6602        self.cached_size.get()
6603    }
6604
6605    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
6606        &self.unknown_fields
6607    }
6608
6609    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
6610        &mut self.unknown_fields
6611    }
6612
6613    fn as_any(&self) -> &dyn (::std::any::Any) {
6614        self as &dyn (::std::any::Any)
6615    }
6616    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
6617        self as &mut dyn (::std::any::Any)
6618    }
6619    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
6620        self
6621    }
6622
6623    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
6624        Self::descriptor_static()
6625    }
6626
6627    fn new() -> OSPolicy_Resource_FileResource {
6628        OSPolicy_Resource_FileResource::new()
6629    }
6630
6631    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
6632        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
6633        descriptor.get(|| {
6634            let mut fields = ::std::vec::Vec::new();
6635            fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, OSPolicy_Resource_File>(
6636                "file",
6637                OSPolicy_Resource_FileResource::has_file,
6638                OSPolicy_Resource_FileResource::get_file,
6639            ));
6640            fields.push(::protobuf::reflect::accessor::make_singular_string_accessor::<_>(
6641                "content",
6642                OSPolicy_Resource_FileResource::has_content,
6643                OSPolicy_Resource_FileResource::get_content,
6644            ));
6645            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
6646                "path",
6647                |m: &OSPolicy_Resource_FileResource| { &m.path },
6648                |m: &mut OSPolicy_Resource_FileResource| { &mut m.path },
6649            ));
6650            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<OSPolicy_Resource_FileResource_DesiredState>>(
6651                "state",
6652                |m: &OSPolicy_Resource_FileResource| { &m.state },
6653                |m: &mut OSPolicy_Resource_FileResource| { &mut m.state },
6654            ));
6655            fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
6656                "permissions",
6657                |m: &OSPolicy_Resource_FileResource| { &m.permissions },
6658                |m: &mut OSPolicy_Resource_FileResource| { &mut m.permissions },
6659            ));
6660            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_Resource_FileResource>(
6661                "OSPolicy.Resource.FileResource",
6662                fields,
6663                file_descriptor_proto()
6664            )
6665        })
6666    }
6667
6668    fn default_instance() -> &'static OSPolicy_Resource_FileResource {
6669        static instance: ::protobuf::rt::LazyV2<OSPolicy_Resource_FileResource> = ::protobuf::rt::LazyV2::INIT;
6670        instance.get(OSPolicy_Resource_FileResource::new)
6671    }
6672}
6673
6674impl ::protobuf::Clear for OSPolicy_Resource_FileResource {
6675    fn clear(&mut self) {
6676        self.source = ::std::option::Option::None;
6677        self.source = ::std::option::Option::None;
6678        self.path.clear();
6679        self.state = OSPolicy_Resource_FileResource_DesiredState::DESIRED_STATE_UNSPECIFIED;
6680        self.permissions.clear();
6681        self.unknown_fields.clear();
6682    }
6683}
6684
6685impl ::std::fmt::Debug for OSPolicy_Resource_FileResource {
6686    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
6687        ::protobuf::text_format::fmt(self, f)
6688    }
6689}
6690
6691impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_FileResource {
6692    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
6693        ::protobuf::reflect::ReflectValueRef::Message(self)
6694    }
6695}
6696
6697#[derive(Clone,PartialEq,Eq,Debug,Hash)]
6698pub enum OSPolicy_Resource_FileResource_DesiredState {
6699    DESIRED_STATE_UNSPECIFIED = 0,
6700    PRESENT = 1,
6701    ABSENT = 2,
6702    CONTENTS_MATCH = 3,
6703}
6704
6705impl ::protobuf::ProtobufEnum for OSPolicy_Resource_FileResource_DesiredState {
6706    fn value(&self) -> i32 {
6707        *self as i32
6708    }
6709
6710    fn from_i32(value: i32) -> ::std::option::Option<OSPolicy_Resource_FileResource_DesiredState> {
6711        match value {
6712            0 => ::std::option::Option::Some(OSPolicy_Resource_FileResource_DesiredState::DESIRED_STATE_UNSPECIFIED),
6713            1 => ::std::option::Option::Some(OSPolicy_Resource_FileResource_DesiredState::PRESENT),
6714            2 => ::std::option::Option::Some(OSPolicy_Resource_FileResource_DesiredState::ABSENT),
6715            3 => ::std::option::Option::Some(OSPolicy_Resource_FileResource_DesiredState::CONTENTS_MATCH),
6716            _ => ::std::option::Option::None
6717        }
6718    }
6719
6720    fn values() -> &'static [Self] {
6721        static values: &'static [OSPolicy_Resource_FileResource_DesiredState] = &[
6722            OSPolicy_Resource_FileResource_DesiredState::DESIRED_STATE_UNSPECIFIED,
6723            OSPolicy_Resource_FileResource_DesiredState::PRESENT,
6724            OSPolicy_Resource_FileResource_DesiredState::ABSENT,
6725            OSPolicy_Resource_FileResource_DesiredState::CONTENTS_MATCH,
6726        ];
6727        values
6728    }
6729
6730    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
6731        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
6732        descriptor.get(|| {
6733            ::protobuf::reflect::EnumDescriptor::new_pb_name::<OSPolicy_Resource_FileResource_DesiredState>("OSPolicy.Resource.FileResource.DesiredState", file_descriptor_proto())
6734        })
6735    }
6736}
6737
6738impl ::std::marker::Copy for OSPolicy_Resource_FileResource_DesiredState {
6739}
6740
6741impl ::std::default::Default for OSPolicy_Resource_FileResource_DesiredState {
6742    fn default() -> Self {
6743        OSPolicy_Resource_FileResource_DesiredState::DESIRED_STATE_UNSPECIFIED
6744    }
6745}
6746
6747impl ::protobuf::reflect::ProtobufValue for OSPolicy_Resource_FileResource_DesiredState {
6748    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
6749        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
6750    }
6751}
6752
6753#[derive(PartialEq,Clone,Default)]
6754pub struct OSPolicy_ResourceGroup {
6755    // message fields
6756    pub os_filter: ::protobuf::SingularPtrField<OSPolicy_OSFilter>,
6757    pub inventory_filters: ::protobuf::RepeatedField<OSPolicy_InventoryFilter>,
6758    pub resources: ::protobuf::RepeatedField<OSPolicy_Resource>,
6759    // special fields
6760    pub unknown_fields: ::protobuf::UnknownFields,
6761    pub cached_size: ::protobuf::CachedSize,
6762}
6763
6764impl<'a> ::std::default::Default for &'a OSPolicy_ResourceGroup {
6765    fn default() -> &'a OSPolicy_ResourceGroup {
6766        <OSPolicy_ResourceGroup as ::protobuf::Message>::default_instance()
6767    }
6768}
6769
6770impl OSPolicy_ResourceGroup {
6771    pub fn new() -> OSPolicy_ResourceGroup {
6772        ::std::default::Default::default()
6773    }
6774
6775    // .google.cloud.osconfig.v1alpha.OSPolicy.OSFilter os_filter = 1;
6776
6777
6778    pub fn get_os_filter(&self) -> &OSPolicy_OSFilter {
6779        self.os_filter.as_ref().unwrap_or_else(|| <OSPolicy_OSFilter as ::protobuf::Message>::default_instance())
6780    }
6781    pub fn clear_os_filter(&mut self) {
6782        self.os_filter.clear();
6783    }
6784
6785    pub fn has_os_filter(&self) -> bool {
6786        self.os_filter.is_some()
6787    }
6788
6789    // Param is passed by value, moved
6790    pub fn set_os_filter(&mut self, v: OSPolicy_OSFilter) {
6791        self.os_filter = ::protobuf::SingularPtrField::some(v);
6792    }
6793
6794    // Mutable pointer to the field.
6795    // If field is not initialized, it is initialized with default value first.
6796    pub fn mut_os_filter(&mut self) -> &mut OSPolicy_OSFilter {
6797        if self.os_filter.is_none() {
6798            self.os_filter.set_default();
6799        }
6800        self.os_filter.as_mut().unwrap()
6801    }
6802
6803    // Take field
6804    pub fn take_os_filter(&mut self) -> OSPolicy_OSFilter {
6805        self.os_filter.take().unwrap_or_else(|| OSPolicy_OSFilter::new())
6806    }
6807
6808    // repeated .google.cloud.osconfig.v1alpha.OSPolicy.InventoryFilter inventory_filters = 3;
6809
6810
6811    pub fn get_inventory_filters(&self) -> &[OSPolicy_InventoryFilter] {
6812        &self.inventory_filters
6813    }
6814    pub fn clear_inventory_filters(&mut self) {
6815        self.inventory_filters.clear();
6816    }
6817
6818    // Param is passed by value, moved
6819    pub fn set_inventory_filters(&mut self, v: ::protobuf::RepeatedField<OSPolicy_InventoryFilter>) {
6820        self.inventory_filters = v;
6821    }
6822
6823    // Mutable pointer to the field.
6824    pub fn mut_inventory_filters(&mut self) -> &mut ::protobuf::RepeatedField<OSPolicy_InventoryFilter> {
6825        &mut self.inventory_filters
6826    }
6827
6828    // Take field
6829    pub fn take_inventory_filters(&mut self) -> ::protobuf::RepeatedField<OSPolicy_InventoryFilter> {
6830        ::std::mem::replace(&mut self.inventory_filters, ::protobuf::RepeatedField::new())
6831    }
6832
6833    // repeated .google.cloud.osconfig.v1alpha.OSPolicy.Resource resources = 2;
6834
6835
6836    pub fn get_resources(&self) -> &[OSPolicy_Resource] {
6837        &self.resources
6838    }
6839    pub fn clear_resources(&mut self) {
6840        self.resources.clear();
6841    }
6842
6843    // Param is passed by value, moved
6844    pub fn set_resources(&mut self, v: ::protobuf::RepeatedField<OSPolicy_Resource>) {
6845        self.resources = v;
6846    }
6847
6848    // Mutable pointer to the field.
6849    pub fn mut_resources(&mut self) -> &mut ::protobuf::RepeatedField<OSPolicy_Resource> {
6850        &mut self.resources
6851    }
6852
6853    // Take field
6854    pub fn take_resources(&mut self) -> ::protobuf::RepeatedField<OSPolicy_Resource> {
6855        ::std::mem::replace(&mut self.resources, ::protobuf::RepeatedField::new())
6856    }
6857}
6858
6859impl ::protobuf::Message for OSPolicy_ResourceGroup {
6860    fn is_initialized(&self) -> bool {
6861        for v in &self.os_filter {
6862            if !v.is_initialized() {
6863                return false;
6864            }
6865        };
6866        for v in &self.inventory_filters {
6867            if !v.is_initialized() {
6868                return false;
6869            }
6870        };
6871        for v in &self.resources {
6872            if !v.is_initialized() {
6873                return false;
6874            }
6875        };
6876        true
6877    }
6878
6879    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
6880        while !is.eof()? {
6881            let (field_number, wire_type) = is.read_tag_unpack()?;
6882            match field_number {
6883                1 => {
6884                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.os_filter)?;
6885                },
6886                3 => {
6887                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.inventory_filters)?;
6888                },
6889                2 => {
6890                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.resources)?;
6891                },
6892                _ => {
6893                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
6894                },
6895            };
6896        }
6897        ::std::result::Result::Ok(())
6898    }
6899
6900    // Compute sizes of nested messages
6901    #[allow(unused_variables)]
6902    fn compute_size(&self) -> u32 {
6903        let mut my_size = 0;
6904        if let Some(ref v) = self.os_filter.as_ref() {
6905            let len = v.compute_size();
6906            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6907        }
6908        for value in &self.inventory_filters {
6909            let len = value.compute_size();
6910            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6911        };
6912        for value in &self.resources {
6913            let len = value.compute_size();
6914            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
6915        };
6916        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
6917        self.cached_size.set(my_size);
6918        my_size
6919    }
6920
6921    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
6922        if let Some(ref v) = self.os_filter.as_ref() {
6923            os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6924            os.write_raw_varint32(v.get_cached_size())?;
6925            v.write_to_with_cached_sizes(os)?;
6926        }
6927        for v in &self.inventory_filters {
6928            os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6929            os.write_raw_varint32(v.get_cached_size())?;
6930            v.write_to_with_cached_sizes(os)?;
6931        };
6932        for v in &self.resources {
6933            os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
6934            os.write_raw_varint32(v.get_cached_size())?;
6935            v.write_to_with_cached_sizes(os)?;
6936        };
6937        os.write_unknown_fields(self.get_unknown_fields())?;
6938        ::std::result::Result::Ok(())
6939    }
6940
6941    fn get_cached_size(&self) -> u32 {
6942        self.cached_size.get()
6943    }
6944
6945    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
6946        &self.unknown_fields
6947    }
6948
6949    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
6950        &mut self.unknown_fields
6951    }
6952
6953    fn as_any(&self) -> &dyn (::std::any::Any) {
6954        self as &dyn (::std::any::Any)
6955    }
6956    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
6957        self as &mut dyn (::std::any::Any)
6958    }
6959    fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
6960        self
6961    }
6962
6963    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
6964        Self::descriptor_static()
6965    }
6966
6967    fn new() -> OSPolicy_ResourceGroup {
6968        OSPolicy_ResourceGroup::new()
6969    }
6970
6971    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
6972        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
6973        descriptor.get(|| {
6974            let mut fields = ::std::vec::Vec::new();
6975            fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_OSFilter>>(
6976                "os_filter",
6977                |m: &OSPolicy_ResourceGroup| { &m.os_filter },
6978                |m: &mut OSPolicy_ResourceGroup| { &mut m.os_filter },
6979            ));
6980            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_InventoryFilter>>(
6981                "inventory_filters",
6982                |m: &OSPolicy_ResourceGroup| { &m.inventory_filters },
6983                |m: &mut OSPolicy_ResourceGroup| { &mut m.inventory_filters },
6984            ));
6985            fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<OSPolicy_Resource>>(
6986                "resources",
6987                |m: &OSPolicy_ResourceGroup| { &m.resources },
6988                |m: &mut OSPolicy_ResourceGroup| { &mut m.resources },
6989            ));
6990            ::protobuf::reflect::MessageDescriptor::new_pb_name::<OSPolicy_ResourceGroup>(
6991                "OSPolicy.ResourceGroup",
6992                fields,
6993                file_descriptor_proto()
6994            )
6995        })
6996    }
6997
6998    fn default_instance() -> &'static OSPolicy_ResourceGroup {
6999        static instance: ::protobuf::rt::LazyV2<OSPolicy_ResourceGroup> = ::protobuf::rt::LazyV2::INIT;
7000        instance.get(OSPolicy_ResourceGroup::new)
7001    }
7002}
7003
7004impl ::protobuf::Clear for OSPolicy_ResourceGroup {
7005    fn clear(&mut self) {
7006        self.os_filter.clear();
7007        self.inventory_filters.clear();
7008        self.resources.clear();
7009        self.unknown_fields.clear();
7010    }
7011}
7012
7013impl ::std::fmt::Debug for OSPolicy_ResourceGroup {
7014    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7015        ::protobuf::text_format::fmt(self, f)
7016    }
7017}
7018
7019impl ::protobuf::reflect::ProtobufValue for OSPolicy_ResourceGroup {
7020    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
7021        ::protobuf::reflect::ReflectValueRef::Message(self)
7022    }
7023}
7024
7025#[derive(Clone,PartialEq,Eq,Debug,Hash)]
7026pub enum OSPolicy_Mode {
7027    MODE_UNSPECIFIED = 0,
7028    VALIDATION = 1,
7029    ENFORCEMENT = 2,
7030}
7031
7032impl ::protobuf::ProtobufEnum for OSPolicy_Mode {
7033    fn value(&self) -> i32 {
7034        *self as i32
7035    }
7036
7037    fn from_i32(value: i32) -> ::std::option::Option<OSPolicy_Mode> {
7038        match value {
7039            0 => ::std::option::Option::Some(OSPolicy_Mode::MODE_UNSPECIFIED),
7040            1 => ::std::option::Option::Some(OSPolicy_Mode::VALIDATION),
7041            2 => ::std::option::Option::Some(OSPolicy_Mode::ENFORCEMENT),
7042            _ => ::std::option::Option::None
7043        }
7044    }
7045
7046    fn values() -> &'static [Self] {
7047        static values: &'static [OSPolicy_Mode] = &[
7048            OSPolicy_Mode::MODE_UNSPECIFIED,
7049            OSPolicy_Mode::VALIDATION,
7050            OSPolicy_Mode::ENFORCEMENT,
7051        ];
7052        values
7053    }
7054
7055    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
7056        static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
7057        descriptor.get(|| {
7058            ::protobuf::reflect::EnumDescriptor::new_pb_name::<OSPolicy_Mode>("OSPolicy.Mode", file_descriptor_proto())
7059        })
7060    }
7061}
7062
7063impl ::std::marker::Copy for OSPolicy_Mode {
7064}
7065
7066impl ::std::default::Default for OSPolicy_Mode {
7067    fn default() -> Self {
7068        OSPolicy_Mode::MODE_UNSPECIFIED
7069    }
7070}
7071
7072impl ::protobuf::reflect::ProtobufValue for OSPolicy_Mode {
7073    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
7074        ::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
7075    }
7076}
7077
7078static file_descriptor_proto_data: &'static [u8] = b"\
7079    \n-google/cloud/osconfig/v1alpha/os_policy.proto\x12\x1dgoogle.cloud.osc\
7080    onfig.v1alpha\x1a\x1fgoogle/api/field_behavior.proto\"\xa9(\n\x08OSPolic\
7081    y\x12\x13\n\x02id\x18\x01\x20\x01(\tR\x02idB\x03\xe0A\x02\x12\x20\n\x0bd\
7082    escription\x18\x02\x20\x01(\tR\x0bdescription\x12E\n\x04mode\x18\x03\x20\
7083    \x01(\x0e2,.google.cloud.osconfig.v1alpha.OSPolicy.ModeR\x04modeB\x03\
7084    \xe0A\x02\x12c\n\x0fresource_groups\x18\x04\x20\x03(\x0b25.google.cloud.\
7085    osconfig.v1alpha.OSPolicy.ResourceGroupR\x0eresourceGroupsB\x03\xe0A\x02\
7086    \x12@\n\x1dallow_no_resource_group_match\x18\x05\x20\x01(\x08R\x19allowN\
7087    oResourceGroupMatch\x1aM\n\x08OSFilter\x12\"\n\ros_short_name\x18\x01\
7088    \x20\x01(\tR\x0bosShortName\x12\x1d\n\nos_version\x18\x02\x20\x01(\tR\to\
7089    sVersion\x1aY\n\x0fInventoryFilter\x12'\n\ros_short_name\x18\x01\x20\x01\
7090    (\tR\x0bosShortNameB\x03\xe0A\x02\x12\x1d\n\nos_version\x18\x02\x20\x01(\
7091    \tR\tosVersion\x1a\xee!\n\x08Resource\x12\x13\n\x02id\x18\x01\x20\x01(\t\
7092    R\x02idB\x03\xe0A\x02\x12T\n\x03pkg\x18\x02\x20\x01(\x0b2@.google.cloud.\
7093    osconfig.v1alpha.OSPolicy.Resource.PackageResourceH\0R\x03pkg\x12e\n\nre\
7094    pository\x18\x03\x20\x01(\x0b2C.google.cloud.osconfig.v1alpha.OSPolicy.R\
7095    esource.RepositoryResourceH\0R\nrepository\x12S\n\x04exec\x18\x04\x20\
7096    \x01(\x0b2=.google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource\
7097    H\0R\x04exec\x12S\n\x04file\x18\x05\x20\x01(\x0b2=.google.cloud.osconfig\
7098    .v1alpha.OSPolicy.Resource.FileResourceH\0R\x04file\x1a\xa8\x03\n\x04Fil\
7099    e\x12V\n\x06remote\x18\x01\x20\x01(\x0b2<.google.cloud.osconfig.v1alpha.\
7100    OSPolicy.Resource.File.RemoteH\0R\x06remote\x12M\n\x03gcs\x18\x02\x20\
7101    \x01(\x0b29.google.cloud.osconfig.v1alpha.OSPolicy.Resource.File.GcsH\0R\
7102    \x03gcs\x12\x1f\n\nlocal_path\x18\x03\x20\x01(\tH\0R\tlocalPath\x12%\n\
7103    \x0eallow_insecure\x18\x04\x20\x01(\x08R\rallowInsecure\x1aH\n\x06Remote\
7104    \x12\x15\n\x03uri\x18\x01\x20\x01(\tR\x03uriB\x03\xe0A\x02\x12'\n\x0fsha\
7105    256_checksum\x18\x02\x20\x01(\tR\x0esha256Checksum\x1a_\n\x03Gcs\x12\x1b\
7106    \n\x06bucket\x18\x01\x20\x01(\tR\x06bucketB\x03\xe0A\x02\x12\x1b\n\x06ob\
7107    ject\x18\x02\x20\x01(\tR\x06objectB\x03\xe0A\x02\x12\x1e\n\ngeneration\
7108    \x18\x03\x20\x01(\x03R\ngenerationB\x06\n\x04type\x1a\xe0\n\n\x0fPackage\
7109    Resource\x12w\n\rdesired_state\x18\x01\x20\x01(\x0e2M.google.cloud.oscon\
7110    fig.v1alpha.OSPolicy.Resource.PackageResource.DesiredStateR\x0cdesiredSt\
7111    ateB\x03\xe0A\x02\x12X\n\x03apt\x18\x02\x20\x01(\x0b2D.google.cloud.osco\
7112    nfig.v1alpha.OSPolicy.Resource.PackageResource.APTH\0R\x03apt\x12X\n\x03\
7113    deb\x18\x03\x20\x01(\x0b2D.google.cloud.osconfig.v1alpha.OSPolicy.Resour\
7114    ce.PackageResource.DebH\0R\x03deb\x12X\n\x03yum\x18\x04\x20\x01(\x0b2D.g\
7115    oogle.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.YUMH\0R\
7116    \x03yum\x12a\n\x06zypper\x18\x05\x20\x01(\x0b2G.google.cloud.osconfig.v1\
7117    alpha.OSPolicy.Resource.PackageResource.ZypperH\0R\x06zypper\x12X\n\x03r\
7118    pm\x18\x06\x20\x01(\x0b2D.google.cloud.osconfig.v1alpha.OSPolicy.Resourc\
7119    e.PackageResource.RPMH\0R\x03rpm\x12a\n\x06googet\x18\x07\x20\x01(\x0b2G\
7120    .google.cloud.osconfig.v1alpha.OSPolicy.Resource.PackageResource.GooGetH\
7121    \0R\x06googet\x12X\n\x03msi\x18\x08\x20\x01(\x0b2D.google.cloud.osconfig\
7122    .v1alpha.OSPolicy.Resource.PackageResource.MSIH\0R\x03msi\x1av\n\x03Deb\
7123    \x12R\n\x06source\x18\x01\x20\x01(\x0b25.google.cloud.osconfig.v1alpha.O\
7124    SPolicy.Resource.FileR\x06sourceB\x03\xe0A\x02\x12\x1b\n\tpull_deps\x18\
7125    \x02\x20\x01(\x08R\x08pullDeps\x1a\x1e\n\x03APT\x12\x17\n\x04name\x18\
7126    \x01\x20\x01(\tR\x04nameB\x03\xe0A\x02\x1av\n\x03RPM\x12R\n\x06source\
7127    \x18\x01\x20\x01(\x0b25.google.cloud.osconfig.v1alpha.OSPolicy.Resource.\
7128    FileR\x06sourceB\x03\xe0A\x02\x12\x1b\n\tpull_deps\x18\x02\x20\x01(\x08R\
7129    \x08pullDeps\x1a\x1e\n\x03YUM\x12\x17\n\x04name\x18\x01\x20\x01(\tR\x04n\
7130    ameB\x03\xe0A\x02\x1a!\n\x06Zypper\x12\x17\n\x04name\x18\x01\x20\x01(\tR\
7131    \x04nameB\x03\xe0A\x02\x1a!\n\x06GooGet\x12\x17\n\x04name\x18\x01\x20\
7132    \x01(\tR\x04nameB\x03\xe0A\x02\x1ay\n\x03MSI\x12R\n\x06source\x18\x01\
7133    \x20\x01(\x0b25.google.cloud.osconfig.v1alpha.OSPolicy.Resource.FileR\
7134    \x06sourceB\x03\xe0A\x02\x12\x1e\n\nproperties\x18\x02\x20\x03(\tR\nprop\
7135    erties\"I\n\x0cDesiredState\x12\x1d\n\x19DESIRED_STATE_UNSPECIFIED\x10\0\
7136    \x12\r\n\tINSTALLED\x10\x01\x12\x0b\n\x07REMOVED\x10\x02B\x10\n\x0esyste\
7137    m_package\x1a\xf0\x08\n\x12RepositoryResource\x12e\n\x03apt\x18\x01\x20\
7138    \x01(\x0b2Q.google.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryRe\
7139    source.AptRepositoryH\0R\x03apt\x12e\n\x03yum\x18\x02\x20\x01(\x0b2Q.goo\
7140    gle.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryResource.YumRepos\
7141    itoryH\0R\x03yum\x12n\n\x06zypper\x18\x03\x20\x01(\x0b2T.google.cloud.os\
7142    config.v1alpha.OSPolicy.Resource.RepositoryResource.ZypperRepositoryH\0R\
7143    \x06zypper\x12e\n\x03goo\x18\x04\x20\x01(\x0b2Q.google.cloud.osconfig.v1\
7144    alpha.OSPolicy.Resource.RepositoryResource.GooRepositoryH\0R\x03goo\x1a\
7145    \xd8\x02\n\rAptRepository\x12\x85\x01\n\x0carchive_type\x18\x01\x20\x01(\
7146    \x0e2].google.cloud.osconfig.v1alpha.OSPolicy.Resource.RepositoryResourc\
7147    e.AptRepository.ArchiveTypeR\x0barchiveTypeB\x03\xe0A\x02\x12\x15\n\x03u\
7148    ri\x18\x02\x20\x01(\tR\x03uriB\x03\xe0A\x02\x12'\n\x0cdistribution\x18\
7149    \x03\x20\x01(\tR\x0cdistributionB\x03\xe0A\x02\x12#\n\ncomponents\x18\
7150    \x04\x20\x03(\tR\ncomponentsB\x03\xe0A\x02\x12\x17\n\x07gpg_key\x18\x05\
7151    \x20\x01(\tR\x06gpgKey\"A\n\x0bArchiveType\x12\x1c\n\x18ARCHIVE_TYPE_UNS\
7152    PECIFIED\x10\0\x12\x07\n\x03DEB\x10\x01\x12\x0b\n\x07DEB_SRC\x10\x02\x1a\
7153    \x82\x01\n\rYumRepository\x12\x13\n\x02id\x18\x01\x20\x01(\tR\x02idB\x03\
7154    \xe0A\x02\x12!\n\x0cdisplay_name\x18\x02\x20\x01(\tR\x0bdisplayName\x12\
7155    \x1e\n\x08base_url\x18\x03\x20\x01(\tR\x07baseUrlB\x03\xe0A\x02\x12\x19\
7156    \n\x08gpg_keys\x18\x04\x20\x03(\tR\x07gpgKeys\x1a\x85\x01\n\x10ZypperRep\
7157    ository\x12\x13\n\x02id\x18\x01\x20\x01(\tR\x02idB\x03\xe0A\x02\x12!\n\
7158    \x0cdisplay_name\x18\x02\x20\x01(\tR\x0bdisplayName\x12\x1e\n\x08base_ur\
7159    l\x18\x03\x20\x01(\tR\x07baseUrlB\x03\xe0A\x02\x12\x19\n\x08gpg_keys\x18\
7160    \x04\x20\x03(\tR\x07gpgKeys\x1a?\n\rGooRepository\x12\x17\n\x04name\x18\
7161    \x01\x20\x01(\tR\x04nameB\x03\xe0A\x02\x12\x15\n\x03url\x18\x02\x20\x01(\
7162    \tR\x03urlB\x03\xe0A\x02B\x0c\n\nrepository\x1a\xd1\x04\n\x0cExecResourc\
7163    e\x12c\n\x08validate\x18\x01\x20\x01(\x0b2B.google.cloud.osconfig.v1alph\
7164    a.OSPolicy.Resource.ExecResource.ExecR\x08validateB\x03\xe0A\x02\x12\\\n\
7165    \x07enforce\x18\x02\x20\x01(\x0b2B.google.cloud.osconfig.v1alpha.OSPolic\
7166    y.Resource.ExecResource.ExecR\x07enforce\x1a\xfd\x02\n\x04Exec\x12K\n\
7167    \x04file\x18\x01\x20\x01(\x0b25.google.cloud.osconfig.v1alpha.OSPolicy.R\
7168    esource.FileH\0R\x04file\x12\x18\n\x06script\x18\x02\x20\x01(\tH\0R\x06s\
7169    cript\x12\x12\n\x04args\x18\x03\x20\x03(\tR\x04args\x12u\n\x0binterprete\
7170    r\x18\x04\x20\x01(\x0e2N.google.cloud.osconfig.v1alpha.OSPolicy.Resource\
7171    .ExecResource.Exec.InterpreterR\x0binterpreterB\x03\xe0A\x02\x12(\n\x10o\
7172    utput_file_path\x18\x05\x20\x01(\tR\x0eoutputFilePath\"O\n\x0bInterprete\
7173    r\x12\x1b\n\x17INTERPRETER_UNSPECIFIED\x10\0\x12\x08\n\x04NONE\x10\x01\
7174    \x12\t\n\x05SHELL\x10\x02\x12\x0e\n\nPOWERSHELL\x10\x03B\x08\n\x06source\
7175    \x1a\xff\x02\n\x0cFileResource\x12K\n\x04file\x18\x01\x20\x01(\x0b25.goo\
7176    gle.cloud.osconfig.v1alpha.OSPolicy.Resource.FileH\0R\x04file\x12\x1a\n\
7177    \x07content\x18\x02\x20\x01(\tH\0R\x07content\x12\x17\n\x04path\x18\x03\
7178    \x20\x01(\tR\x04pathB\x03\xe0A\x02\x12e\n\x05state\x18\x04\x20\x01(\x0e2\
7179    J.google.cloud.osconfig.v1alpha.OSPolicy.Resource.FileResource.DesiredSt\
7180    ateR\x05stateB\x03\xe0A\x02\x12\x20\n\x0bpermissions\x18\x05\x20\x01(\tR\
7181    \x0bpermissions\"Z\n\x0cDesiredState\x12\x1d\n\x19DESIRED_STATE_UNSPECIF\
7182    IED\x10\0\x12\x0b\n\x07PRESENT\x10\x01\x12\n\n\x06ABSENT\x10\x02\x12\x12\
7183    \n\x0eCONTENTS_MATCH\x10\x03B\x08\n\x06sourceB\x0f\n\rresource_type\x1a\
7184    \x9d\x02\n\rResourceGroup\x12Q\n\tos_filter\x18\x01\x20\x01(\x0b20.googl\
7185    e.cloud.osconfig.v1alpha.OSPolicy.OSFilterR\x08osFilterB\x02\x18\x01\x12\
7186    d\n\x11inventory_filters\x18\x03\x20\x03(\x0b27.google.cloud.osconfig.v1\
7187    alpha.OSPolicy.InventoryFilterR\x10inventoryFilters\x12S\n\tresources\
7188    \x18\x02\x20\x03(\x0b20.google.cloud.osconfig.v1alpha.OSPolicy.ResourceR\
7189    \tresourcesB\x03\xe0A\x02\"=\n\x04Mode\x12\x14\n\x10MODE_UNSPECIFIED\x10\
7190    \0\x12\x0e\n\nVALIDATION\x10\x01\x12\x0f\n\x0bENFORCEMENT\x10\x02B\xd6\
7191    \x01\n!com.google.cloud.osconfig.v1alphaB\rOsPolicyProtoP\x01Z=cloud.goo\
7192    gle.com/go/osconfig/apiv1alpha/osconfigpb;osconfigpb\xaa\x02\x1dGoogle.C\
7193    loud.OsConfig.V1Alpha\xca\x02\x1dGoogle\\Cloud\\OsConfig\\V1alpha\xea\
7194    \x02\x20Google::Cloud::OsConfig::V1alphaJ\x96\xb5\x01\n\x07\x12\x05\x0e\
7195    \0\xb4\x04\x01\n\xbc\x04\n\x01\x0c\x12\x03\x0e\0\x122\xb1\x04\x20Copyrig\
7196    ht\x202021\x20Google\x20LLC\n\n\x20Licensed\x20under\x20the\x20Apache\
7197    \x20License,\x20Version\x202.0\x20(the\x20\"License\");\n\x20you\x20may\
7198    \x20not\x20use\x20this\x20file\x20except\x20in\x20compliance\x20with\x20\
7199    the\x20License.\n\x20You\x20may\x20obtain\x20a\x20copy\x20of\x20the\x20L\
7200    icense\x20at\n\n\x20\x20\x20\x20\x20http://www.apache.org/licenses/LICEN\
7201    SE-2.0\n\n\x20Unless\x20required\x20by\x20applicable\x20law\x20or\x20agr\
7202    eed\x20to\x20in\x20writing,\x20software\n\x20distributed\x20under\x20the\
7203    \x20License\x20is\x20distributed\x20on\x20an\x20\"AS\x20IS\"\x20BASIS,\n\
7204    \x20WITHOUT\x20WARRANTIES\x20OR\x20CONDITIONS\x20OF\x20ANY\x20KIND,\x20e\
7205    ither\x20express\x20or\x20implied.\n\x20See\x20the\x20License\x20for\x20\
7206    the\x20specific\x20language\x20governing\x20permissions\x20and\n\x20limi\
7207    tations\x20under\x20the\x20License.\n\n\x08\n\x01\x02\x12\x03\x10\0&\n\t\
7208    \n\x02\x03\0\x12\x03\x12\0)\n\x08\n\x01\x08\x12\x03\x14\0:\n\t\n\x02\x08\
7209    %\x12\x03\x14\0:\n\x08\n\x01\x08\x12\x03\x15\0T\n\t\n\x02\x08\x0b\x12\
7210    \x03\x15\0T\n\x08\n\x01\x08\x12\x03\x16\0\"\n\t\n\x02\x08\n\x12\x03\x16\
7211    \0\"\n\x08\n\x01\x08\x12\x03\x17\0.\n\t\n\x02\x08\x08\x12\x03\x17\0.\n\
7212    \x08\n\x01\x08\x12\x03\x18\0:\n\t\n\x02\x08\x01\x12\x03\x18\0:\n\x08\n\
7213    \x01\x08\x12\x03\x19\0:\n\t\n\x02\x08)\x12\x03\x19\0:\n\x08\n\x01\x08\
7214    \x12\x03\x1a\09\n\t\n\x02\x08-\x12\x03\x1a\09\nM\n\x02\x04\0\x12\x05\x1d\
7215    \0\xb4\x04\x01\x1a@\x20An\x20OS\x20policy\x20defines\x20the\x20desired\
7216    \x20state\x20configuration\x20for\x20a\x20VM.\n\n\n\n\x03\x04\0\x01\x12\
7217    \x03\x1d\x08\x10\n\x1b\n\x04\x04\0\x04\0\x12\x04\x1f\x02+\x03\x1a\r\x20P\
7218    olicy\x20mode\n\n\x0c\n\x05\x04\0\x04\0\x01\x12\x03\x1f\x07\x0b\n\x1d\n\
7219    \x06\x04\0\x04\0\x02\0\x12\x03!\x04\x19\x1a\x0e\x20Invalid\x20mode\n\n\
7220    \x0e\n\x07\x04\0\x04\0\x02\0\x01\x12\x03!\x04\x14\n\x0e\n\x07\x04\0\x04\
7221    \0\x02\0\x02\x12\x03!\x17\x18\n\xd6\x01\n\x06\x04\0\x04\0\x02\x01\x12\
7222    \x03&\x04\x13\x1a\xc6\x01\x20This\x20mode\x20checks\x20if\x20the\x20conf\
7223    iguration\x20resources\x20in\x20the\x20policy\x20are\x20in\n\x20their\
7224    \x20desired\x20state.\x20No\x20actions\x20are\x20performed\x20if\x20they\
7225    \x20are\x20not\x20in\x20the\n\x20desired\x20state.\x20This\x20mode\x20is\
7226    \x20used\x20for\x20reporting\x20purposes.\n\n\x0e\n\x07\x04\0\x04\0\x02\
7227    \x01\x01\x12\x03&\x04\x0e\n\x0e\n\x07\x04\0\x04\0\x02\x01\x02\x12\x03&\
7228    \x11\x12\n\x94\x01\n\x06\x04\0\x04\0\x02\x02\x12\x03*\x04\x14\x1a\x84\
7229    \x01\x20This\x20mode\x20checks\x20if\x20the\x20configuration\x20resource\
7230    s\x20in\x20the\x20policy\x20are\x20in\n\x20their\x20desired\x20state,\
7231    \x20and\x20if\x20not,\x20enforces\x20the\x20desired\x20state.\n\n\x0e\n\
7232    \x07\x04\0\x04\0\x02\x02\x01\x12\x03*\x04\x0f\n\x0e\n\x07\x04\0\x04\0\
7233    \x02\x02\x02\x12\x03*\x12\x13\nE\n\x04\x04\0\x03\0\x12\x04.\x029\x03\x1a\
7234    7\x20Filtering\x20criteria\x20to\x20select\x20VMs\x20based\x20on\x20OS\
7235    \x20details.\n\n\x0c\n\x05\x04\0\x03\0\x01\x12\x03.\n\x12\ns\n\x06\x04\0\
7236    \x03\0\x02\0\x12\x031\x04\x1d\x1ad\x20This\x20should\x20match\x20OS\x20s\
7237    hort\x20name\x20emitted\x20by\x20the\x20OS\x20inventory\x20agent.\n\x20A\
7238    n\x20empty\x20value\x20matches\x20any\x20OS.\n\n\x0e\n\x07\x04\0\x03\0\
7239    \x02\0\x05\x12\x031\x04\n\n\x0e\n\x07\x04\0\x03\0\x02\0\x01\x12\x031\x0b\
7240    \x18\n\x0e\n\x07\x04\0\x03\0\x02\0\x03\x12\x031\x1b\x1c\n\x9c\x02\n\x06\
7241    \x04\0\x03\0\x02\x01\x12\x038\x04\x1a\x1a\x8c\x02\x20This\x20value\x20sh\
7242    ould\x20match\x20the\x20version\x20emitted\x20by\x20the\x20OS\x20invento\
7243    ry\n\x20agent.\n\x20Prefix\x20matches\x20are\x20supported\x20if\x20aster\
7244    isk(*)\x20is\x20provided\x20as\x20the\n\x20last\x20character.\x20For\x20\
7245    example,\x20to\x20match\x20all\x20versions\x20with\x20a\x20major\n\x20ve\
7246    rsion\x20of\x20`7`,\x20specify\x20the\x20following\x20value\x20for\x20th\
7247    is\x20field\x20`7.*`\n\n\x0e\n\x07\x04\0\x03\0\x02\x01\x05\x12\x038\x04\
7248    \n\n\x0e\n\x07\x04\0\x03\0\x02\x01\x01\x12\x038\x0b\x15\n\x0e\n\x07\x04\
7249    \0\x03\0\x02\x01\x03\x12\x038\x18\x19\nL\n\x04\x04\0\x03\x01\x12\x04<\
7250    \x02H\x03\x1a>\x20Filtering\x20criteria\x20to\x20select\x20VMs\x20based\
7251    \x20on\x20inventory\x20details.\n\n\x0c\n\x05\x04\0\x03\x01\x01\x12\x03<\
7252    \n\x19\n,\n\x06\x04\0\x03\x01\x02\0\x12\x03>\x04F\x1a\x1d\x20Required.\
7253    \x20The\x20OS\x20short\x20name\n\n\x0e\n\x07\x04\0\x03\x01\x02\0\x05\x12\
7254    \x03>\x04\n\n\x0e\n\x07\x04\0\x03\x01\x02\0\x01\x12\x03>\x0b\x18\n\x0e\n\
7255    \x07\x04\0\x03\x01\x02\0\x03\x12\x03>\x1b\x1c\n\x0e\n\x07\x04\0\x03\x01\
7256    \x02\0\x08\x12\x03>\x1dE\n\x11\n\n\x04\0\x03\x01\x02\0\x08\x9c\x08\0\x12\
7257    \x03>\x1eD\n\x8f\x02\n\x06\x04\0\x03\x01\x02\x01\x12\x03G\x04\x1a\x1a\
7258    \xff\x01\x20The\x20OS\x20version\n\n\x20Prefix\x20matches\x20are\x20supp\
7259    orted\x20if\x20asterisk(*)\x20is\x20provided\x20as\x20the\n\x20last\x20c\
7260    haracter.\x20For\x20example,\x20to\x20match\x20all\x20versions\x20with\
7261    \x20a\x20major\n\x20version\x20of\x20`7`,\x20specify\x20the\x20following\
7262    \x20value\x20for\x20this\x20field\x20`7.*`\n\n\x20An\x20empty\x20string\
7263    \x20matches\x20all\x20OS\x20versions.\n\n\x0e\n\x07\x04\0\x03\x01\x02\
7264    \x01\x05\x12\x03G\x04\n\n\x0e\n\x07\x04\0\x03\x01\x02\x01\x01\x12\x03G\
7265    \x0b\x15\n\x0e\n\x07\x04\0\x03\x01\x02\x01\x03\x12\x03G\x18\x19\n\xce\
7266    \x02\n\x04\x04\0\x03\x02\x12\x05P\x02\xf2\x03\x03\x1a\xbe\x02\x20An\x20O\
7267    S\x20policy\x20resource\x20is\x20used\x20to\x20define\x20the\x20desired\
7268    \x20state\x20configuration\n\x20and\x20provides\x20a\x20specific\x20func\
7269    tionality\x20like\x20installing/removing\x20packages,\n\x20executing\x20\
7270    a\x20script\x20etc.\n\n\x20The\x20system\x20ensures\x20that\x20resources\
7271    \x20are\x20always\x20in\x20their\x20desired\x20state\x20by\n\x20taking\
7272    \x20necessary\x20actions\x20if\x20they\x20have\x20drifted\x20from\x20the\
7273    ir\x20desired\x20state.\n\n\x0c\n\x05\x04\0\x03\x02\x01\x12\x03P\n\x12\n\
7274    )\n\x06\x04\0\x03\x02\x03\0\x12\x04R\x04{\x05\x1a\x19\x20A\x20remote\x20\
7275    or\x20local\x20file.\n\n\x0e\n\x07\x04\0\x03\x02\x03\0\x01\x12\x03R\x0c\
7276    \x10\n<\n\x08\x04\0\x03\x02\x03\0\x03\0\x12\x04T\x06[\x07\x1a*\x20Specif\
7277    ies\x20a\x20file\x20available\x20via\x20some\x20URI.\n\n\x10\n\t\x04\0\
7278    \x03\x02\x03\0\x03\0\x01\x12\x03T\x0e\x14\n\xa1\x01\n\n\x04\0\x03\x02\
7279    \x03\0\x03\0\x02\0\x12\x03W\x08@\x1a\x8d\x01\x20Required.\x20URI\x20from\
7280    \x20which\x20to\x20fetch\x20the\x20object.\x20It\x20should\x20contain\
7281    \x20both\x20the\n\x20protocol\x20and\x20path\x20following\x20the\x20form\
7282    at\x20`{protocol}://{location}`.\n\n\x12\n\x0b\x04\0\x03\x02\x03\0\x03\0\
7283    \x02\0\x05\x12\x03W\x08\x0e\n\x12\n\x0b\x04\0\x03\x02\x03\0\x03\0\x02\0\
7284    \x01\x12\x03W\x0f\x12\n\x12\n\x0b\x04\0\x03\x02\x03\0\x03\0\x02\0\x03\
7285    \x12\x03W\x15\x16\n\x12\n\x0b\x04\0\x03\x02\x03\0\x03\0\x02\0\x08\x12\
7286    \x03W\x17?\n\x15\n\x0e\x04\0\x03\x02\x03\0\x03\0\x02\0\x08\x9c\x08\0\x12\
7287    \x03W\x18>\n8\n\n\x04\0\x03\x02\x03\0\x03\0\x02\x01\x12\x03Z\x08#\x1a%\
7288    \x20SHA256\x20checksum\x20of\x20the\x20remote\x20file.\n\n\x12\n\x0b\x04\
7289    \0\x03\x02\x03\0\x03\0\x02\x01\x05\x12\x03Z\x08\x0e\n\x12\n\x0b\x04\0\
7290    \x03\x02\x03\0\x03\0\x02\x01\x01\x12\x03Z\x0f\x1e\n\x12\n\x0b\x04\0\x03\
7291    \x02\x03\0\x03\0\x02\x01\x03\x12\x03Z!\"\nI\n\x08\x04\0\x03\x02\x03\0\
7292    \x03\x01\x12\x04^\x06g\x07\x1a7\x20Specifies\x20a\x20file\x20available\
7293    \x20as\x20a\x20Cloud\x20Storage\x20Object.\n\n\x10\n\t\x04\0\x03\x02\x03\
7294    \0\x03\x01\x01\x12\x03^\x0e\x11\nB\n\n\x04\0\x03\x02\x03\0\x03\x01\x02\0\
7295    \x12\x03`\x08C\x1a/\x20Required.\x20Bucket\x20of\x20the\x20Cloud\x20Stor\
7296    age\x20object.\n\n\x12\n\x0b\x04\0\x03\x02\x03\0\x03\x01\x02\0\x05\x12\
7297    \x03`\x08\x0e\n\x12\n\x0b\x04\0\x03\x02\x03\0\x03\x01\x02\0\x01\x12\x03`\
7298    \x0f\x15\n\x12\n\x0b\x04\0\x03\x02\x03\0\x03\x01\x02\0\x03\x12\x03`\x18\
7299    \x19\n\x12\n\x0b\x04\0\x03\x02\x03\0\x03\x01\x02\0\x08\x12\x03`\x1aB\n\
7300    \x15\n\x0e\x04\0\x03\x02\x03\0\x03\x01\x02\0\x08\x9c\x08\0\x12\x03`\x1bA\
7301    \n@\n\n\x04\0\x03\x02\x03\0\x03\x01\x02\x01\x12\x03c\x08C\x1a-\x20Requir\
7302    ed.\x20Name\x20of\x20the\x20Cloud\x20Storage\x20object.\n\n\x12\n\x0b\
7303    \x04\0\x03\x02\x03\0\x03\x01\x02\x01\x05\x12\x03c\x08\x0e\n\x12\n\x0b\
7304    \x04\0\x03\x02\x03\0\x03\x01\x02\x01\x01\x12\x03c\x0f\x15\n\x12\n\x0b\
7305    \x04\0\x03\x02\x03\0\x03\x01\x02\x01\x03\x12\x03c\x18\x19\n\x12\n\x0b\
7306    \x04\0\x03\x02\x03\0\x03\x01\x02\x01\x08\x12\x03c\x1aB\n\x15\n\x0e\x04\0\
7307    \x03\x02\x03\0\x03\x01\x02\x01\x08\x9c\x08\0\x12\x03c\x1bA\nC\n\n\x04\0\
7308    \x03\x02\x03\0\x03\x01\x02\x02\x12\x03f\x08\x1d\x1a0\x20Generation\x20nu\
7309    mber\x20of\x20the\x20Cloud\x20Storage\x20object.\n\n\x12\n\x0b\x04\0\x03\
7310    \x02\x03\0\x03\x01\x02\x02\x05\x12\x03f\x08\r\n\x12\n\x0b\x04\0\x03\x02\
7311    \x03\0\x03\x01\x02\x02\x01\x12\x03f\x0e\x18\n\x12\n\x0b\x04\0\x03\x02\
7312    \x03\0\x03\x01\x02\x02\x03\x12\x03f\x1b\x1c\n,\n\x08\x04\0\x03\x02\x03\0\
7313    \x08\0\x12\x04j\x06s\x07\x1a\x1a\x20A\x20specific\x20type\x20of\x20file.\
7314    \n\n\x10\n\t\x04\0\x03\x02\x03\0\x08\0\x01\x12\x03j\x0c\x10\n)\n\x08\x04\
7315    \0\x03\x02\x03\0\x02\0\x12\x03l\x08\x1a\x1a\x18\x20A\x20generic\x20remot\
7316    e\x20file.\n\n\x10\n\t\x04\0\x03\x02\x03\0\x02\0\x06\x12\x03l\x08\x0e\n\
7317    \x10\n\t\x04\0\x03\x02\x03\0\x02\0\x01\x12\x03l\x0f\x15\n\x10\n\t\x04\0\
7318    \x03\x02\x03\0\x02\0\x03\x12\x03l\x18\x19\n*\n\x08\x04\0\x03\x02\x03\0\
7319    \x02\x01\x12\x03o\x08\x14\x1a\x19\x20A\x20Cloud\x20Storage\x20object.\n\
7320    \n\x10\n\t\x04\0\x03\x02\x03\0\x02\x01\x06\x12\x03o\x08\x0b\n\x10\n\t\
7321    \x04\0\x03\x02\x03\0\x02\x01\x01\x12\x03o\x0c\x0f\n\x10\n\t\x04\0\x03\
7322    \x02\x03\0\x02\x01\x03\x12\x03o\x12\x13\n5\n\x08\x04\0\x03\x02\x03\0\x02\
7323    \x02\x12\x03r\x08\x1e\x1a$\x20A\x20local\x20path\x20within\x20the\x20VM\
7324    \x20to\x20use.\n\n\x10\n\t\x04\0\x03\x02\x03\0\x02\x02\x05\x12\x03r\x08\
7325    \x0e\n\x10\n\t\x04\0\x03\x02\x03\0\x02\x02\x01\x12\x03r\x0f\x19\n\x10\n\
7326    \t\x04\0\x03\x02\x03\0\x02\x02\x03\x12\x03r\x1c\x1d\n\xd3\x01\n\x08\x04\
7327    \0\x03\x02\x03\0\x02\x03\x12\x03z\x06\x1e\x1a\xc1\x01\x20Defaults\x20to\
7328    \x20false.\x20When\x20false,\x20files\x20are\x20subject\x20to\x20validat\
7329    ions\n\x20based\x20on\x20the\x20file\x20type:\n\n\x20Remote:\x20A\x20che\
7330    cksum\x20must\x20be\x20specified.\n\x20Cloud\x20Storage:\x20An\x20object\
7331    \x20generation\x20number\x20must\x20be\x20specified.\n\n\x10\n\t\x04\0\
7332    \x03\x02\x03\0\x02\x03\x05\x12\x03z\x06\n\n\x10\n\t\x04\0\x03\x02\x03\0\
7333    \x02\x03\x01\x12\x03z\x0b\x19\n\x10\n\t\x04\0\x03\x02\x03\0\x02\x03\x03\
7334    \x12\x03z\x1c\x1d\n<\n\x06\x04\0\x03\x02\x03\x01\x12\x05~\x04\xea\x01\
7335    \x05\x1a+\x20A\x20resource\x20that\x20manages\x20a\x20system\x20package.\
7336    \n\n\x0e\n\x07\x04\0\x03\x02\x03\x01\x01\x12\x03~\x0c\x1b\nU\n\x08\x04\0\
7337    \x03\x02\x03\x01\x04\0\x12\x06\x80\x01\x06\x8a\x01\x07\x1aA\x20The\x20de\
7338    sired\x20state\x20that\x20the\x20OS\x20Config\x20agent\x20maintains\x20o\
7339    n\x20the\x20VM.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x04\0\x01\x12\x04\x80\
7340    \x01\x0b\x17\n-\n\n\x04\0\x03\x02\x03\x01\x04\0\x02\0\x12\x04\x82\x01\
7341    \x08&\x1a\x19\x20Unspecified\x20is\x20invalid.\n\n\x13\n\x0b\x04\0\x03\
7342    \x02\x03\x01\x04\0\x02\0\x01\x12\x04\x82\x01\x08!\n\x13\n\x0b\x04\0\x03\
7343    \x02\x03\x01\x04\0\x02\0\x02\x12\x04\x82\x01$%\n;\n\n\x04\0\x03\x02\x03\
7344    \x01\x04\0\x02\x01\x12\x04\x85\x01\x08\x16\x1a'\x20Ensure\x20that\x20the\
7345    \x20package\x20is\x20installed.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x04\
7346    \0\x02\x01\x01\x12\x04\x85\x01\x08\x11\n\x13\n\x0b\x04\0\x03\x02\x03\x01\
7347    \x04\0\x02\x01\x02\x12\x04\x85\x01\x14\x15\ni\n\n\x04\0\x03\x02\x03\x01\
7348    \x04\0\x02\x02\x12\x04\x89\x01\x08\x14\x1aU\x20The\x20agent\x20ensures\
7349    \x20that\x20the\x20package\x20is\x20not\x20installed\x20and\n\x20uninsta\
7350    lls\x20it\x20if\x20detected.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x04\0\
7351    \x02\x02\x01\x12\x04\x89\x01\x08\x0f\n\x13\n\x0b\x04\0\x03\x02\x03\x01\
7352    \x04\0\x02\x02\x02\x12\x04\x89\x01\x12\x13\nU\n\x08\x04\0\x03\x02\x03\
7353    \x01\x03\0\x12\x06\x8d\x01\x06\x96\x01\x07\x1aA\x20A\x20deb\x20package\
7354    \x20file.\x20dpkg\x20packages\x20only\x20support\x20INSTALLED\x20state.\
7355    \n\n\x11\n\t\x04\0\x03\x02\x03\x01\x03\0\x01\x12\x04\x8d\x01\x0e\x11\n.\
7356    \n\n\x04\0\x03\x02\x03\x01\x03\0\x02\0\x12\x04\x8f\x01\x08A\x1a\x1a\x20R\
7357    equired.\x20A\x20deb\x20package.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\
7358    \0\x02\0\x06\x12\x04\x8f\x01\x08\x0c\n\x13\n\x0b\x04\0\x03\x02\x03\x01\
7359    \x03\0\x02\0\x01\x12\x04\x8f\x01\r\x13\n\x13\n\x0b\x04\0\x03\x02\x03\x01\
7360    \x03\0\x02\0\x03\x12\x04\x8f\x01\x16\x17\n\x13\n\x0b\x04\0\x03\x02\x03\
7361    \x01\x03\0\x02\0\x08\x12\x04\x8f\x01\x18@\n\x16\n\x0e\x04\0\x03\x02\x03\
7362    \x01\x03\0\x02\0\x08\x9c\x08\0\x12\x04\x8f\x01\x19?\n\xb8\x01\n\n\x04\0\
7363    \x03\x02\x03\x01\x03\0\x02\x01\x12\x04\x95\x01\x08\x1b\x1a\xa3\x01\x20Wh\
7364    ether\x20dependencies\x20should\x20also\x20be\x20installed.\n\x20-\x20in\
7365    stall\x20when\x20false:\x20`dpkg\x20-i\x20package`\n\x20-\x20install\x20\
7366    when\x20true:\x20`apt-get\x20update\x20&&\x20apt-get\x20-y\x20install\n\
7367    \x20package.deb`\n\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\0\x02\x01\x05\
7368    \x12\x04\x95\x01\x08\x0c\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\0\x02\x01\
7369    \x01\x12\x04\x95\x01\r\x16\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\0\x02\
7370    \x01\x03\x12\x04\x95\x01\x19\x1a\n\x8f\x01\n\x08\x04\0\x03\x02\x03\x01\
7371    \x03\x01\x12\x06\x9b\x01\x06\x9e\x01\x07\x1a{\x20A\x20package\x20managed\
7372    \x20by\x20APT.\n\x20-\x20install:\x20`apt-get\x20update\x20&&\x20apt-get\
7373    \x20-y\x20install\x20[name]`\n\x20-\x20remove:\x20`apt-get\x20-y\x20remo\
7374    ve\x20[name]`\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x03\x01\x01\x12\x04\x9b\
7375    \x01\x0e\x11\n-\n\n\x04\0\x03\x02\x03\x01\x03\x01\x02\0\x12\x04\x9d\x01\
7376    \x08A\x1a\x19\x20Required.\x20Package\x20name.\n\n\x13\n\x0b\x04\0\x03\
7377    \x02\x03\x01\x03\x01\x02\0\x05\x12\x04\x9d\x01\x08\x0e\n\x13\n\x0b\x04\0\
7378    \x03\x02\x03\x01\x03\x01\x02\0\x01\x12\x04\x9d\x01\x0f\x13\n\x13\n\x0b\
7379    \x04\0\x03\x02\x03\x01\x03\x01\x02\0\x03\x12\x04\x9d\x01\x16\x17\n\x13\n\
7380    \x0b\x04\0\x03\x02\x03\x01\x03\x01\x02\0\x08\x12\x04\x9d\x01\x18@\n\x16\
7381    \n\x0e\x04\0\x03\x02\x03\x01\x03\x01\x02\0\x08\x9c\x08\0\x12\x04\x9d\x01\
7382    \x19?\nU\n\x08\x04\0\x03\x02\x03\x01\x03\x02\x12\x06\xa1\x01\x06\xaa\x01\
7383    \x07\x1aA\x20An\x20RPM\x20package\x20file.\x20RPM\x20packages\x20only\
7384    \x20support\x20INSTALLED\x20state.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x03\
7385    \x02\x01\x12\x04\xa1\x01\x0e\x11\n/\n\n\x04\0\x03\x02\x03\x01\x03\x02\
7386    \x02\0\x12\x04\xa3\x01\x08A\x1a\x1b\x20Required.\x20An\x20rpm\x20package\
7387    .\n\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\x02\x02\0\x06\x12\x04\xa3\x01\
7388    \x08\x0c\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\x02\x02\0\x01\x12\x04\xa3\
7389    \x01\r\x13\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\x02\x02\0\x03\x12\x04\
7390    \xa3\x01\x16\x17\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\x02\x02\0\x08\x12\
7391    \x04\xa3\x01\x18@\n\x16\n\x0e\x04\0\x03\x02\x03\x01\x03\x02\x02\0\x08\
7392    \x9c\x08\0\x12\x04\xa3\x01\x19?\n\xdd\x01\n\n\x04\0\x03\x02\x03\x01\x03\
7393    \x02\x02\x01\x12\x04\xa9\x01\x08\x1b\x1a\xc8\x01\x20Whether\x20dependenc\
7394    ies\x20should\x20also\x20be\x20installed.\n\x20-\x20install\x20when\x20f\
7395    alse:\x20`rpm\x20--upgrade\x20--replacepkgs\x20package.rpm`\n\x20-\x20in\
7396    stall\x20when\x20true:\x20`yum\x20-y\x20install\x20package.rpm`\x20or\n\
7397    \x20`zypper\x20-y\x20install\x20package.rpm`\n\n\x13\n\x0b\x04\0\x03\x02\
7398    \x03\x01\x03\x02\x02\x01\x05\x12\x04\xa9\x01\x08\x0c\n\x13\n\x0b\x04\0\
7399    \x03\x02\x03\x01\x03\x02\x02\x01\x01\x12\x04\xa9\x01\r\x16\n\x13\n\x0b\
7400    \x04\0\x03\x02\x03\x01\x03\x02\x02\x01\x03\x12\x04\xa9\x01\x19\x1a\nw\n\
7401    \x08\x04\0\x03\x02\x03\x01\x03\x03\x12\x06\xaf\x01\x06\xb2\x01\x07\x1ac\
7402    \x20A\x20package\x20managed\x20by\x20YUM.\n\x20-\x20install:\x20`yum\x20\
7403    -y\x20install\x20package`\n\x20-\x20remove:\x20`yum\x20-y\x20remove\x20p\
7404    ackage`\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x03\x03\x01\x12\x04\xaf\x01\
7405    \x0e\x11\n-\n\n\x04\0\x03\x02\x03\x01\x03\x03\x02\0\x12\x04\xb1\x01\x08A\
7406    \x1a\x19\x20Required.\x20Package\x20name.\n\n\x13\n\x0b\x04\0\x03\x02\
7407    \x03\x01\x03\x03\x02\0\x05\x12\x04\xb1\x01\x08\x0e\n\x13\n\x0b\x04\0\x03\
7408    \x02\x03\x01\x03\x03\x02\0\x01\x12\x04\xb1\x01\x0f\x13\n\x13\n\x0b\x04\0\
7409    \x03\x02\x03\x01\x03\x03\x02\0\x03\x12\x04\xb1\x01\x16\x17\n\x13\n\x0b\
7410    \x04\0\x03\x02\x03\x01\x03\x03\x02\0\x08\x12\x04\xb1\x01\x18@\n\x16\n\
7411    \x0e\x04\0\x03\x02\x03\x01\x03\x03\x02\0\x08\x9c\x08\0\x12\x04\xb1\x01\
7412    \x19?\n|\n\x08\x04\0\x03\x02\x03\x01\x03\x04\x12\x06\xb7\x01\x06\xba\x01\
7413    \x07\x1ah\x20A\x20package\x20managed\x20by\x20Zypper.\n\x20-\x20install:\
7414    \x20`zypper\x20-y\x20install\x20package`\n\x20-\x20remove:\x20`zypper\
7415    \x20-y\x20rm\x20package`\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x03\x04\x01\
7416    \x12\x04\xb7\x01\x0e\x14\n-\n\n\x04\0\x03\x02\x03\x01\x03\x04\x02\0\x12\
7417    \x04\xb9\x01\x08A\x1a\x19\x20Required.\x20Package\x20name.\n\n\x13\n\x0b\
7418    \x04\0\x03\x02\x03\x01\x03\x04\x02\0\x05\x12\x04\xb9\x01\x08\x0e\n\x13\n\
7419    \x0b\x04\0\x03\x02\x03\x01\x03\x04\x02\0\x01\x12\x04\xb9\x01\x0f\x13\n\
7420    \x13\n\x0b\x04\0\x03\x02\x03\x01\x03\x04\x02\0\x03\x12\x04\xb9\x01\x16\
7421    \x17\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\x04\x02\0\x08\x12\x04\xb9\x01\
7422    \x18@\n\x16\n\x0e\x04\0\x03\x02\x03\x01\x03\x04\x02\0\x08\x9c\x08\0\x12\
7423    \x04\xb9\x01\x19?\n\x90\x01\n\x08\x04\0\x03\x02\x03\x01\x03\x05\x12\x06\
7424    \xbf\x01\x06\xc2\x01\x07\x1a|\x20A\x20package\x20managed\x20by\x20GooGet\
7425    .\n\x20-\x20install:\x20`googet\x20-noconfirm\x20install\x20package`\n\
7426    \x20-\x20remove:\x20`googet\x20-noconfirm\x20remove\x20package`\n\n\x11\
7427    \n\t\x04\0\x03\x02\x03\x01\x03\x05\x01\x12\x04\xbf\x01\x0e\x14\n-\n\n\
7428    \x04\0\x03\x02\x03\x01\x03\x05\x02\0\x12\x04\xc1\x01\x08A\x1a\x19\x20Req\
7429    uired.\x20Package\x20name.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\x05\
7430    \x02\0\x05\x12\x04\xc1\x01\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x01\x03\
7431    \x05\x02\0\x01\x12\x04\xc1\x01\x0f\x13\n\x13\n\x0b\x04\0\x03\x02\x03\x01\
7432    \x03\x05\x02\0\x03\x12\x04\xc1\x01\x16\x17\n\x13\n\x0b\x04\0\x03\x02\x03\
7433    \x01\x03\x05\x02\0\x08\x12\x04\xc1\x01\x18@\n\x16\n\x0e\x04\0\x03\x02\
7434    \x03\x01\x03\x05\x02\0\x08\x9c\x08\0\x12\x04\xc1\x01\x19?\nP\n\x08\x04\0\
7435    \x03\x02\x03\x01\x03\x06\x12\x06\xc5\x01\x06\xce\x01\x07\x1a<\x20An\x20M\
7436    SI\x20package.\x20MSI\x20packages\x20only\x20support\x20INSTALLED\x20sta\
7437    te.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x03\x06\x01\x12\x04\xc5\x01\x0e\
7438    \x11\n0\n\n\x04\0\x03\x02\x03\x01\x03\x06\x02\0\x12\x04\xc7\x01\x08A\x1a\
7439    \x1c\x20Required.\x20The\x20MSI\x20package.\n\n\x13\n\x0b\x04\0\x03\x02\
7440    \x03\x01\x03\x06\x02\0\x06\x12\x04\xc7\x01\x08\x0c\n\x13\n\x0b\x04\0\x03\
7441    \x02\x03\x01\x03\x06\x02\0\x01\x12\x04\xc7\x01\r\x13\n\x13\n\x0b\x04\0\
7442    \x03\x02\x03\x01\x03\x06\x02\0\x03\x12\x04\xc7\x01\x16\x17\n\x13\n\x0b\
7443    \x04\0\x03\x02\x03\x01\x03\x06\x02\0\x08\x12\x04\xc7\x01\x18@\n\x16\n\
7444    \x0e\x04\0\x03\x02\x03\x01\x03\x06\x02\0\x08\x9c\x08\0\x12\x04\xc7\x01\
7445    \x19?\n\xc1\x01\n\n\x04\0\x03\x02\x03\x01\x03\x06\x02\x01\x12\x04\xcd\
7446    \x01\x08'\x1a\xac\x01\x20Additional\x20properties\x20to\x20use\x20during\
7447    \x20installation.\n\x20This\x20should\x20be\x20in\x20the\x20format\x20of\
7448    \x20Property=Setting.\n\x20Appended\x20to\x20the\x20defaults\x20of\x20`A\
7449    CTION=INSTALL\n\x20REBOOT=ReallySuppress`.\n\n\x13\n\x0b\x04\0\x03\x02\
7450    \x03\x01\x03\x06\x02\x01\x04\x12\x04\xcd\x01\x08\x10\n\x13\n\x0b\x04\0\
7451    \x03\x02\x03\x01\x03\x06\x02\x01\x05\x12\x04\xcd\x01\x11\x17\n\x13\n\x0b\
7452    \x04\0\x03\x02\x03\x01\x03\x06\x02\x01\x01\x12\x04\xcd\x01\x18\"\n\x13\n\
7453    \x0b\x04\0\x03\x02\x03\x01\x03\x06\x02\x01\x03\x12\x04\xcd\x01%&\n[\n\
7454    \x08\x04\0\x03\x02\x03\x01\x02\0\x12\x04\xd1\x01\x06N\x1aI\x20Required.\
7455    \x20The\x20desired\x20state\x20the\x20agent\x20should\x20maintain\x20for\
7456    \x20this\x20package.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\0\x06\x12\x04\
7457    \xd1\x01\x06\x12\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\0\x01\x12\x04\xd1\
7458    \x01\x13\x20\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\0\x03\x12\x04\xd1\x01#$\
7459    \n\x11\n\t\x04\0\x03\x02\x03\x01\x02\0\x08\x12\x04\xd1\x01%M\n\x14\n\x0c\
7460    \x04\0\x03\x02\x03\x01\x02\0\x08\x9c\x08\0\x12\x04\xd1\x01&L\n'\n\x08\
7461    \x04\0\x03\x02\x03\x01\x08\0\x12\x06\xd4\x01\x06\xe9\x01\x07\x1a\x13\x20\
7462    A\x20system\x20package.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x08\0\x01\x12\
7463    \x04\xd4\x01\x0c\x1a\n-\n\x08\x04\0\x03\x02\x03\x01\x02\x01\x12\x04\xd6\
7464    \x01\x08\x14\x1a\x1b\x20A\x20package\x20managed\x20by\x20Apt.\n\n\x11\n\
7465    \t\x04\0\x03\x02\x03\x01\x02\x01\x06\x12\x04\xd6\x01\x08\x0b\n\x11\n\t\
7466    \x04\0\x03\x02\x03\x01\x02\x01\x01\x12\x04\xd6\x01\x0c\x0f\n\x11\n\t\x04\
7467    \0\x03\x02\x03\x01\x02\x01\x03\x12\x04\xd6\x01\x12\x13\n'\n\x08\x04\0\
7468    \x03\x02\x03\x01\x02\x02\x12\x04\xd9\x01\x08\x14\x1a\x15\x20A\x20deb\x20\
7469    package\x20file.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x02\x06\x12\x04\
7470    \xd9\x01\x08\x0b\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x02\x01\x12\x04\xd9\
7471    \x01\x0c\x0f\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x02\x03\x12\x04\xd9\x01\
7472    \x12\x13\n-\n\x08\x04\0\x03\x02\x03\x01\x02\x03\x12\x04\xdc\x01\x08\x14\
7473    \x1a\x1b\x20A\x20package\x20managed\x20by\x20YUM.\n\n\x11\n\t\x04\0\x03\
7474    \x02\x03\x01\x02\x03\x06\x12\x04\xdc\x01\x08\x0b\n\x11\n\t\x04\0\x03\x02\
7475    \x03\x01\x02\x03\x01\x12\x04\xdc\x01\x0c\x0f\n\x11\n\t\x04\0\x03\x02\x03\
7476    \x01\x02\x03\x03\x12\x04\xdc\x01\x12\x13\n0\n\x08\x04\0\x03\x02\x03\x01\
7477    \x02\x04\x12\x04\xdf\x01\x08\x1a\x1a\x1e\x20A\x20package\x20managed\x20b\
7478    y\x20Zypper.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x04\x06\x12\x04\xdf\
7479    \x01\x08\x0e\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x04\x01\x12\x04\xdf\x01\
7480    \x0f\x15\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x04\x03\x12\x04\xdf\x01\x18\
7481    \x19\n(\n\x08\x04\0\x03\x02\x03\x01\x02\x05\x12\x04\xe2\x01\x08\x14\x1a\
7482    \x16\x20An\x20rpm\x20package\x20file.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\
7483    \x02\x05\x06\x12\x04\xe2\x01\x08\x0b\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\
7484    \x05\x01\x12\x04\xe2\x01\x0c\x0f\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x05\
7485    \x03\x12\x04\xe2\x01\x12\x13\n0\n\x08\x04\0\x03\x02\x03\x01\x02\x06\x12\
7486    \x04\xe5\x01\x08\x1a\x1a\x1e\x20A\x20package\x20managed\x20by\x20GooGet.\
7487    \n\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x06\x06\x12\x04\xe5\x01\x08\x0e\n\
7488    \x11\n\t\x04\0\x03\x02\x03\x01\x02\x06\x01\x12\x04\xe5\x01\x0f\x15\n\x11\
7489    \n\t\x04\0\x03\x02\x03\x01\x02\x06\x03\x12\x04\xe5\x01\x18\x19\n#\n\x08\
7490    \x04\0\x03\x02\x03\x01\x02\x07\x12\x04\xe8\x01\x08\x14\x1a\x11\x20An\x20\
7491    MSI\x20package.\n\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x07\x06\x12\x04\
7492    \xe8\x01\x08\x0b\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x07\x01\x12\x04\xe8\
7493    \x01\x0c\x0f\n\x11\n\t\x04\0\x03\x02\x03\x01\x02\x07\x03\x12\x04\xe8\x01\
7494    \x12\x13\nA\n\x06\x04\0\x03\x02\x03\x02\x12\x06\xed\x01\x04\xd1\x02\x05\
7495    \x1a/\x20A\x20resource\x20that\x20manages\x20a\x20package\x20repository.\
7496    \n\n\x0f\n\x07\x04\0\x03\x02\x03\x02\x01\x12\x04\xed\x01\x0c\x1e\n\xaf\
7497    \x01\n\x08\x04\0\x03\x02\x03\x02\x03\0\x12\x06\xf1\x01\x06\x8e\x02\x07\
7498    \x1a\x9a\x01\x20Represents\x20a\x20single\x20apt\x20package\x20repositor\
7499    y.\x20These\x20will\x20be\x20added\x20to\n\x20a\x20repo\x20file\x20that\
7500    \x20will\x20be\x20managed\x20at\n\x20`/etc/apt/sources.list.d/google_osc\
7501    onfig.list`.\n\n\x11\n\t\x04\0\x03\x02\x03\x02\x03\0\x01\x12\x04\xf1\x01\
7502    \x0e\x1b\n(\n\n\x04\0\x03\x02\x03\x02\x03\0\x04\0\x12\x06\xf3\x01\x08\
7503    \xfc\x01\t\x1a\x12\x20Type\x20of\x20archive.\n\n\x13\n\x0b\x04\0\x03\x02\
7504    \x03\x02\x03\0\x04\0\x01\x12\x04\xf3\x01\r\x18\n/\n\x0c\x04\0\x03\x02\
7505    \x03\x02\x03\0\x04\0\x02\0\x12\x04\xf5\x01\n'\x1a\x19\x20Unspecified\x20\
7506    is\x20invalid.\n\n\x15\n\r\x04\0\x03\x02\x03\x02\x03\0\x04\0\x02\0\x01\
7507    \x12\x04\xf5\x01\n\"\n\x15\n\r\x04\0\x03\x02\x03\x02\x03\0\x04\0\x02\0\
7508    \x02\x12\x04\xf5\x01%&\nM\n\x0c\x04\0\x03\x02\x03\x02\x03\0\x04\0\x02\
7509    \x01\x12\x04\xf8\x01\n\x12\x1a7\x20Deb\x20indicates\x20that\x20the\x20ar\
7510    chive\x20contains\x20binary\x20files.\n\n\x15\n\r\x04\0\x03\x02\x03\x02\
7511    \x03\0\x04\0\x02\x01\x01\x12\x04\xf8\x01\n\r\n\x15\n\r\x04\0\x03\x02\x03\
7512    \x02\x03\0\x04\0\x02\x01\x02\x12\x04\xf8\x01\x10\x11\nQ\n\x0c\x04\0\x03\
7513    \x02\x03\x02\x03\0\x04\0\x02\x02\x12\x04\xfb\x01\n\x16\x1a;\x20Deb-src\
7514    \x20indicates\x20that\x20the\x20archive\x20contains\x20source\x20files.\
7515    \n\n\x15\n\r\x04\0\x03\x02\x03\x02\x03\0\x04\0\x02\x02\x01\x12\x04\xfb\
7516    \x01\n\x11\n\x15\n\r\x04\0\x03\x02\x03\x02\x03\0\x04\0\x02\x02\x02\x12\
7517    \x04\xfb\x01\x14\x15\nI\n\n\x04\0\x03\x02\x03\x02\x03\0\x02\0\x12\x04\
7518    \xff\x01\x08N\x1a5\x20Required.\x20Type\x20of\x20archive\x20files\x20in\
7519    \x20this\x20repository.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\x02\0\
7520    \x06\x12\x04\xff\x01\x08\x13\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\x02\
7521    \0\x01\x12\x04\xff\x01\x14\x20\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\
7522    \x02\0\x03\x12\x04\xff\x01#$\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\x02\
7523    \0\x08\x12\x04\xff\x01%M\n\x16\n\x0e\x04\0\x03\x02\x03\x02\x03\0\x02\0\
7524    \x08\x9c\x08\0\x12\x04\xff\x01&L\n8\n\n\x04\0\x03\x02\x03\x02\x03\0\x02\
7525    \x01\x12\x04\x82\x02\x08@\x1a$\x20Required.\x20URI\x20for\x20this\x20rep\
7526    ository.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\x02\x01\x05\x12\x04\
7527    \x82\x02\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\x02\x01\x01\x12\
7528    \x04\x82\x02\x0f\x12\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\x02\x01\x03\
7529    \x12\x04\x82\x02\x15\x16\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\x02\x01\
7530    \x08\x12\x04\x82\x02\x17?\n\x16\n\x0e\x04\0\x03\x02\x03\x02\x03\0\x02\
7531    \x01\x08\x9c\x08\0\x12\x04\x82\x02\x18>\n@\n\n\x04\0\x03\x02\x03\x02\x03\
7532    \0\x02\x02\x12\x04\x85\x02\x08I\x1a,\x20Required.\x20Distribution\x20of\
7533    \x20this\x20repository.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\x02\
7534    \x02\x05\x12\x04\x85\x02\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\
7535    \x02\x02\x01\x12\x04\x85\x02\x0f\x1b\n\x13\n\x0b\x04\0\x03\x02\x03\x02\
7536    \x03\0\x02\x02\x03\x12\x04\x85\x02\x1e\x1f\n\x13\n\x0b\x04\0\x03\x02\x03\
7537    \x02\x03\0\x02\x02\x08\x12\x04\x85\x02\x20H\n\x16\n\x0e\x04\0\x03\x02\
7538    \x03\x02\x03\0\x02\x02\x08\x9c\x08\0\x12\x04\x85\x02!G\nh\n\n\x04\0\x03\
7539    \x02\x03\x02\x03\0\x02\x03\x12\x04\x89\x02\x08P\x1aT\x20Required.\x20Lis\
7540    t\x20of\x20components\x20for\x20this\x20repository.\x20Must\x20contain\
7541    \x20at\x20least\x20one\n\x20item.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\
7542    \x03\0\x02\x03\x04\x12\x04\x89\x02\x08\x10\n\x13\n\x0b\x04\0\x03\x02\x03\
7543    \x02\x03\0\x02\x03\x05\x12\x04\x89\x02\x11\x17\n\x13\n\x0b\x04\0\x03\x02\
7544    \x03\x02\x03\0\x02\x03\x01\x12\x04\x89\x02\x18\"\n\x13\n\x0b\x04\0\x03\
7545    \x02\x03\x02\x03\0\x02\x03\x03\x12\x04\x89\x02%&\n\x13\n\x0b\x04\0\x03\
7546    \x02\x03\x02\x03\0\x02\x03\x08\x12\x04\x89\x02'O\n\x16\n\x0e\x04\0\x03\
7547    \x02\x03\x02\x03\0\x02\x03\x08\x9c\x08\0\x12\x04\x89\x02(N\n\x96\x01\n\n\
7548    \x04\0\x03\x02\x03\x02\x03\0\x02\x04\x12\x04\x8d\x02\x08\x1b\x1a\x81\x01\
7549    \x20URI\x20of\x20the\x20key\x20file\x20for\x20this\x20repository.\x20The\
7550    \x20agent\x20maintains\x20a\n\x20keyring\x20at\x20`/etc/apt/trusted.gpg.\
7551    d/osconfig_agent_managed.gpg`.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\0\
7552    \x02\x04\x05\x12\x04\x8d\x02\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x02\
7553    \x03\0\x02\x04\x01\x12\x04\x8d\x02\x0f\x16\n\x13\n\x0b\x04\0\x03\x02\x03\
7554    \x02\x03\0\x02\x04\x03\x12\x04\x8d\x02\x19\x1a\n\x9f\x01\n\x08\x04\0\x03\
7555    \x02\x03\x02\x03\x01\x12\x06\x93\x02\x06\xa2\x02\x07\x1a\x8a\x01\x20Repr\
7556    esents\x20a\x20single\x20yum\x20package\x20repository.\x20These\x20are\
7557    \x20added\x20to\x20a\n\x20repo\x20file\x20that\x20is\x20managed\x20at\n\
7558    \x20`/etc/yum.repos.d/google_osconfig.repo`.\n\n\x11\n\t\x04\0\x03\x02\
7559    \x03\x02\x03\x01\x01\x12\x04\x93\x02\x0e\x1b\n\x8c\x02\n\n\x04\0\x03\x02\
7560    \x03\x02\x03\x01\x02\0\x12\x04\x98\x02\x08?\x1a\xf7\x01\x20Required.\x20\
7561    A\x20one\x20word,\x20unique\x20name\x20for\x20this\x20repository.\x20Thi\
7562    s\x20is\x20\x20the\x20`repo\n\x20id`\x20in\x20the\x20yum\x20config\x20fi\
7563    le\x20and\x20also\x20the\x20`display_name`\x20if\n\x20`display_name`\x20\
7564    is\x20omitted.\x20This\x20id\x20is\x20also\x20used\x20as\x20the\x20uniqu\
7565    e\n\x20identifier\x20when\x20checking\x20for\x20resource\x20conflicts.\n\
7566    \n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\0\x05\x12\x04\x98\x02\x08\
7567    \x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\0\x01\x12\x04\x98\x02\
7568    \x0f\x11\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\0\x03\x12\x04\x98\
7569    \x02\x14\x15\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\0\x08\x12\x04\
7570    \x98\x02\x16>\n\x16\n\x0e\x04\0\x03\x02\x03\x02\x03\x01\x02\0\x08\x9c\
7571    \x08\0\x12\x04\x98\x02\x17=\n9\n\n\x04\0\x03\x02\x03\x02\x03\x01\x02\x01\
7572    \x12\x04\x9b\x02\x08\x20\x1a%\x20The\x20display\x20name\x20of\x20the\x20\
7573    repository.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\x01\x05\x12\
7574    \x04\x9b\x02\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\x01\
7575    \x01\x12\x04\x9b\x02\x0f\x1b\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x01\
7576    \x02\x01\x03\x12\x04\x9b\x02\x1e\x1f\nI\n\n\x04\0\x03\x02\x03\x02\x03\
7577    \x01\x02\x02\x12\x04\x9e\x02\x08E\x1a5\x20Required.\x20The\x20location\
7578    \x20of\x20the\x20repository\x20directory.\n\n\x13\n\x0b\x04\0\x03\x02\
7579    \x03\x02\x03\x01\x02\x02\x05\x12\x04\x9e\x02\x08\x0e\n\x13\n\x0b\x04\0\
7580    \x03\x02\x03\x02\x03\x01\x02\x02\x01\x12\x04\x9e\x02\x0f\x17\n\x13\n\x0b\
7581    \x04\0\x03\x02\x03\x02\x03\x01\x02\x02\x03\x12\x04\x9e\x02\x1a\x1b\n\x13\
7582    \n\x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\x02\x08\x12\x04\x9e\x02\x1cD\n\
7583    \x16\n\x0e\x04\0\x03\x02\x03\x02\x03\x01\x02\x02\x08\x9c\x08\0\x12\x04\
7584    \x9e\x02\x1dC\n'\n\n\x04\0\x03\x02\x03\x02\x03\x01\x02\x03\x12\x04\xa1\
7585    \x02\x08%\x1a\x13\x20URIs\x20of\x20GPG\x20keys.\n\n\x13\n\x0b\x04\0\x03\
7586    \x02\x03\x02\x03\x01\x02\x03\x04\x12\x04\xa1\x02\x08\x10\n\x13\n\x0b\x04\
7587    \0\x03\x02\x03\x02\x03\x01\x02\x03\x05\x12\x04\xa1\x02\x11\x17\n\x13\n\
7588    \x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\x03\x01\x12\x04\xa1\x02\x18\x20\n\
7589    \x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x01\x02\x03\x03\x12\x04\xa1\x02#$\n\
7590    \xa3\x01\n\x08\x04\0\x03\x02\x03\x02\x03\x02\x12\x06\xa7\x02\x06\xb6\x02\
7591    \x07\x1a\x8e\x01\x20Represents\x20a\x20single\x20zypper\x20package\x20re\
7592    pository.\x20These\x20are\x20added\x20to\x20a\n\x20repo\x20file\x20that\
7593    \x20is\x20managed\x20at\n\x20`/etc/zypp/repos.d/google_osconfig.repo`.\n\
7594    \n\x11\n\t\x04\0\x03\x02\x03\x02\x03\x02\x01\x12\x04\xa7\x02\x0e\x1e\n\
7595    \x91\x02\n\n\x04\0\x03\x02\x03\x02\x03\x02\x02\0\x12\x04\xac\x02\x08?\
7596    \x1a\xfc\x01\x20Required.\x20A\x20one\x20word,\x20unique\x20name\x20for\
7597    \x20this\x20repository.\x20This\x20is\x20the\x20`repo\n\x20id`\x20in\x20\
7598    the\x20zypper\x20config\x20file\x20and\x20also\x20the\x20`display_name`\
7599    \x20if\n\x20`display_name`\x20is\x20omitted.\x20This\x20id\x20is\x20also\
7600    \x20used\x20as\x20the\x20unique\n\x20identifier\x20when\x20checking\x20f\
7601    or\x20GuestPolicy\x20conflicts.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\
7602    \x02\x02\0\x05\x12\x04\xac\x02\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x02\
7603    \x03\x02\x02\0\x01\x12\x04\xac\x02\x0f\x11\n\x13\n\x0b\x04\0\x03\x02\x03\
7604    \x02\x03\x02\x02\0\x03\x12\x04\xac\x02\x14\x15\n\x13\n\x0b\x04\0\x03\x02\
7605    \x03\x02\x03\x02\x02\0\x08\x12\x04\xac\x02\x16>\n\x16\n\x0e\x04\0\x03\
7606    \x02\x03\x02\x03\x02\x02\0\x08\x9c\x08\0\x12\x04\xac\x02\x17=\n9\n\n\x04\
7607    \0\x03\x02\x03\x02\x03\x02\x02\x01\x12\x04\xaf\x02\x08\x20\x1a%\x20The\
7608    \x20display\x20name\x20of\x20the\x20repository.\n\n\x13\n\x0b\x04\0\x03\
7609    \x02\x03\x02\x03\x02\x02\x01\x05\x12\x04\xaf\x02\x08\x0e\n\x13\n\x0b\x04\
7610    \0\x03\x02\x03\x02\x03\x02\x02\x01\x01\x12\x04\xaf\x02\x0f\x1b\n\x13\n\
7611    \x0b\x04\0\x03\x02\x03\x02\x03\x02\x02\x01\x03\x12\x04\xaf\x02\x1e\x1f\n\
7612    I\n\n\x04\0\x03\x02\x03\x02\x03\x02\x02\x02\x12\x04\xb2\x02\x08E\x1a5\
7613    \x20Required.\x20The\x20location\x20of\x20the\x20repository\x20directory\
7614    .\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x02\x02\x02\x05\x12\x04\xb2\
7615    \x02\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x02\x02\x02\x01\x12\
7616    \x04\xb2\x02\x0f\x17\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x02\x02\x02\
7617    \x03\x12\x04\xb2\x02\x1a\x1b\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x02\
7618    \x02\x02\x08\x12\x04\xb2\x02\x1cD\n\x16\n\x0e\x04\0\x03\x02\x03\x02\x03\
7619    \x02\x02\x02\x08\x9c\x08\0\x12\x04\xb2\x02\x1dC\n'\n\n\x04\0\x03\x02\x03\
7620    \x02\x03\x02\x02\x03\x12\x04\xb5\x02\x08%\x1a\x13\x20URIs\x20of\x20GPG\
7621    \x20keys.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x02\x02\x03\x04\x12\
7622    \x04\xb5\x02\x08\x10\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x02\x02\x03\
7623    \x05\x12\x04\xb5\x02\x11\x17\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x02\
7624    \x02\x03\x01\x12\x04\xb5\x02\x18\x20\n\x13\n\x0b\x04\0\x03\x02\x03\x02\
7625    \x03\x02\x02\x03\x03\x12\x04\xb5\x02#$\n\xa3\x01\n\x08\x04\0\x03\x02\x03\
7626    \x02\x03\x03\x12\x06\xbb\x02\x06\xc1\x02\x07\x1a\x8e\x01\x20Represents\
7627    \x20a\x20Goo\x20package\x20repository.\x20These\x20are\x20added\x20to\
7628    \x20a\x20repo\x20file\n\x20that\x20is\x20managed\x20at\n\x20`C:/ProgramD\
7629    ata/GooGet/repos/google_osconfig.repo`.\n\n\x11\n\t\x04\0\x03\x02\x03\
7630    \x02\x03\x03\x01\x12\x04\xbb\x02\x0e\x1b\n;\n\n\x04\0\x03\x02\x03\x02\
7631    \x03\x03\x02\0\x12\x04\xbd\x02\x08A\x1a'\x20Required.\x20The\x20name\x20\
7632    of\x20the\x20repository.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x03\x02\
7633    \0\x05\x12\x04\xbd\x02\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\x03\
7634    \x02\0\x01\x12\x04\xbd\x02\x0f\x13\n\x13\n\x0b\x04\0\x03\x02\x03\x02\x03\
7635    \x03\x02\0\x03\x12\x04\xbd\x02\x16\x17\n\x13\n\x0b\x04\0\x03\x02\x03\x02\
7636    \x03\x03\x02\0\x08\x12\x04\xbd\x02\x18@\n\x16\n\x0e\x04\0\x03\x02\x03\
7637    \x02\x03\x03\x02\0\x08\x9c\x08\0\x12\x04\xbd\x02\x19?\n:\n\n\x04\0\x03\
7638    \x02\x03\x02\x03\x03\x02\x01\x12\x04\xc0\x02\x08@\x1a&\x20Required.\x20T\
7639    he\x20url\x20of\x20the\x20repository.\n\n\x13\n\x0b\x04\0\x03\x02\x03\
7640    \x02\x03\x03\x02\x01\x05\x12\x04\xc0\x02\x08\x0e\n\x13\n\x0b\x04\0\x03\
7641    \x02\x03\x02\x03\x03\x02\x01\x01\x12\x04\xc0\x02\x0f\x12\n\x13\n\x0b\x04\
7642    \0\x03\x02\x03\x02\x03\x03\x02\x01\x03\x12\x04\xc0\x02\x15\x16\n\x13\n\
7643    \x0b\x04\0\x03\x02\x03\x02\x03\x03\x02\x01\x08\x12\x04\xc0\x02\x17?\n\
7644    \x16\n\x0e\x04\0\x03\x02\x03\x02\x03\x03\x02\x01\x08\x9c\x08\0\x12\x04\
7645    \xc0\x02\x18>\n4\n\x08\x04\0\x03\x02\x03\x02\x08\0\x12\x06\xc4\x02\x06\
7646    \xd0\x02\x07\x1a\x20\x20A\x20specific\x20type\x20of\x20repository.\n\n\
7647    \x11\n\t\x04\0\x03\x02\x03\x02\x08\0\x01\x12\x04\xc4\x02\x0c\x16\n&\n\
7648    \x08\x04\0\x03\x02\x03\x02\x02\0\x12\x04\xc6\x02\x08\x1e\x1a\x14\x20An\
7649    \x20Apt\x20Repository.\n\n\x11\n\t\x04\0\x03\x02\x03\x02\x02\0\x06\x12\
7650    \x04\xc6\x02\x08\x15\n\x11\n\t\x04\0\x03\x02\x03\x02\x02\0\x01\x12\x04\
7651    \xc6\x02\x16\x19\n\x11\n\t\x04\0\x03\x02\x03\x02\x02\0\x03\x12\x04\xc6\
7652    \x02\x1c\x1d\n%\n\x08\x04\0\x03\x02\x03\x02\x02\x01\x12\x04\xc9\x02\x08\
7653    \x1e\x1a\x13\x20A\x20Yum\x20Repository.\n\n\x11\n\t\x04\0\x03\x02\x03\
7654    \x02\x02\x01\x06\x12\x04\xc9\x02\x08\x15\n\x11\n\t\x04\0\x03\x02\x03\x02\
7655    \x02\x01\x01\x12\x04\xc9\x02\x16\x19\n\x11\n\t\x04\0\x03\x02\x03\x02\x02\
7656    \x01\x03\x12\x04\xc9\x02\x1c\x1d\n(\n\x08\x04\0\x03\x02\x03\x02\x02\x02\
7657    \x12\x04\xcc\x02\x08$\x1a\x16\x20A\x20Zypper\x20Repository.\n\n\x11\n\t\
7658    \x04\0\x03\x02\x03\x02\x02\x02\x06\x12\x04\xcc\x02\x08\x18\n\x11\n\t\x04\
7659    \0\x03\x02\x03\x02\x02\x02\x01\x12\x04\xcc\x02\x19\x1f\n\x11\n\t\x04\0\
7660    \x03\x02\x03\x02\x02\x02\x03\x12\x04\xcc\x02\"#\n%\n\x08\x04\0\x03\x02\
7661    \x03\x02\x02\x03\x12\x04\xcf\x02\x08\x1e\x1a\x13\x20A\x20Goo\x20Reposito\
7662    ry.\n\n\x11\n\t\x04\0\x03\x02\x03\x02\x02\x03\x06\x12\x04\xcf\x02\x08\
7663    \x15\n\x11\n\t\x04\0\x03\x02\x03\x02\x02\x03\x01\x12\x04\xcf\x02\x16\x19\
7664    \n\x11\n\t\x04\0\x03\x02\x03\x02\x02\x03\x03\x12\x04\xcf\x02\x1c\x1d\n\
7665    \x8a\x0b\n\x06\x04\0\x03\x02\x03\x03\x12\x06\xed\x02\x04\xa7\x03\x05\x1a\
7666    \xf7\n\x20A\x20resource\x20that\x20allows\x20executing\x20scripts\x20on\
7667    \x20the\x20VM.\n\n\x20The\x20`ExecResource`\x20has\x202\x20stages:\x20`v\
7668    alidate`\x20and\x20`enforce`\x20and\x20both\x20stages\n\x20accept\x20a\
7669    \x20script\x20as\x20an\x20argument\x20to\x20execute.\n\n\x20When\x20the\
7670    \x20`ExecResource`\x20is\x20applied\x20by\x20the\x20agent,\x20it\x20firs\
7671    t\x20executes\x20the\n\x20script\x20in\x20the\x20`validate`\x20stage.\
7672    \x20The\x20`validate`\x20stage\x20can\x20signal\x20that\x20the\n\x20`Exe\
7673    cResource`\x20is\x20already\x20in\x20the\x20desired\x20state\x20by\x20re\
7674    turning\x20an\x20exit\x20code\n\x20of\x20`100`.\x20If\x20the\x20`ExecRes\
7675    ource`\x20is\x20not\x20in\x20the\x20desired\x20state,\x20it\x20should\n\
7676    \x20return\x20an\x20exit\x20code\x20of\x20`101`.\x20Any\x20other\x20exit\
7677    \x20code\x20returned\x20by\x20this\x20stage\n\x20is\x20considered\x20an\
7678    \x20error.\n\n\x20If\x20the\x20`ExecResource`\x20is\x20not\x20in\x20the\
7679    \x20desired\x20state\x20based\x20on\x20the\x20exit\x20code\n\x20from\x20\
7680    the\x20`validate`\x20stage,\x20the\x20agent\x20proceeds\x20to\x20execute\
7681    \x20the\x20script\x20from\n\x20the\x20`enforce`\x20stage.\x20If\x20the\
7682    \x20`ExecResource`\x20is\x20already\x20in\x20the\x20desired\n\x20state,\
7683    \x20the\x20`enforce`\x20stage\x20will\x20not\x20be\x20run.\n\x20Similar\
7684    \x20to\x20`validate`\x20stage,\x20the\x20`enforce`\x20stage\x20should\
7685    \x20return\x20an\x20exit\n\x20code\x20of\x20`100`\x20to\x20indicate\x20t\
7686    hat\x20the\x20resource\x20in\x20now\x20in\x20its\x20desired\x20state.\n\
7687    \x20Any\x20other\x20exit\x20code\x20is\x20considered\x20an\x20error.\n\n\
7688    \x20NOTE:\x20An\x20exit\x20code\x20of\x20`100`\x20was\x20chosen\x20over\
7689    \x20`0`\x20(and\x20`101`\x20vs\x20`1`)\x20to\n\x20have\x20an\x20explicit\
7690    \x20indicator\x20of\x20`in\x20desired\x20state`,\x20`not\x20in\x20desire\
7691    d\x20state`\n\x20and\x20errors.\x20Because,\x20for\x20example,\x20Powers\
7692    hell\x20will\x20always\x20return\x20an\x20exit\n\x20code\x20of\x20`0`\
7693    \x20unless\x20an\x20`exit`\x20statement\x20is\x20provided\x20in\x20the\
7694    \x20script.\x20So,\x20for\n\x20reasons\x20of\x20consistency\x20and\x20be\
7695    ing\x20explicit,\x20exit\x20codes\x20`100`\x20and\x20`101`\n\x20were\x20\
7696    chosen.\n\n\x0f\n\x07\x04\0\x03\x02\x03\x03\x01\x12\x04\xed\x02\x0c\x18\
7697    \n2\n\x08\x04\0\x03\x02\x03\x03\x03\0\x12\x06\xef\x02\x06\x9b\x03\x07\
7698    \x1a\x1e\x20A\x20file\x20or\x20script\x20to\x20execute.\n\n\x11\n\t\x04\
7699    \0\x03\x02\x03\x03\x03\0\x01\x12\x04\xef\x02\x0e\x12\n/\n\n\x04\0\x03\
7700    \x02\x03\x03\x03\0\x04\0\x12\x06\xf1\x02\x08\x82\x03\t\x1a\x19\x20The\
7701    \x20interpreter\x20to\x20use.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\
7702    \x04\0\x01\x12\x04\xf1\x02\r\x18\nP\n\x0c\x04\0\x03\x02\x03\x03\x03\0\
7703    \x04\0\x02\0\x12\x04\xf3\x02\n&\x1a:\x20Invalid\x20value,\x20the\x20requ\
7704    est\x20will\x20return\x20validation\x20error.\n\n\x15\n\r\x04\0\x03\x02\
7705    \x03\x03\x03\0\x04\0\x02\0\x01\x12\x04\xf3\x02\n!\n\x15\n\r\x04\0\x03\
7706    \x02\x03\x03\x03\0\x04\0\x02\0\x02\x12\x04\xf3\x02$%\n\x98\x02\n\x0c\x04\
7707    \0\x03\x02\x03\x03\x03\0\x04\0\x02\x01\x12\x04\xfa\x02\n\x13\x1a\x81\x02\
7708    \x20If\x20an\x20interpreter\x20is\x20not\x20specified,\x20the\n\x20sourc\
7709    e\x20is\x20executed\x20directly.\x20This\x20execution,\x20without\x20an\
7710    \n\x20interpreter,\x20only\x20succeeds\x20for\x20executables\x20and\x20s\
7711    cripts\x20that\x20have\x20<a\n\x20href=\"https://en.wikipedia.org/wiki/S\
7712    hebang_(Unix)\"\n\x20class=\"external\">shebang\x20lines</a>.\n\n\x15\n\
7713    \r\x04\0\x03\x02\x03\x03\x03\0\x04\0\x02\x01\x01\x12\x04\xfa\x02\n\x0e\n\
7714    \x15\n\r\x04\0\x03\x02\x03\x03\x03\0\x04\0\x02\x01\x02\x12\x04\xfa\x02\
7715    \x11\x12\ni\n\x0c\x04\0\x03\x02\x03\x03\x03\0\x04\0\x02\x02\x12\x04\xfe\
7716    \x02\n\x14\x1aS\x20Indicates\x20that\x20the\x20script\x20runs\x20with\
7717    \x20`/bin/sh`\x20on\x20Linux\x20and\n\x20`cmd.exe`\x20on\x20Windows.\n\n\
7718    \x15\n\r\x04\0\x03\x02\x03\x03\x03\0\x04\0\x02\x02\x01\x12\x04\xfe\x02\n\
7719    \x0f\n\x15\n\r\x04\0\x03\x02\x03\x03\x03\0\x04\0\x02\x02\x02\x12\x04\xfe\
7720    \x02\x12\x13\nG\n\x0c\x04\0\x03\x02\x03\x03\x03\0\x04\0\x02\x03\x12\x04\
7721    \x81\x03\n\x19\x1a1\x20Indicates\x20that\x20the\x20script\x20runs\x20wit\
7722    h\x20PowerShell.\n\n\x15\n\r\x04\0\x03\x02\x03\x03\x03\0\x04\0\x02\x03\
7723    \x01\x12\x04\x81\x03\n\x14\n\x15\n\r\x04\0\x03\x02\x03\x03\x03\0\x04\0\
7724    \x02\x03\x02\x12\x04\x81\x03\x17\x18\n(\n\n\x04\0\x03\x02\x03\x03\x03\0\
7725    \x08\0\x12\x06\x85\x03\x08\x8c\x03\t\x1a\x12\x20What\x20to\x20execute.\n\
7726    \n\x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x08\0\x01\x12\x04\x85\x03\x0e\
7727    \x14\n-\n\n\x04\0\x03\x02\x03\x03\x03\0\x02\0\x12\x04\x87\x03\n\x18\x1a\
7728    \x19\x20A\x20remote\x20or\x20local\x20file.\n\n\x13\n\x0b\x04\0\x03\x02\
7729    \x03\x03\x03\0\x02\0\x06\x12\x04\x87\x03\n\x0e\n\x13\n\x0b\x04\0\x03\x02\
7730    \x03\x03\x03\0\x02\0\x01\x12\x04\x87\x03\x0f\x13\n\x13\n\x0b\x04\0\x03\
7731    \x02\x03\x03\x03\0\x02\0\x03\x12\x04\x87\x03\x16\x17\n^\n\n\x04\0\x03\
7732    \x02\x03\x03\x03\0\x02\x01\x12\x04\x8b\x03\n\x1c\x1aJ\x20An\x20inline\
7733    \x20script.\n\x20The\x20size\x20of\x20the\x20script\x20is\x20limited\x20\
7734    to\x201024\x20characters.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\
7735    \x01\x05\x12\x04\x8b\x03\n\x10\n\x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\
7736    \x02\x01\x01\x12\x04\x8b\x03\x11\x17\n\x13\n\x0b\x04\0\x03\x02\x03\x03\
7737    \x03\0\x02\x01\x03\x12\x04\x8b\x03\x1a\x1b\nP\n\n\x04\0\x03\x02\x03\x03\
7738    \x03\0\x02\x02\x12\x04\x8f\x03\x08!\x1a<\x20Optional\x20arguments\x20to\
7739    \x20pass\x20to\x20the\x20source\x20during\x20execution.\n\n\x13\n\x0b\
7740    \x04\0\x03\x02\x03\x03\x03\0\x02\x02\x04\x12\x04\x8f\x03\x08\x10\n\x13\n\
7741    \x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x02\x05\x12\x04\x8f\x03\x11\x17\n\
7742    \x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x02\x01\x12\x04\x8f\x03\x18\
7743    \x1c\n\x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x02\x03\x12\x04\x8f\x03\
7744    \x1f\x20\n>\n\n\x04\0\x03\x02\x03\x03\x03\0\x02\x03\x12\x04\x92\x03\x08M\
7745    \x1a*\x20Required.\x20The\x20script\x20interpreter\x20to\x20use.\n\n\x13\
7746    \n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x03\x06\x12\x04\x92\x03\x08\x13\n\
7747    \x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x03\x01\x12\x04\x92\x03\x14\
7748    \x1f\n\x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x03\x03\x12\x04\x92\x03\
7749    \"#\n\x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x03\x08\x12\x04\x92\x03$\
7750    L\n\x16\n\x0e\x04\0\x03\x02\x03\x03\x03\0\x02\x03\x08\x9c\x08\0\x12\x04\
7751    \x92\x03%K\n\xcc\x02\n\n\x04\0\x03\x02\x03\x03\x03\0\x02\x04\x12\x04\x9a\
7752    \x03\x08$\x1a\xb7\x02\x20Only\x20recorded\x20for\x20enforce\x20Exec.\n\
7753    \x20Path\x20to\x20an\x20output\x20file\x20(that\x20is\x20created\x20by\
7754    \x20this\x20Exec)\x20whose\n\x20content\x20will\x20be\x20recorded\x20in\
7755    \x20OSPolicyResourceCompliance\x20after\x20a\n\x20successful\x20run.\x20\
7756    Absence\x20or\x20failure\x20to\x20read\x20this\x20file\x20will\x20result\
7757    \x20in\n\x20this\x20ExecResource\x20being\x20non-compliant.\x20Output\
7758    \x20file\x20size\x20is\x20limited\x20to\n\x20100K\x20bytes.\n\n\x13\n\
7759    \x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x04\x05\x12\x04\x9a\x03\x08\x0e\n\
7760    \x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x04\x01\x12\x04\x9a\x03\x0f\
7761    \x1f\n\x13\n\x0b\x04\0\x03\x02\x03\x03\x03\0\x02\x04\x03\x12\x04\x9a\x03\
7762    \"#\n\x83\x02\n\x08\x04\0\x03\x02\x03\x03\x02\0\x12\x04\xa1\x03\x06A\x1a\
7763    \xf0\x01\x20Required.\x20What\x20to\x20run\x20to\x20validate\x20this\x20\
7764    resource\x20is\x20in\x20the\x20desired\x20state.\n\x20An\x20exit\x20code\
7765    \x20of\x20100\x20indicates\x20\"in\x20desired\x20state\",\x20and\x20exit\
7766    \x20code\x20of\x20101\n\x20indicates\x20\"not\x20in\x20desired\x20state\
7767    \".\x20Any\x20other\x20exit\x20code\x20indicates\x20a\n\x20failure\x20ru\
7768    nning\x20validate.\n\n\x11\n\t\x04\0\x03\x02\x03\x03\x02\0\x06\x12\x04\
7769    \xa1\x03\x06\n\n\x11\n\t\x04\0\x03\x02\x03\x03\x02\0\x01\x12\x04\xa1\x03\
7770    \x0b\x13\n\x11\n\t\x04\0\x03\x02\x03\x03\x02\0\x03\x12\x04\xa1\x03\x16\
7771    \x17\n\x11\n\t\x04\0\x03\x02\x03\x03\x02\0\x08\x12\x04\xa1\x03\x18@\n\
7772    \x14\n\x0c\x04\0\x03\x02\x03\x03\x02\0\x08\x9c\x08\0\x12\x04\xa1\x03\x19\
7773    ?\n\xb3\x01\n\x08\x04\0\x03\x02\x03\x03\x02\x01\x12\x04\xa6\x03\x06\x17\
7774    \x1a\xa0\x01\x20What\x20to\x20run\x20to\x20bring\x20this\x20resource\x20\
7775    into\x20the\x20desired\x20state.\n\x20An\x20exit\x20code\x20of\x20100\
7776    \x20indicates\x20\"success\",\x20any\x20other\x20exit\x20code\x20indicat\
7777    es\n\x20a\x20failure\x20running\x20enforce.\n\n\x11\n\t\x04\0\x03\x02\
7778    \x03\x03\x02\x01\x06\x12\x04\xa6\x03\x06\n\n\x11\n\t\x04\0\x03\x02\x03\
7779    \x03\x02\x01\x01\x12\x04\xa6\x03\x0b\x12\n\x11\n\t\x04\0\x03\x02\x03\x03\
7780    \x02\x01\x03\x12\x04\xa6\x03\x15\x16\n@\n\x06\x04\0\x03\x02\x03\x04\x12\
7781    \x06\xaa\x03\x04\xd9\x03\x05\x1a.\x20A\x20resource\x20that\x20manages\
7782    \x20the\x20state\x20of\x20a\x20file.\n\n\x0f\n\x07\x04\0\x03\x02\x03\x04\
7783    \x01\x12\x04\xaa\x03\x0c\x18\n0\n\x08\x04\0\x03\x02\x03\x04\x04\0\x12\
7784    \x06\xac\x03\x06\xb9\x03\x07\x1a\x1c\x20Desired\x20state\x20of\x20the\
7785    \x20file.\n\n\x11\n\t\x04\0\x03\x02\x03\x04\x04\0\x01\x12\x04\xac\x03\
7786    \x0b\x17\n-\n\n\x04\0\x03\x02\x03\x04\x04\0\x02\0\x12\x04\xae\x03\x08&\
7787    \x1a\x19\x20Unspecified\x20is\x20invalid.\n\n\x13\n\x0b\x04\0\x03\x02\
7788    \x03\x04\x04\0\x02\0\x01\x12\x04\xae\x03\x08!\n\x13\n\x0b\x04\0\x03\x02\
7789    \x03\x04\x04\0\x02\0\x02\x12\x04\xae\x03$%\n5\n\n\x04\0\x03\x02\x03\x04\
7790    \x04\0\x02\x01\x12\x04\xb1\x03\x08\x14\x1a!\x20Ensure\x20file\x20at\x20p\
7791    ath\x20is\x20present.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x04\x04\0\x02\x01\
7792    \x01\x12\x04\xb1\x03\x08\x0f\n\x13\n\x0b\x04\0\x03\x02\x03\x04\x04\0\x02\
7793    \x01\x02\x12\x04\xb1\x03\x12\x13\n4\n\n\x04\0\x03\x02\x03\x04\x04\0\x02\
7794    \x02\x12\x04\xb4\x03\x08\x13\x1a\x20\x20Ensure\x20file\x20at\x20path\x20\
7795    is\x20absent.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x04\x04\0\x02\x02\x01\x12\
7796    \x04\xb4\x03\x08\x0e\n\x13\n\x0b\x04\0\x03\x02\x03\x04\x04\0\x02\x02\x02\
7797    \x12\x04\xb4\x03\x11\x12\nv\n\n\x04\0\x03\x02\x03\x04\x04\0\x02\x03\x12\
7798    \x04\xb8\x03\x08\x1b\x1ab\x20Ensure\x20the\x20contents\x20of\x20the\x20f\
7799    ile\x20at\x20path\x20matches.\x20If\x20the\x20file\x20does\n\x20not\x20e\
7800    xist\x20it\x20will\x20be\x20created.\n\n\x13\n\x0b\x04\0\x03\x02\x03\x04\
7801    \x04\0\x02\x03\x01\x12\x04\xb8\x03\x08\x16\n\x13\n\x0b\x04\0\x03\x02\x03\
7802    \x04\x04\0\x02\x03\x02\x12\x04\xb8\x03\x19\x1a\n>\n\x08\x04\0\x03\x02\
7803    \x03\x04\x08\0\x12\x06\xbc\x03\x06\xc3\x03\x07\x1a*\x20The\x20source\x20\
7804    for\x20the\x20contents\x20of\x20the\x20file.\n\n\x11\n\t\x04\0\x03\x02\
7805    \x03\x04\x08\0\x01\x12\x04\xbc\x03\x0c\x12\n-\n\x08\x04\0\x03\x02\x03\
7806    \x04\x02\0\x12\x04\xbe\x03\x08\x16\x1a\x1b\x20A\x20remote\x20or\x20local\
7807    \x20source.\n\n\x11\n\t\x04\0\x03\x02\x03\x04\x02\0\x06\x12\x04\xbe\x03\
7808    \x08\x0c\n\x11\n\t\x04\0\x03\x02\x03\x04\x02\0\x01\x12\x04\xbe\x03\r\x11\
7809    \n\x11\n\t\x04\0\x03\x02\x03\x04\x02\0\x03\x12\x04\xbe\x03\x14\x15\ng\n\
7810    \x08\x04\0\x03\x02\x03\x04\x02\x01\x12\x04\xc2\x03\x08\x1b\x1aU\x20A\x20\
7811    a\x20file\x20with\x20this\x20content.\n\x20The\x20size\x20of\x20the\x20c\
7812    ontent\x20is\x20limited\x20to\x201024\x20characters.\n\n\x11\n\t\x04\0\
7813    \x03\x02\x03\x04\x02\x01\x05\x12\x04\xc2\x03\x08\x0e\n\x11\n\t\x04\0\x03\
7814    \x02\x03\x04\x02\x01\x01\x12\x04\xc2\x03\x0f\x16\n\x11\n\t\x04\0\x03\x02\
7815    \x03\x04\x02\x01\x03\x12\x04\xc2\x03\x19\x1a\nJ\n\x08\x04\0\x03\x02\x03\
7816    \x04\x02\x02\x12\x04\xc6\x03\x06?\x1a8\x20Required.\x20The\x20absolute\
7817    \x20path\x20of\x20the\x20file\x20within\x20the\x20VM.\n\n\x11\n\t\x04\0\
7818    \x03\x02\x03\x04\x02\x02\x05\x12\x04\xc6\x03\x06\x0c\n\x11\n\t\x04\0\x03\
7819    \x02\x03\x04\x02\x02\x01\x12\x04\xc6\x03\r\x11\n\x11\n\t\x04\0\x03\x02\
7820    \x03\x04\x02\x02\x03\x12\x04\xc6\x03\x14\x15\n\x11\n\t\x04\0\x03\x02\x03\
7821    \x04\x02\x02\x08\x12\x04\xc6\x03\x16>\n\x14\n\x0c\x04\0\x03\x02\x03\x04\
7822    \x02\x02\x08\x9c\x08\0\x12\x04\xc6\x03\x17=\n8\n\x08\x04\0\x03\x02\x03\
7823    \x04\x02\x03\x12\x04\xc9\x03\x06F\x1a&\x20Required.\x20Desired\x20state\
7824    \x20of\x20the\x20file.\n\n\x11\n\t\x04\0\x03\x02\x03\x04\x02\x03\x06\x12\
7825    \x04\xc9\x03\x06\x12\n\x11\n\t\x04\0\x03\x02\x03\x04\x02\x03\x01\x12\x04\
7826    \xc9\x03\x13\x18\n\x11\n\t\x04\0\x03\x02\x03\x04\x02\x03\x03\x12\x04\xc9\
7827    \x03\x1b\x1c\n\x11\n\t\x04\0\x03\x02\x03\x04\x02\x03\x08\x12\x04\xc9\x03\
7828    \x1dE\n\x14\n\x0c\x04\0\x03\x02\x03\x04\x02\x03\x08\x9c\x08\0\x12\x04\
7829    \xc9\x03\x1eD\n\xc7\x04\n\x08\x04\0\x03\x02\x03\x04\x02\x04\x12\x04\xd8\
7830    \x03\x06\x1d\x1a\xb4\x04\x20Consists\x20of\x20three\x20octal\x20digits\
7831    \x20which\x20represent,\x20in\n\x20order,\x20the\x20permissions\x20of\
7832    \x20the\x20owner,\x20group,\x20and\x20other\x20users\x20for\x20the\n\x20\
7833    file\x20(similarly\x20to\x20the\x20numeric\x20mode\x20used\x20in\x20the\
7834    \x20linux\x20chmod\n\x20utility).\x20Each\x20digit\x20represents\x20a\
7835    \x20three\x20bit\x20number\x20with\x20the\x204\x20bit\n\x20corresponding\
7836    \x20to\x20the\x20read\x20permissions,\x20the\x202\x20bit\x20corresponds\
7837    \x20to\x20the\n\x20write\x20bit,\x20and\x20the\x20one\x20bit\x20correspo\
7838    nds\x20to\x20the\x20execute\x20permission.\n\x20Default\x20behavior\x20i\
7839    s\x20755.\n\n\x20Below\x20are\x20some\x20examples\x20of\x20permissions\
7840    \x20and\x20their\x20associated\x20values:\n\x20read,\x20write,\x20and\
7841    \x20execute:\x207\n\x20read\x20and\x20execute:\x205\n\x20read\x20and\x20\
7842    write:\x206\n\x20read\x20only:\x204\n\n\x11\n\t\x04\0\x03\x02\x03\x04\
7843    \x02\x04\x05\x12\x04\xd8\x03\x06\x0c\n\x11\n\t\x04\0\x03\x02\x03\x04\x02\
7844    \x04\x01\x12\x04\xd8\x03\r\x18\n\x11\n\t\x04\0\x03\x02\x03\x04\x02\x04\
7845    \x03\x12\x04\xd8\x03\x1b\x1c\n\xa3\x02\n\x06\x04\0\x03\x02\x02\0\x12\x04\
7846    \xe2\x03\x04;\x1a\x92\x02\x20Required.\x20The\x20id\x20of\x20the\x20reso\
7847    urce\x20with\x20the\x20following\x20restrictions:\n\n\x20*\x20Must\x20co\
7848    ntain\x20only\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens.\n\
7849    \x20*\x20Must\x20start\x20with\x20a\x20letter.\n\x20*\x20Must\x20be\x20b\
7850    etween\x201-63\x20characters.\n\x20*\x20Must\x20end\x20with\x20a\x20numb\
7851    er\x20or\x20a\x20letter.\n\x20*\x20Must\x20be\x20unique\x20within\x20the\
7852    \x20OS\x20policy.\n\n\x0f\n\x07\x04\0\x03\x02\x02\0\x05\x12\x04\xe2\x03\
7853    \x04\n\n\x0f\n\x07\x04\0\x03\x02\x02\0\x01\x12\x04\xe2\x03\x0b\r\n\x0f\n\
7854    \x07\x04\0\x03\x02\x02\0\x03\x12\x04\xe2\x03\x10\x11\n\x0f\n\x07\x04\0\
7855    \x03\x02\x02\0\x08\x12\x04\xe2\x03\x12:\n\x12\n\n\x04\0\x03\x02\x02\0\
7856    \x08\x9c\x08\0\x12\x04\xe2\x03\x139\n\"\n\x06\x04\0\x03\x02\x08\0\x12\
7857    \x06\xe5\x03\x04\xf1\x03\x05\x1a\x10\x20Resource\x20type.\n\n\x0f\n\x07\
7858    \x04\0\x03\x02\x08\0\x01\x12\x04\xe5\x03\n\x17\n\"\n\x06\x04\0\x03\x02\
7859    \x02\x01\x12\x04\xe7\x03\x06\x1e\x1a\x12\x20Package\x20resource\n\n\x0f\
7860    \n\x07\x04\0\x03\x02\x02\x01\x06\x12\x04\xe7\x03\x06\x15\n\x0f\n\x07\x04\
7861    \0\x03\x02\x02\x01\x01\x12\x04\xe7\x03\x16\x19\n\x0f\n\x07\x04\0\x03\x02\
7862    \x02\x01\x03\x12\x04\xe7\x03\x1c\x1d\n-\n\x06\x04\0\x03\x02\x02\x02\x12\
7863    \x04\xea\x03\x06(\x1a\x1d\x20Package\x20repository\x20resource\n\n\x0f\n\
7864    \x07\x04\0\x03\x02\x02\x02\x06\x12\x04\xea\x03\x06\x18\n\x0f\n\x07\x04\0\
7865    \x03\x02\x02\x02\x01\x12\x04\xea\x03\x19#\n\x0f\n\x07\x04\0\x03\x02\x02\
7866    \x02\x03\x12\x04\xea\x03&'\n\x1f\n\x06\x04\0\x03\x02\x02\x03\x12\x04\xed\
7867    \x03\x06\x1c\x1a\x0f\x20Exec\x20resource\n\n\x0f\n\x07\x04\0\x03\x02\x02\
7868    \x03\x06\x12\x04\xed\x03\x06\x12\n\x0f\n\x07\x04\0\x03\x02\x02\x03\x01\
7869    \x12\x04\xed\x03\x13\x17\n\x0f\n\x07\x04\0\x03\x02\x02\x03\x03\x12\x04\
7870    \xed\x03\x1a\x1b\n\x1f\n\x06\x04\0\x03\x02\x02\x04\x12\x04\xf0\x03\x06\
7871    \x1c\x1a\x0f\x20File\x20resource\n\n\x0f\n\x07\x04\0\x03\x02\x02\x04\x06\
7872    \x12\x04\xf0\x03\x06\x12\n\x0f\n\x07\x04\0\x03\x02\x02\x04\x01\x12\x04\
7873    \xf0\x03\x13\x17\n\x0f\n\x07\x04\0\x03\x02\x02\x04\x03\x12\x04\xf0\x03\
7874    \x1a\x1b\n\x86\x03\n\x04\x04\0\x03\x03\x12\x06\xfc\x03\x02\x93\x04\x03\
7875    \x1a\xf5\x02\x20Resource\x20groups\x20provide\x20a\x20mechanism\x20to\
7876    \x20group\x20OS\x20policy\x20resources.\n\n\x20Resource\x20groups\x20ena\
7877    ble\x20OS\x20policy\x20authors\x20to\x20create\x20a\x20single\x20OS\x20p\
7878    olicy\n\x20to\x20be\x20applied\x20to\x20VMs\x20running\x20different\x20o\
7879    perating\x20Systems.\n\n\x20When\x20the\x20OS\x20policy\x20is\x20applied\
7880    \x20to\x20a\x20target\x20VM,\x20the\x20appropriate\x20resource\n\x20grou\
7881    p\x20within\x20the\x20OS\x20policy\x20is\x20selected\x20based\x20on\x20t\
7882    he\x20`OSFilter`\x20specified\n\x20within\x20the\x20resource\x20group.\n\
7883    \n\r\n\x05\x04\0\x03\x03\x01\x12\x04\xfc\x03\n\x17\n|\n\x06\x04\0\x03\
7884    \x03\x02\0\x12\x04\xff\x03\x04/\x1al\x20Deprecated.\x20Use\x20the\x20`in\
7885    ventory_filters`\x20field\x20instead.\n\x20Used\x20to\x20specify\x20the\
7886    \x20OS\x20filter\x20for\x20a\x20resource\x20group\n\n\x0f\n\x07\x04\0\
7887    \x03\x03\x02\0\x06\x12\x04\xff\x03\x04\x0c\n\x0f\n\x07\x04\0\x03\x03\x02\
7888    \0\x01\x12\x04\xff\x03\r\x16\n\x0f\n\x07\x04\0\x03\x03\x02\0\x03\x12\x04\
7889    \xff\x03\x19\x1a\n\x0f\n\x07\x04\0\x03\x03\x02\0\x08\x12\x04\xff\x03\x1b\
7890    .\n\x10\n\x08\x04\0\x03\x03\x02\0\x08\x03\x12\x04\xff\x03\x1c-\n\xa3\x04\
7891    \n\x06\x04\0\x03\x03\x02\x01\x12\x04\x8e\x04\x043\x1a\x92\x04\x20List\
7892    \x20of\x20inventory\x20filters\x20for\x20the\x20resource\x20group.\n\n\
7893    \x20The\x20resources\x20in\x20this\x20resource\x20group\x20are\x20applie\
7894    d\x20to\x20the\x20target\x20VM\x20if\x20it\n\x20satisfies\x20at\x20least\
7895    \x20one\x20of\x20the\x20following\x20inventory\x20filters.\n\n\x20For\
7896    \x20example,\x20to\x20apply\x20this\x20resource\x20group\x20to\x20VMs\
7897    \x20running\x20either\x20`RHEL`\x20or\n\x20`CentOS`\x20operating\x20syst\
7898    ems,\x20specify\x202\x20items\x20for\x20the\x20list\x20with\x20following\
7899    \n\x20values:\n\x20inventory_filters[0].os_short_name='rhel'\x20and\n\
7900    \x20inventory_filters[1].os_short_name='centos'\n\n\x20If\x20the\x20list\
7901    \x20is\x20empty,\x20this\x20resource\x20group\x20will\x20be\x20applied\
7902    \x20to\x20the\x20target\n\x20VM\x20unconditionally.\n\n\x0f\n\x07\x04\0\
7903    \x03\x03\x02\x01\x04\x12\x04\x8e\x04\x04\x0c\n\x0f\n\x07\x04\0\x03\x03\
7904    \x02\x01\x06\x12\x04\x8e\x04\r\x1c\n\x0f\n\x07\x04\0\x03\x03\x02\x01\x01\
7905    \x12\x04\x8e\x04\x1d.\n\x0f\n\x07\x04\0\x03\x03\x02\x01\x03\x12\x04\x8e\
7906    \x0412\n\x91\x01\n\x06\x04\0\x03\x03\x02\x02\x12\x04\x92\x04\x04M\x1a\
7907    \x80\x01\x20Required.\x20List\x20of\x20resources\x20configured\x20for\
7908    \x20this\x20resource\x20group.\n\x20The\x20resources\x20are\x20executed\
7909    \x20in\x20the\x20exact\x20order\x20specified\x20here.\n\n\x0f\n\x07\x04\
7910    \0\x03\x03\x02\x02\x04\x12\x04\x92\x04\x04\x0c\n\x0f\n\x07\x04\0\x03\x03\
7911    \x02\x02\x06\x12\x04\x92\x04\r\x15\n\x0f\n\x07\x04\0\x03\x03\x02\x02\x01\
7912    \x12\x04\x92\x04\x16\x1f\n\x0f\n\x07\x04\0\x03\x03\x02\x02\x03\x12\x04\
7913    \x92\x04\"#\n\x0f\n\x07\x04\0\x03\x03\x02\x02\x08\x12\x04\x92\x04$L\n\
7914    \x12\n\n\x04\0\x03\x03\x02\x02\x08\x9c\x08\0\x12\x04\x92\x04%K\n\xa3\x02\
7915    \n\x04\x04\0\x02\0\x12\x04\x9c\x04\x029\x1a\x94\x02\x20Required.\x20The\
7916    \x20id\x20of\x20the\x20OS\x20policy\x20with\x20the\x20following\x20restr\
7917    ictions:\n\n\x20*\x20Must\x20contain\x20only\x20lowercase\x20letters,\
7918    \x20numbers,\x20and\x20hyphens.\n\x20*\x20Must\x20start\x20with\x20a\x20\
7919    letter.\n\x20*\x20Must\x20be\x20between\x201-63\x20characters.\n\x20*\
7920    \x20Must\x20end\x20with\x20a\x20number\x20or\x20a\x20letter.\n\x20*\x20M\
7921    ust\x20be\x20unique\x20within\x20the\x20assignment.\n\n\r\n\x05\x04\0\
7922    \x02\0\x05\x12\x04\x9c\x04\x02\x08\n\r\n\x05\x04\0\x02\0\x01\x12\x04\x9c\
7923    \x04\t\x0b\n\r\n\x05\x04\0\x02\0\x03\x12\x04\x9c\x04\x0e\x0f\n\r\n\x05\
7924    \x04\0\x02\0\x08\x12\x04\x9c\x04\x108\n\x10\n\x08\x04\0\x02\0\x08\x9c\
7925    \x08\0\x12\x04\x9c\x04\x117\n]\n\x04\x04\0\x02\x01\x12\x04\xa0\x04\x02\
7926    \x19\x1aO\x20Policy\x20description.\n\x20Length\x20of\x20the\x20descript\
7927    ion\x20is\x20limited\x20to\x201024\x20characters.\n\n\r\n\x05\x04\0\x02\
7928    \x01\x05\x12\x04\xa0\x04\x02\x08\n\r\n\x05\x04\0\x02\x01\x01\x12\x04\xa0\
7929    \x04\t\x14\n\r\n\x05\x04\0\x02\x01\x03\x12\x04\xa0\x04\x17\x18\n%\n\x04\
7930    \x04\0\x02\x02\x12\x04\xa3\x04\x029\x1a\x17\x20Required.\x20Policy\x20mo\
7931    de\n\n\r\n\x05\x04\0\x02\x02\x06\x12\x04\xa3\x04\x02\x06\n\r\n\x05\x04\0\
7932    \x02\x02\x01\x12\x04\xa3\x04\x07\x0b\n\r\n\x05\x04\0\x02\x02\x03\x12\x04\
7933    \xa3\x04\x0e\x0f\n\r\n\x05\x04\0\x02\x02\x08\x12\x04\xa3\x04\x108\n\x10\
7934    \n\x08\x04\0\x02\x02\x08\x9c\x08\0\x12\x04\xa3\x04\x117\n\xa6\x03\n\x04\
7935    \x04\0\x02\x03\x12\x04\xad\x04\x02V\x1a\x97\x03\x20Required.\x20List\x20\
7936    of\x20resource\x20groups\x20for\x20the\x20policy.\n\x20For\x20a\x20parti\
7937    cular\x20VM,\x20resource\x20groups\x20are\x20evaluated\x20in\x20the\x20o\
7938    rder\x20specified\n\x20and\x20the\x20first\x20resource\x20group\x20that\
7939    \x20is\x20applicable\x20is\x20selected\x20and\x20the\x20rest\n\x20are\
7940    \x20ignored.\n\n\x20If\x20none\x20of\x20the\x20resource\x20groups\x20are\
7941    \x20applicable\x20for\x20a\x20VM,\x20the\x20VM\x20is\n\x20considered\x20\
7942    to\x20be\x20non-compliant\x20w.r.t\x20this\x20policy.\x20This\x20behavio\
7943    r\x20can\x20be\n\x20toggled\x20by\x20the\x20flag\x20`allow_no_resource_g\
7944    roup_match`\n\n\r\n\x05\x04\0\x02\x03\x04\x12\x04\xad\x04\x02\n\n\r\n\
7945    \x05\x04\0\x02\x03\x06\x12\x04\xad\x04\x0b\x18\n\r\n\x05\x04\0\x02\x03\
7946    \x01\x12\x04\xad\x04\x19(\n\r\n\x05\x04\0\x02\x03\x03\x12\x04\xad\x04+,\
7947    \n\r\n\x05\x04\0\x02\x03\x08\x12\x04\xad\x04-U\n\x10\n\x08\x04\0\x02\x03\
7948    \x08\x9c\x08\0\x12\x04\xad\x04.T\n\x94\x02\n\x04\x04\0\x02\x04\x12\x04\
7949    \xb3\x04\x02)\x1a\x85\x02\x20This\x20flag\x20determines\x20the\x20OS\x20\
7950    policy\x20compliance\x20status\x20when\x20none\x20of\x20the\n\x20resourc\
7951    e\x20groups\x20within\x20the\x20policy\x20are\x20applicable\x20for\x20a\
7952    \x20VM.\x20Set\x20this\x20value\n\x20to\x20`true`\x20if\x20the\x20policy\
7953    \x20needs\x20to\x20be\x20reported\x20as\x20compliant\x20even\x20if\x20th\
7954    e\n\x20policy\x20has\x20nothing\x20to\x20validate\x20or\x20enforce.\n\n\
7955    \r\n\x05\x04\0\x02\x04\x05\x12\x04\xb3\x04\x02\x06\n\r\n\x05\x04\0\x02\
7956    \x04\x01\x12\x04\xb3\x04\x07$\n\r\n\x05\x04\0\x02\x04\x03\x12\x04\xb3\
7957    \x04'(b\x06proto3\
7958";
7959
7960static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
7961
7962fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
7963    ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
7964}
7965
7966pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
7967    file_descriptor_proto_lazy.get(|| {
7968        parse_descriptor_proto()
7969    })
7970}