tensorflow_serving_client/
file_system_storage_path_source.rs

1// This file is generated by rust-protobuf 2.14.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#![cfg_attr(rustfmt, rustfmt_skip)]
9
10#![allow(box_pointers)]
11#![allow(dead_code)]
12#![allow(missing_docs)]
13#![allow(non_camel_case_types)]
14#![allow(non_snake_case)]
15#![allow(non_upper_case_globals)]
16#![allow(trivial_casts)]
17#![allow(unsafe_code)]
18#![allow(unused_imports)]
19#![allow(unused_results)]
20//! Generated file from `tensorflow_serving/sources/storage_path/file_system_storage_path_source.proto`
21
22use protobuf::Message as Message_imported_for_functions;
23use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
24
25/// Generated files are compatible only with the same version
26/// of protobuf runtime.
27// const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_14_0;
28
29#[derive(PartialEq,Clone,Default)]
30pub struct FileSystemStoragePathSourceConfig {
31    // message fields
32    pub servables: ::protobuf::RepeatedField<FileSystemStoragePathSourceConfig_ServableToMonitor>,
33    pub servable_name: ::std::string::String,
34    pub base_path: ::std::string::String,
35    pub file_system_poll_wait_seconds: i64,
36    pub fail_if_zero_versions_at_startup: bool,
37    pub servable_versions_always_present: bool,
38    // special fields
39    pub unknown_fields: ::protobuf::UnknownFields,
40    pub cached_size: ::protobuf::CachedSize,
41}
42
43impl<'a> ::std::default::Default for &'a FileSystemStoragePathSourceConfig {
44    fn default() -> &'a FileSystemStoragePathSourceConfig {
45        <FileSystemStoragePathSourceConfig as ::protobuf::Message>::default_instance()
46    }
47}
48
49impl FileSystemStoragePathSourceConfig {
50    pub fn new() -> FileSystemStoragePathSourceConfig {
51        ::std::default::Default::default()
52    }
53
54    // repeated .tensorflow.serving.FileSystemStoragePathSourceConfig.ServableToMonitor servables = 5;
55
56
57    pub fn get_servables(&self) -> &[FileSystemStoragePathSourceConfig_ServableToMonitor] {
58        &self.servables
59    }
60    pub fn clear_servables(&mut self) {
61        self.servables.clear();
62    }
63
64    // Param is passed by value, moved
65    pub fn set_servables(&mut self, v: ::protobuf::RepeatedField<FileSystemStoragePathSourceConfig_ServableToMonitor>) {
66        self.servables = v;
67    }
68
69    // Mutable pointer to the field.
70    pub fn mut_servables(&mut self) -> &mut ::protobuf::RepeatedField<FileSystemStoragePathSourceConfig_ServableToMonitor> {
71        &mut self.servables
72    }
73
74    // Take field
75    pub fn take_servables(&mut self) -> ::protobuf::RepeatedField<FileSystemStoragePathSourceConfig_ServableToMonitor> {
76        ::std::mem::replace(&mut self.servables, ::protobuf::RepeatedField::new())
77    }
78
79    // string servable_name = 1;
80
81
82    pub fn get_servable_name(&self) -> &str {
83        &self.servable_name
84    }
85    pub fn clear_servable_name(&mut self) {
86        self.servable_name.clear();
87    }
88
89    // Param is passed by value, moved
90    pub fn set_servable_name(&mut self, v: ::std::string::String) {
91        self.servable_name = v;
92    }
93
94    // Mutable pointer to the field.
95    // If field is not initialized, it is initialized with default value first.
96    pub fn mut_servable_name(&mut self) -> &mut ::std::string::String {
97        &mut self.servable_name
98    }
99
100    // Take field
101    pub fn take_servable_name(&mut self) -> ::std::string::String {
102        ::std::mem::replace(&mut self.servable_name, ::std::string::String::new())
103    }
104
105    // string base_path = 2;
106
107
108    pub fn get_base_path(&self) -> &str {
109        &self.base_path
110    }
111    pub fn clear_base_path(&mut self) {
112        self.base_path.clear();
113    }
114
115    // Param is passed by value, moved
116    pub fn set_base_path(&mut self, v: ::std::string::String) {
117        self.base_path = v;
118    }
119
120    // Mutable pointer to the field.
121    // If field is not initialized, it is initialized with default value first.
122    pub fn mut_base_path(&mut self) -> &mut ::std::string::String {
123        &mut self.base_path
124    }
125
126    // Take field
127    pub fn take_base_path(&mut self) -> ::std::string::String {
128        ::std::mem::replace(&mut self.base_path, ::std::string::String::new())
129    }
130
131    // int64 file_system_poll_wait_seconds = 3;
132
133
134    pub fn get_file_system_poll_wait_seconds(&self) -> i64 {
135        self.file_system_poll_wait_seconds
136    }
137    pub fn clear_file_system_poll_wait_seconds(&mut self) {
138        self.file_system_poll_wait_seconds = 0;
139    }
140
141    // Param is passed by value, moved
142    pub fn set_file_system_poll_wait_seconds(&mut self, v: i64) {
143        self.file_system_poll_wait_seconds = v;
144    }
145
146    // bool fail_if_zero_versions_at_startup = 4;
147
148
149    pub fn get_fail_if_zero_versions_at_startup(&self) -> bool {
150        self.fail_if_zero_versions_at_startup
151    }
152    pub fn clear_fail_if_zero_versions_at_startup(&mut self) {
153        self.fail_if_zero_versions_at_startup = false;
154    }
155
156    // Param is passed by value, moved
157    pub fn set_fail_if_zero_versions_at_startup(&mut self, v: bool) {
158        self.fail_if_zero_versions_at_startup = v;
159    }
160
161    // bool servable_versions_always_present = 6;
162
163
164    pub fn get_servable_versions_always_present(&self) -> bool {
165        self.servable_versions_always_present
166    }
167    pub fn clear_servable_versions_always_present(&mut self) {
168        self.servable_versions_always_present = false;
169    }
170
171    // Param is passed by value, moved
172    pub fn set_servable_versions_always_present(&mut self, v: bool) {
173        self.servable_versions_always_present = v;
174    }
175}
176
177impl ::protobuf::Message for FileSystemStoragePathSourceConfig {
178    fn is_initialized(&self) -> bool {
179        for v in &self.servables {
180            if !v.is_initialized() {
181                return false;
182            }
183        };
184        true
185    }
186
187    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
188        while !is.eof()? {
189            let (field_number, wire_type) = is.read_tag_unpack()?;
190            match field_number {
191                5 => {
192                    ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.servables)?;
193                },
194                1 => {
195                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.servable_name)?;
196                },
197                2 => {
198                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.base_path)?;
199                },
200                3 => {
201                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
202                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
203                    }
204                    let tmp = is.read_int64()?;
205                    self.file_system_poll_wait_seconds = tmp;
206                },
207                4 => {
208                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
209                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
210                    }
211                    let tmp = is.read_bool()?;
212                    self.fail_if_zero_versions_at_startup = tmp;
213                },
214                6 => {
215                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
216                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
217                    }
218                    let tmp = is.read_bool()?;
219                    self.servable_versions_always_present = tmp;
220                },
221                _ => {
222                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
223                },
224            };
225        }
226        ::std::result::Result::Ok(())
227    }
228
229    // Compute sizes of nested messages
230    #[allow(unused_variables)]
231    fn compute_size(&self) -> u32 {
232        let mut my_size = 0;
233        for value in &self.servables {
234            let len = value.compute_size();
235            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
236        };
237        if !self.servable_name.is_empty() {
238            my_size += ::protobuf::rt::string_size(1, &self.servable_name);
239        }
240        if !self.base_path.is_empty() {
241            my_size += ::protobuf::rt::string_size(2, &self.base_path);
242        }
243        if self.file_system_poll_wait_seconds != 0 {
244            my_size += ::protobuf::rt::value_size(3, self.file_system_poll_wait_seconds, ::protobuf::wire_format::WireTypeVarint);
245        }
246        if self.fail_if_zero_versions_at_startup != false {
247            my_size += 2;
248        }
249        if self.servable_versions_always_present != false {
250            my_size += 2;
251        }
252        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
253        self.cached_size.set(my_size);
254        my_size
255    }
256
257    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
258        for v in &self.servables {
259            os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
260            os.write_raw_varint32(v.get_cached_size())?;
261            v.write_to_with_cached_sizes(os)?;
262        };
263        if !self.servable_name.is_empty() {
264            os.write_string(1, &self.servable_name)?;
265        }
266        if !self.base_path.is_empty() {
267            os.write_string(2, &self.base_path)?;
268        }
269        if self.file_system_poll_wait_seconds != 0 {
270            os.write_int64(3, self.file_system_poll_wait_seconds)?;
271        }
272        if self.fail_if_zero_versions_at_startup != false {
273            os.write_bool(4, self.fail_if_zero_versions_at_startup)?;
274        }
275        if self.servable_versions_always_present != false {
276            os.write_bool(6, self.servable_versions_always_present)?;
277        }
278        os.write_unknown_fields(self.get_unknown_fields())?;
279        ::std::result::Result::Ok(())
280    }
281
282    fn get_cached_size(&self) -> u32 {
283        self.cached_size.get()
284    }
285
286    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
287        &self.unknown_fields
288    }
289
290    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
291        &mut self.unknown_fields
292    }
293
294    fn as_any(&self) -> &dyn (::std::any::Any) {
295        self as &dyn (::std::any::Any)
296    }
297    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
298        self as &mut dyn (::std::any::Any)
299    }
300    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
301        self
302    }
303
304    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
305        Self::descriptor_static()
306    }
307
308    fn new() -> FileSystemStoragePathSourceConfig {
309        FileSystemStoragePathSourceConfig::new()
310    }
311
312    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
313        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
314        unsafe {
315            descriptor.get(|| {
316                let mut fields = ::std::vec::Vec::new();
317                fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<FileSystemStoragePathSourceConfig_ServableToMonitor>>(
318                    "servables",
319                    |m: &FileSystemStoragePathSourceConfig| { &m.servables },
320                    |m: &mut FileSystemStoragePathSourceConfig| { &mut m.servables },
321                ));
322                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
323                    "servable_name",
324                    |m: &FileSystemStoragePathSourceConfig| { &m.servable_name },
325                    |m: &mut FileSystemStoragePathSourceConfig| { &mut m.servable_name },
326                ));
327                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
328                    "base_path",
329                    |m: &FileSystemStoragePathSourceConfig| { &m.base_path },
330                    |m: &mut FileSystemStoragePathSourceConfig| { &mut m.base_path },
331                ));
332                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
333                    "file_system_poll_wait_seconds",
334                    |m: &FileSystemStoragePathSourceConfig| { &m.file_system_poll_wait_seconds },
335                    |m: &mut FileSystemStoragePathSourceConfig| { &mut m.file_system_poll_wait_seconds },
336                ));
337                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
338                    "fail_if_zero_versions_at_startup",
339                    |m: &FileSystemStoragePathSourceConfig| { &m.fail_if_zero_versions_at_startup },
340                    |m: &mut FileSystemStoragePathSourceConfig| { &mut m.fail_if_zero_versions_at_startup },
341                ));
342                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
343                    "servable_versions_always_present",
344                    |m: &FileSystemStoragePathSourceConfig| { &m.servable_versions_always_present },
345                    |m: &mut FileSystemStoragePathSourceConfig| { &mut m.servable_versions_always_present },
346                ));
347                ::protobuf::reflect::MessageDescriptor::new_pb_name::<FileSystemStoragePathSourceConfig>(
348                    "FileSystemStoragePathSourceConfig",
349                    fields,
350                    file_descriptor_proto()
351                )
352            })
353        }
354    }
355
356    fn default_instance() -> &'static FileSystemStoragePathSourceConfig {
357        static mut instance: ::protobuf::lazy::Lazy<FileSystemStoragePathSourceConfig> = ::protobuf::lazy::Lazy::INIT;
358        unsafe {
359            instance.get(FileSystemStoragePathSourceConfig::new)
360        }
361    }
362}
363
364impl ::protobuf::Clear for FileSystemStoragePathSourceConfig {
365    fn clear(&mut self) {
366        self.servables.clear();
367        self.servable_name.clear();
368        self.base_path.clear();
369        self.file_system_poll_wait_seconds = 0;
370        self.fail_if_zero_versions_at_startup = false;
371        self.servable_versions_always_present = false;
372        self.unknown_fields.clear();
373    }
374}
375
376impl ::std::fmt::Debug for FileSystemStoragePathSourceConfig {
377    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
378        ::protobuf::text_format::fmt(self, f)
379    }
380}
381
382impl ::protobuf::reflect::ProtobufValue for FileSystemStoragePathSourceConfig {
383    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
384        ::protobuf::reflect::ReflectValueRef::Message(self)
385    }
386}
387
388#[derive(PartialEq,Clone,Default)]
389pub struct FileSystemStoragePathSourceConfig_ServableVersionPolicy {
390    // message oneof groups
391    pub policy_choice: ::std::option::Option<FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice>,
392    // special fields
393    pub unknown_fields: ::protobuf::UnknownFields,
394    pub cached_size: ::protobuf::CachedSize,
395}
396
397impl<'a> ::std::default::Default for &'a FileSystemStoragePathSourceConfig_ServableVersionPolicy {
398    fn default() -> &'a FileSystemStoragePathSourceConfig_ServableVersionPolicy {
399        <FileSystemStoragePathSourceConfig_ServableVersionPolicy as ::protobuf::Message>::default_instance()
400    }
401}
402
403#[derive(Clone,PartialEq,Debug)]
404pub enum FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice {
405    latest(FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest),
406    all(FileSystemStoragePathSourceConfig_ServableVersionPolicy_All),
407    specific(FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific),
408}
409
410impl FileSystemStoragePathSourceConfig_ServableVersionPolicy {
411    pub fn new() -> FileSystemStoragePathSourceConfig_ServableVersionPolicy {
412        ::std::default::Default::default()
413    }
414
415    // .tensorflow.serving.FileSystemStoragePathSourceConfig.ServableVersionPolicy.Latest latest = 100;
416
417
418    pub fn get_latest(&self) -> &FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
419        match self.policy_choice {
420            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(ref v)) => v,
421            _ => FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest::default_instance(),
422        }
423    }
424    pub fn clear_latest(&mut self) {
425        self.policy_choice = ::std::option::Option::None;
426    }
427
428    pub fn has_latest(&self) -> bool {
429        match self.policy_choice {
430            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(..)) => true,
431            _ => false,
432        }
433    }
434
435    // Param is passed by value, moved
436    pub fn set_latest(&mut self, v: FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest) {
437        self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(v))
438    }
439
440    // Mutable pointer to the field.
441    pub fn mut_latest(&mut self) -> &mut FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
442        if let ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(_)) = self.policy_choice {
443        } else {
444            self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest::new()));
445        }
446        match self.policy_choice {
447            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(ref mut v)) => v,
448            _ => panic!(),
449        }
450    }
451
452    // Take field
453    pub fn take_latest(&mut self) -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
454        if self.has_latest() {
455            match self.policy_choice.take() {
456                ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(v)) => v,
457                _ => panic!(),
458            }
459        } else {
460            FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest::new()
461        }
462    }
463
464    // .tensorflow.serving.FileSystemStoragePathSourceConfig.ServableVersionPolicy.All all = 101;
465
466
467    pub fn get_all(&self) -> &FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
468        match self.policy_choice {
469            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(ref v)) => v,
470            _ => FileSystemStoragePathSourceConfig_ServableVersionPolicy_All::default_instance(),
471        }
472    }
473    pub fn clear_all(&mut self) {
474        self.policy_choice = ::std::option::Option::None;
475    }
476
477    pub fn has_all(&self) -> bool {
478        match self.policy_choice {
479            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(..)) => true,
480            _ => false,
481        }
482    }
483
484    // Param is passed by value, moved
485    pub fn set_all(&mut self, v: FileSystemStoragePathSourceConfig_ServableVersionPolicy_All) {
486        self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(v))
487    }
488
489    // Mutable pointer to the field.
490    pub fn mut_all(&mut self) -> &mut FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
491        if let ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(_)) = self.policy_choice {
492        } else {
493            self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(FileSystemStoragePathSourceConfig_ServableVersionPolicy_All::new()));
494        }
495        match self.policy_choice {
496            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(ref mut v)) => v,
497            _ => panic!(),
498        }
499    }
500
501    // Take field
502    pub fn take_all(&mut self) -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
503        if self.has_all() {
504            match self.policy_choice.take() {
505                ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(v)) => v,
506                _ => panic!(),
507            }
508        } else {
509            FileSystemStoragePathSourceConfig_ServableVersionPolicy_All::new()
510        }
511    }
512
513    // .tensorflow.serving.FileSystemStoragePathSourceConfig.ServableVersionPolicy.Specific specific = 102;
514
515
516    pub fn get_specific(&self) -> &FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
517        match self.policy_choice {
518            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(ref v)) => v,
519            _ => FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific::default_instance(),
520        }
521    }
522    pub fn clear_specific(&mut self) {
523        self.policy_choice = ::std::option::Option::None;
524    }
525
526    pub fn has_specific(&self) -> bool {
527        match self.policy_choice {
528            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(..)) => true,
529            _ => false,
530        }
531    }
532
533    // Param is passed by value, moved
534    pub fn set_specific(&mut self, v: FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific) {
535        self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(v))
536    }
537
538    // Mutable pointer to the field.
539    pub fn mut_specific(&mut self) -> &mut FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
540        if let ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(_)) = self.policy_choice {
541        } else {
542            self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific::new()));
543        }
544        match self.policy_choice {
545            ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(ref mut v)) => v,
546            _ => panic!(),
547        }
548    }
549
550    // Take field
551    pub fn take_specific(&mut self) -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
552        if self.has_specific() {
553            match self.policy_choice.take() {
554                ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(v)) => v,
555                _ => panic!(),
556            }
557        } else {
558            FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific::new()
559        }
560    }
561}
562
563impl ::protobuf::Message for FileSystemStoragePathSourceConfig_ServableVersionPolicy {
564    fn is_initialized(&self) -> bool {
565        if let Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(ref v)) = self.policy_choice {
566            if !v.is_initialized() {
567                return false;
568            }
569        }
570        if let Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(ref v)) = self.policy_choice {
571            if !v.is_initialized() {
572                return false;
573            }
574        }
575        if let Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(ref v)) = self.policy_choice {
576            if !v.is_initialized() {
577                return false;
578            }
579        }
580        true
581    }
582
583    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
584        while !is.eof()? {
585            let (field_number, wire_type) = is.read_tag_unpack()?;
586            match field_number {
587                100 => {
588                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
589                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
590                    }
591                    self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(is.read_message()?));
592                },
593                101 => {
594                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
595                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
596                    }
597                    self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(is.read_message()?));
598                },
599                102 => {
600                    if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
601                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
602                    }
603                    self.policy_choice = ::std::option::Option::Some(FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(is.read_message()?));
604                },
605                _ => {
606                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
607                },
608            };
609        }
610        ::std::result::Result::Ok(())
611    }
612
613    // Compute sizes of nested messages
614    #[allow(unused_variables)]
615    fn compute_size(&self) -> u32 {
616        let mut my_size = 0;
617        if let ::std::option::Option::Some(ref v) = self.policy_choice {
618            match v {
619                &FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(ref v) => {
620                    let len = v.compute_size();
621                    my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
622                },
623                &FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(ref v) => {
624                    let len = v.compute_size();
625                    my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
626                },
627                &FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(ref v) => {
628                    let len = v.compute_size();
629                    my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
630                },
631            };
632        }
633        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
634        self.cached_size.set(my_size);
635        my_size
636    }
637
638    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
639        if let ::std::option::Option::Some(ref v) = self.policy_choice {
640            match v {
641                &FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::latest(ref v) => {
642                    os.write_tag(100, ::protobuf::wire_format::WireTypeLengthDelimited)?;
643                    os.write_raw_varint32(v.get_cached_size())?;
644                    v.write_to_with_cached_sizes(os)?;
645                },
646                &FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::all(ref v) => {
647                    os.write_tag(101, ::protobuf::wire_format::WireTypeLengthDelimited)?;
648                    os.write_raw_varint32(v.get_cached_size())?;
649                    v.write_to_with_cached_sizes(os)?;
650                },
651                &FileSystemStoragePathSourceConfig_ServableVersionPolicy_oneof_policy_choice::specific(ref v) => {
652                    os.write_tag(102, ::protobuf::wire_format::WireTypeLengthDelimited)?;
653                    os.write_raw_varint32(v.get_cached_size())?;
654                    v.write_to_with_cached_sizes(os)?;
655                },
656            };
657        }
658        os.write_unknown_fields(self.get_unknown_fields())?;
659        ::std::result::Result::Ok(())
660    }
661
662    fn get_cached_size(&self) -> u32 {
663        self.cached_size.get()
664    }
665
666    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
667        &self.unknown_fields
668    }
669
670    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
671        &mut self.unknown_fields
672    }
673
674    fn as_any(&self) -> &dyn (::std::any::Any) {
675        self as &dyn (::std::any::Any)
676    }
677    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
678        self as &mut dyn (::std::any::Any)
679    }
680    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
681        self
682    }
683
684    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
685        Self::descriptor_static()
686    }
687
688    fn new() -> FileSystemStoragePathSourceConfig_ServableVersionPolicy {
689        FileSystemStoragePathSourceConfig_ServableVersionPolicy::new()
690    }
691
692    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
693        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
694        unsafe {
695            descriptor.get(|| {
696                let mut fields = ::std::vec::Vec::new();
697                fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest>(
698                    "latest",
699                    FileSystemStoragePathSourceConfig_ServableVersionPolicy::has_latest,
700                    FileSystemStoragePathSourceConfig_ServableVersionPolicy::get_latest,
701                ));
702                fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, FileSystemStoragePathSourceConfig_ServableVersionPolicy_All>(
703                    "all",
704                    FileSystemStoragePathSourceConfig_ServableVersionPolicy::has_all,
705                    FileSystemStoragePathSourceConfig_ServableVersionPolicy::get_all,
706                ));
707                fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific>(
708                    "specific",
709                    FileSystemStoragePathSourceConfig_ServableVersionPolicy::has_specific,
710                    FileSystemStoragePathSourceConfig_ServableVersionPolicy::get_specific,
711                ));
712                ::protobuf::reflect::MessageDescriptor::new_pb_name::<FileSystemStoragePathSourceConfig_ServableVersionPolicy>(
713                    "FileSystemStoragePathSourceConfig.ServableVersionPolicy",
714                    fields,
715                    file_descriptor_proto()
716                )
717            })
718        }
719    }
720
721    fn default_instance() -> &'static FileSystemStoragePathSourceConfig_ServableVersionPolicy {
722        static mut instance: ::protobuf::lazy::Lazy<FileSystemStoragePathSourceConfig_ServableVersionPolicy> = ::protobuf::lazy::Lazy::INIT;
723        unsafe {
724            instance.get(FileSystemStoragePathSourceConfig_ServableVersionPolicy::new)
725        }
726    }
727}
728
729impl ::protobuf::Clear for FileSystemStoragePathSourceConfig_ServableVersionPolicy {
730    fn clear(&mut self) {
731        self.policy_choice = ::std::option::Option::None;
732        self.policy_choice = ::std::option::Option::None;
733        self.policy_choice = ::std::option::Option::None;
734        self.unknown_fields.clear();
735    }
736}
737
738impl ::std::fmt::Debug for FileSystemStoragePathSourceConfig_ServableVersionPolicy {
739    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
740        ::protobuf::text_format::fmt(self, f)
741    }
742}
743
744impl ::protobuf::reflect::ProtobufValue for FileSystemStoragePathSourceConfig_ServableVersionPolicy {
745    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
746        ::protobuf::reflect::ReflectValueRef::Message(self)
747    }
748}
749
750#[derive(PartialEq,Clone,Default)]
751pub struct FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
752    // message fields
753    pub num_versions: u32,
754    // special fields
755    pub unknown_fields: ::protobuf::UnknownFields,
756    pub cached_size: ::protobuf::CachedSize,
757}
758
759impl<'a> ::std::default::Default for &'a FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
760    fn default() -> &'a FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
761        <FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest as ::protobuf::Message>::default_instance()
762    }
763}
764
765impl FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
766    pub fn new() -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
767        ::std::default::Default::default()
768    }
769
770    // uint32 num_versions = 1;
771
772
773    pub fn get_num_versions(&self) -> u32 {
774        self.num_versions
775    }
776    pub fn clear_num_versions(&mut self) {
777        self.num_versions = 0;
778    }
779
780    // Param is passed by value, moved
781    pub fn set_num_versions(&mut self, v: u32) {
782        self.num_versions = v;
783    }
784}
785
786impl ::protobuf::Message for FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
787    fn is_initialized(&self) -> bool {
788        true
789    }
790
791    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
792        while !is.eof()? {
793            let (field_number, wire_type) = is.read_tag_unpack()?;
794            match field_number {
795                1 => {
796                    if wire_type != ::protobuf::wire_format::WireTypeVarint {
797                        return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
798                    }
799                    let tmp = is.read_uint32()?;
800                    self.num_versions = tmp;
801                },
802                _ => {
803                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
804                },
805            };
806        }
807        ::std::result::Result::Ok(())
808    }
809
810    // Compute sizes of nested messages
811    #[allow(unused_variables)]
812    fn compute_size(&self) -> u32 {
813        let mut my_size = 0;
814        if self.num_versions != 0 {
815            my_size += ::protobuf::rt::value_size(1, self.num_versions, ::protobuf::wire_format::WireTypeVarint);
816        }
817        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
818        self.cached_size.set(my_size);
819        my_size
820    }
821
822    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
823        if self.num_versions != 0 {
824            os.write_uint32(1, self.num_versions)?;
825        }
826        os.write_unknown_fields(self.get_unknown_fields())?;
827        ::std::result::Result::Ok(())
828    }
829
830    fn get_cached_size(&self) -> u32 {
831        self.cached_size.get()
832    }
833
834    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
835        &self.unknown_fields
836    }
837
838    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
839        &mut self.unknown_fields
840    }
841
842    fn as_any(&self) -> &dyn (::std::any::Any) {
843        self as &dyn (::std::any::Any)
844    }
845    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
846        self as &mut dyn (::std::any::Any)
847    }
848    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
849        self
850    }
851
852    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
853        Self::descriptor_static()
854    }
855
856    fn new() -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
857        FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest::new()
858    }
859
860    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
861        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
862        unsafe {
863            descriptor.get(|| {
864                let mut fields = ::std::vec::Vec::new();
865                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
866                    "num_versions",
867                    |m: &FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest| { &m.num_versions },
868                    |m: &mut FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest| { &mut m.num_versions },
869                ));
870                ::protobuf::reflect::MessageDescriptor::new_pb_name::<FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest>(
871                    "FileSystemStoragePathSourceConfig.ServableVersionPolicy.Latest",
872                    fields,
873                    file_descriptor_proto()
874                )
875            })
876        }
877    }
878
879    fn default_instance() -> &'static FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
880        static mut instance: ::protobuf::lazy::Lazy<FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest> = ::protobuf::lazy::Lazy::INIT;
881        unsafe {
882            instance.get(FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest::new)
883        }
884    }
885}
886
887impl ::protobuf::Clear for FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
888    fn clear(&mut self) {
889        self.num_versions = 0;
890        self.unknown_fields.clear();
891    }
892}
893
894impl ::std::fmt::Debug for FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
895    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
896        ::protobuf::text_format::fmt(self, f)
897    }
898}
899
900impl ::protobuf::reflect::ProtobufValue for FileSystemStoragePathSourceConfig_ServableVersionPolicy_Latest {
901    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
902        ::protobuf::reflect::ReflectValueRef::Message(self)
903    }
904}
905
906#[derive(PartialEq,Clone,Default)]
907pub struct FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
908    // special fields
909    pub unknown_fields: ::protobuf::UnknownFields,
910    pub cached_size: ::protobuf::CachedSize,
911}
912
913impl<'a> ::std::default::Default for &'a FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
914    fn default() -> &'a FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
915        <FileSystemStoragePathSourceConfig_ServableVersionPolicy_All as ::protobuf::Message>::default_instance()
916    }
917}
918
919impl FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
920    pub fn new() -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
921        ::std::default::Default::default()
922    }
923}
924
925impl ::protobuf::Message for FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
926    fn is_initialized(&self) -> bool {
927        true
928    }
929
930    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
931        while !is.eof()? {
932            let (field_number, wire_type) = is.read_tag_unpack()?;
933            match field_number {
934                _ => {
935                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
936                },
937            };
938        }
939        ::std::result::Result::Ok(())
940    }
941
942    // Compute sizes of nested messages
943    #[allow(unused_variables)]
944    fn compute_size(&self) -> u32 {
945        let mut my_size = 0;
946        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
947        self.cached_size.set(my_size);
948        my_size
949    }
950
951    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
952        os.write_unknown_fields(self.get_unknown_fields())?;
953        ::std::result::Result::Ok(())
954    }
955
956    fn get_cached_size(&self) -> u32 {
957        self.cached_size.get()
958    }
959
960    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
961        &self.unknown_fields
962    }
963
964    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
965        &mut self.unknown_fields
966    }
967
968    fn as_any(&self) -> &dyn (::std::any::Any) {
969        self as &dyn (::std::any::Any)
970    }
971    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
972        self as &mut dyn (::std::any::Any)
973    }
974    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
975        self
976    }
977
978    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
979        Self::descriptor_static()
980    }
981
982    fn new() -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
983        FileSystemStoragePathSourceConfig_ServableVersionPolicy_All::new()
984    }
985
986    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
987        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
988        unsafe {
989            descriptor.get(|| {
990                let fields = ::std::vec::Vec::new();
991                ::protobuf::reflect::MessageDescriptor::new_pb_name::<FileSystemStoragePathSourceConfig_ServableVersionPolicy_All>(
992                    "FileSystemStoragePathSourceConfig.ServableVersionPolicy.All",
993                    fields,
994                    file_descriptor_proto()
995                )
996            })
997        }
998    }
999
1000    fn default_instance() -> &'static FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
1001        static mut instance: ::protobuf::lazy::Lazy<FileSystemStoragePathSourceConfig_ServableVersionPolicy_All> = ::protobuf::lazy::Lazy::INIT;
1002        unsafe {
1003            instance.get(FileSystemStoragePathSourceConfig_ServableVersionPolicy_All::new)
1004        }
1005    }
1006}
1007
1008impl ::protobuf::Clear for FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
1009    fn clear(&mut self) {
1010        self.unknown_fields.clear();
1011    }
1012}
1013
1014impl ::std::fmt::Debug for FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
1015    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1016        ::protobuf::text_format::fmt(self, f)
1017    }
1018}
1019
1020impl ::protobuf::reflect::ProtobufValue for FileSystemStoragePathSourceConfig_ServableVersionPolicy_All {
1021    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1022        ::protobuf::reflect::ReflectValueRef::Message(self)
1023    }
1024}
1025
1026#[derive(PartialEq,Clone,Default)]
1027pub struct FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1028    // message fields
1029    pub versions: ::std::vec::Vec<i64>,
1030    // special fields
1031    pub unknown_fields: ::protobuf::UnknownFields,
1032    pub cached_size: ::protobuf::CachedSize,
1033}
1034
1035impl<'a> ::std::default::Default for &'a FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1036    fn default() -> &'a FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1037        <FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific as ::protobuf::Message>::default_instance()
1038    }
1039}
1040
1041impl FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1042    pub fn new() -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1043        ::std::default::Default::default()
1044    }
1045
1046    // repeated int64 versions = 1;
1047
1048
1049    pub fn get_versions(&self) -> &[i64] {
1050        &self.versions
1051    }
1052    pub fn clear_versions(&mut self) {
1053        self.versions.clear();
1054    }
1055
1056    // Param is passed by value, moved
1057    pub fn set_versions(&mut self, v: ::std::vec::Vec<i64>) {
1058        self.versions = v;
1059    }
1060
1061    // Mutable pointer to the field.
1062    pub fn mut_versions(&mut self) -> &mut ::std::vec::Vec<i64> {
1063        &mut self.versions
1064    }
1065
1066    // Take field
1067    pub fn take_versions(&mut self) -> ::std::vec::Vec<i64> {
1068        ::std::mem::replace(&mut self.versions, ::std::vec::Vec::new())
1069    }
1070}
1071
1072impl ::protobuf::Message for FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1073    fn is_initialized(&self) -> bool {
1074        true
1075    }
1076
1077    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1078        while !is.eof()? {
1079            let (field_number, wire_type) = is.read_tag_unpack()?;
1080            match field_number {
1081                1 => {
1082                    ::protobuf::rt::read_repeated_int64_into(wire_type, is, &mut self.versions)?;
1083                },
1084                _ => {
1085                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1086                },
1087            };
1088        }
1089        ::std::result::Result::Ok(())
1090    }
1091
1092    // Compute sizes of nested messages
1093    #[allow(unused_variables)]
1094    fn compute_size(&self) -> u32 {
1095        let mut my_size = 0;
1096        for value in &self.versions {
1097            my_size += ::protobuf::rt::value_size(1, *value, ::protobuf::wire_format::WireTypeVarint);
1098        };
1099        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1100        self.cached_size.set(my_size);
1101        my_size
1102    }
1103
1104    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1105        for v in &self.versions {
1106            os.write_int64(1, *v)?;
1107        };
1108        os.write_unknown_fields(self.get_unknown_fields())?;
1109        ::std::result::Result::Ok(())
1110    }
1111
1112    fn get_cached_size(&self) -> u32 {
1113        self.cached_size.get()
1114    }
1115
1116    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1117        &self.unknown_fields
1118    }
1119
1120    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1121        &mut self.unknown_fields
1122    }
1123
1124    fn as_any(&self) -> &dyn (::std::any::Any) {
1125        self as &dyn (::std::any::Any)
1126    }
1127    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1128        self as &mut dyn (::std::any::Any)
1129    }
1130    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1131        self
1132    }
1133
1134    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1135        Self::descriptor_static()
1136    }
1137
1138    fn new() -> FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1139        FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific::new()
1140    }
1141
1142    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1143        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
1144        unsafe {
1145            descriptor.get(|| {
1146                let mut fields = ::std::vec::Vec::new();
1147                fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
1148                    "versions",
1149                    |m: &FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific| { &m.versions },
1150                    |m: &mut FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific| { &mut m.versions },
1151                ));
1152                ::protobuf::reflect::MessageDescriptor::new_pb_name::<FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific>(
1153                    "FileSystemStoragePathSourceConfig.ServableVersionPolicy.Specific",
1154                    fields,
1155                    file_descriptor_proto()
1156                )
1157            })
1158        }
1159    }
1160
1161    fn default_instance() -> &'static FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1162        static mut instance: ::protobuf::lazy::Lazy<FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific> = ::protobuf::lazy::Lazy::INIT;
1163        unsafe {
1164            instance.get(FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific::new)
1165        }
1166    }
1167}
1168
1169impl ::protobuf::Clear for FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1170    fn clear(&mut self) {
1171        self.versions.clear();
1172        self.unknown_fields.clear();
1173    }
1174}
1175
1176impl ::std::fmt::Debug for FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1177    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1178        ::protobuf::text_format::fmt(self, f)
1179    }
1180}
1181
1182impl ::protobuf::reflect::ProtobufValue for FileSystemStoragePathSourceConfig_ServableVersionPolicy_Specific {
1183    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1184        ::protobuf::reflect::ReflectValueRef::Message(self)
1185    }
1186}
1187
1188#[derive(PartialEq,Clone,Default)]
1189pub struct FileSystemStoragePathSourceConfig_ServableToMonitor {
1190    // message fields
1191    pub servable_name: ::std::string::String,
1192    pub base_path: ::std::string::String,
1193    pub servable_version_policy: ::protobuf::SingularPtrField<FileSystemStoragePathSourceConfig_ServableVersionPolicy>,
1194    // special fields
1195    pub unknown_fields: ::protobuf::UnknownFields,
1196    pub cached_size: ::protobuf::CachedSize,
1197}
1198
1199impl<'a> ::std::default::Default for &'a FileSystemStoragePathSourceConfig_ServableToMonitor {
1200    fn default() -> &'a FileSystemStoragePathSourceConfig_ServableToMonitor {
1201        <FileSystemStoragePathSourceConfig_ServableToMonitor as ::protobuf::Message>::default_instance()
1202    }
1203}
1204
1205impl FileSystemStoragePathSourceConfig_ServableToMonitor {
1206    pub fn new() -> FileSystemStoragePathSourceConfig_ServableToMonitor {
1207        ::std::default::Default::default()
1208    }
1209
1210    // string servable_name = 1;
1211
1212
1213    pub fn get_servable_name(&self) -> &str {
1214        &self.servable_name
1215    }
1216    pub fn clear_servable_name(&mut self) {
1217        self.servable_name.clear();
1218    }
1219
1220    // Param is passed by value, moved
1221    pub fn set_servable_name(&mut self, v: ::std::string::String) {
1222        self.servable_name = v;
1223    }
1224
1225    // Mutable pointer to the field.
1226    // If field is not initialized, it is initialized with default value first.
1227    pub fn mut_servable_name(&mut self) -> &mut ::std::string::String {
1228        &mut self.servable_name
1229    }
1230
1231    // Take field
1232    pub fn take_servable_name(&mut self) -> ::std::string::String {
1233        ::std::mem::replace(&mut self.servable_name, ::std::string::String::new())
1234    }
1235
1236    // string base_path = 2;
1237
1238
1239    pub fn get_base_path(&self) -> &str {
1240        &self.base_path
1241    }
1242    pub fn clear_base_path(&mut self) {
1243        self.base_path.clear();
1244    }
1245
1246    // Param is passed by value, moved
1247    pub fn set_base_path(&mut self, v: ::std::string::String) {
1248        self.base_path = v;
1249    }
1250
1251    // Mutable pointer to the field.
1252    // If field is not initialized, it is initialized with default value first.
1253    pub fn mut_base_path(&mut self) -> &mut ::std::string::String {
1254        &mut self.base_path
1255    }
1256
1257    // Take field
1258    pub fn take_base_path(&mut self) -> ::std::string::String {
1259        ::std::mem::replace(&mut self.base_path, ::std::string::String::new())
1260    }
1261
1262    // .tensorflow.serving.FileSystemStoragePathSourceConfig.ServableVersionPolicy servable_version_policy = 4;
1263
1264
1265    pub fn get_servable_version_policy(&self) -> &FileSystemStoragePathSourceConfig_ServableVersionPolicy {
1266        self.servable_version_policy.as_ref().unwrap_or_else(|| FileSystemStoragePathSourceConfig_ServableVersionPolicy::default_instance())
1267    }
1268    pub fn clear_servable_version_policy(&mut self) {
1269        self.servable_version_policy.clear();
1270    }
1271
1272    pub fn has_servable_version_policy(&self) -> bool {
1273        self.servable_version_policy.is_some()
1274    }
1275
1276    // Param is passed by value, moved
1277    pub fn set_servable_version_policy(&mut self, v: FileSystemStoragePathSourceConfig_ServableVersionPolicy) {
1278        self.servable_version_policy = ::protobuf::SingularPtrField::some(v);
1279    }
1280
1281    // Mutable pointer to the field.
1282    // If field is not initialized, it is initialized with default value first.
1283    pub fn mut_servable_version_policy(&mut self) -> &mut FileSystemStoragePathSourceConfig_ServableVersionPolicy {
1284        if self.servable_version_policy.is_none() {
1285            self.servable_version_policy.set_default();
1286        }
1287        self.servable_version_policy.as_mut().unwrap()
1288    }
1289
1290    // Take field
1291    pub fn take_servable_version_policy(&mut self) -> FileSystemStoragePathSourceConfig_ServableVersionPolicy {
1292        self.servable_version_policy.take().unwrap_or_else(|| FileSystemStoragePathSourceConfig_ServableVersionPolicy::new())
1293    }
1294}
1295
1296impl ::protobuf::Message for FileSystemStoragePathSourceConfig_ServableToMonitor {
1297    fn is_initialized(&self) -> bool {
1298        for v in &self.servable_version_policy {
1299            if !v.is_initialized() {
1300                return false;
1301            }
1302        };
1303        true
1304    }
1305
1306    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1307        while !is.eof()? {
1308            let (field_number, wire_type) = is.read_tag_unpack()?;
1309            match field_number {
1310                1 => {
1311                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.servable_name)?;
1312                },
1313                2 => {
1314                    ::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.base_path)?;
1315                },
1316                4 => {
1317                    ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.servable_version_policy)?;
1318                },
1319                _ => {
1320                    ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1321                },
1322            };
1323        }
1324        ::std::result::Result::Ok(())
1325    }
1326
1327    // Compute sizes of nested messages
1328    #[allow(unused_variables)]
1329    fn compute_size(&self) -> u32 {
1330        let mut my_size = 0;
1331        if !self.servable_name.is_empty() {
1332            my_size += ::protobuf::rt::string_size(1, &self.servable_name);
1333        }
1334        if !self.base_path.is_empty() {
1335            my_size += ::protobuf::rt::string_size(2, &self.base_path);
1336        }
1337        if let Some(ref v) = self.servable_version_policy.as_ref() {
1338            let len = v.compute_size();
1339            my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1340        }
1341        my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1342        self.cached_size.set(my_size);
1343        my_size
1344    }
1345
1346    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1347        if !self.servable_name.is_empty() {
1348            os.write_string(1, &self.servable_name)?;
1349        }
1350        if !self.base_path.is_empty() {
1351            os.write_string(2, &self.base_path)?;
1352        }
1353        if let Some(ref v) = self.servable_version_policy.as_ref() {
1354            os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1355            os.write_raw_varint32(v.get_cached_size())?;
1356            v.write_to_with_cached_sizes(os)?;
1357        }
1358        os.write_unknown_fields(self.get_unknown_fields())?;
1359        ::std::result::Result::Ok(())
1360    }
1361
1362    fn get_cached_size(&self) -> u32 {
1363        self.cached_size.get()
1364    }
1365
1366    fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1367        &self.unknown_fields
1368    }
1369
1370    fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1371        &mut self.unknown_fields
1372    }
1373
1374    fn as_any(&self) -> &dyn (::std::any::Any) {
1375        self as &dyn (::std::any::Any)
1376    }
1377    fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1378        self as &mut dyn (::std::any::Any)
1379    }
1380    fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1381        self
1382    }
1383
1384    fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1385        Self::descriptor_static()
1386    }
1387
1388    fn new() -> FileSystemStoragePathSourceConfig_ServableToMonitor {
1389        FileSystemStoragePathSourceConfig_ServableToMonitor::new()
1390    }
1391
1392    fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1393        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy::INIT;
1394        unsafe {
1395            descriptor.get(|| {
1396                let mut fields = ::std::vec::Vec::new();
1397                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1398                    "servable_name",
1399                    |m: &FileSystemStoragePathSourceConfig_ServableToMonitor| { &m.servable_name },
1400                    |m: &mut FileSystemStoragePathSourceConfig_ServableToMonitor| { &mut m.servable_name },
1401                ));
1402                fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
1403                    "base_path",
1404                    |m: &FileSystemStoragePathSourceConfig_ServableToMonitor| { &m.base_path },
1405                    |m: &mut FileSystemStoragePathSourceConfig_ServableToMonitor| { &mut m.base_path },
1406                ));
1407                fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<FileSystemStoragePathSourceConfig_ServableVersionPolicy>>(
1408                    "servable_version_policy",
1409                    |m: &FileSystemStoragePathSourceConfig_ServableToMonitor| { &m.servable_version_policy },
1410                    |m: &mut FileSystemStoragePathSourceConfig_ServableToMonitor| { &mut m.servable_version_policy },
1411                ));
1412                ::protobuf::reflect::MessageDescriptor::new_pb_name::<FileSystemStoragePathSourceConfig_ServableToMonitor>(
1413                    "FileSystemStoragePathSourceConfig.ServableToMonitor",
1414                    fields,
1415                    file_descriptor_proto()
1416                )
1417            })
1418        }
1419    }
1420
1421    fn default_instance() -> &'static FileSystemStoragePathSourceConfig_ServableToMonitor {
1422        static mut instance: ::protobuf::lazy::Lazy<FileSystemStoragePathSourceConfig_ServableToMonitor> = ::protobuf::lazy::Lazy::INIT;
1423        unsafe {
1424            instance.get(FileSystemStoragePathSourceConfig_ServableToMonitor::new)
1425        }
1426    }
1427}
1428
1429impl ::protobuf::Clear for FileSystemStoragePathSourceConfig_ServableToMonitor {
1430    fn clear(&mut self) {
1431        self.servable_name.clear();
1432        self.base_path.clear();
1433        self.servable_version_policy.clear();
1434        self.unknown_fields.clear();
1435    }
1436}
1437
1438impl ::std::fmt::Debug for FileSystemStoragePathSourceConfig_ServableToMonitor {
1439    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1440        ::protobuf::text_format::fmt(self, f)
1441    }
1442}
1443
1444impl ::protobuf::reflect::ProtobufValue for FileSystemStoragePathSourceConfig_ServableToMonitor {
1445    fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1446        ::protobuf::reflect::ReflectValueRef::Message(self)
1447    }
1448}
1449
1450static file_descriptor_proto_data: &'static [u8] = b"\
1451    \nMtensorflow_serving/sources/storage_path/file_system_storage_path_sour\
1452    ce.proto\x12\x12tensorflow.serving\"\xdc\x08\n!FileSystemStoragePathSour\
1453    ceConfig\x12e\n\tservables\x18\x05\x20\x03(\x0b2G.tensorflow.serving.Fil\
1454    eSystemStoragePathSourceConfig.ServableToMonitorR\tservables\x12'\n\rser\
1455    vable_name\x18\x01\x20\x01(\tR\x0cservableNameB\x02\x18\x01\x12\x1f\n\tb\
1456    ase_path\x18\x02\x20\x01(\tR\x08basePathB\x02\x18\x01\x12@\n\x1dfile_sys\
1457    tem_poll_wait_seconds\x18\x03\x20\x01(\x03R\x19fileSystemPollWaitSeconds\
1458    \x12I\n\x20fail_if_zero_versions_at_startup\x18\x04\x20\x01(\x08R\x1bfai\
1459    lIfZeroVersionsAtStartupB\x02\x18\x01\x12G\n\x20servable_versions_always\
1460    _present\x18\x06\x20\x01(\x08R\x1dservableVersionsAlwaysPresent\x1a\xcb\
1461    \x03\n\x15ServableVersionPolicy\x12l\n\x06latest\x18d\x20\x01(\x0b2R.ten\
1462    sorflow.serving.FileSystemStoragePathSourceConfig.ServableVersionPolicy.\
1463    LatestH\0R\x06latest\x12c\n\x03all\x18e\x20\x01(\x0b2O.tensorflow.servin\
1464    g.FileSystemStoragePathSourceConfig.ServableVersionPolicy.AllH\0R\x03all\
1465    \x12r\n\x08specific\x18f\x20\x01(\x0b2T.tensorflow.serving.FileSystemSto\
1466    ragePathSourceConfig.ServableVersionPolicy.SpecificH\0R\x08specific\x1a+\
1467    \n\x06Latest\x12!\n\x0cnum_versions\x18\x01\x20\x01(\rR\x0bnumVersions\
1468    \x1a\x05\n\x03All\x1a&\n\x08Specific\x12\x1a\n\x08versions\x18\x01\x20\
1469    \x03(\x03R\x08versionsB\x0f\n\rpolicy_choice\x1a\xe1\x01\n\x11ServableTo\
1470    Monitor\x12#\n\rservable_name\x18\x01\x20\x01(\tR\x0cservableName\x12\
1471    \x1b\n\tbase_path\x18\x02\x20\x01(\tR\x08basePath\x12\x83\x01\n\x17serva\
1472    ble_version_policy\x18\x04\x20\x01(\x0b2K.tensorflow.serving.FileSystemS\
1473    toragePathSourceConfig.ServableVersionPolicyR\x15servableVersionPolicyJ\
1474    \x04\x08\x03\x10\x04J\xad\x1c\n\x06\x12\x04\0\0W\x01\n\x08\n\x01\x0c\x12\
1475    \x03\0\0\x12\n\x08\n\x01\x02\x12\x03\x02\0\x1b\n;\n\x02\x04\0\x12\x04\
1476    \x05\0W\x01\x1a/\x20Config\x20proto\x20for\x20FileSystemStoragePathSourc\
1477    e.\n\n\n\n\x03\x04\0\x01\x12\x03\x05\x08)\nW\n\x04\x04\0\x03\0\x12\x04\
1478    \x07\x02$\x03\x1aI\x20A\x20policy\x20that\x20dictates\x20which\x20versio\
1479    n(s)\x20of\x20a\x20servable\x20should\x20be\x20served.\n\n\x0c\n\x05\x04\
1480    \0\x03\0\x01\x12\x03\x07\n\x1f\n\xc2\x01\n\x06\x04\0\x03\0\x03\0\x12\x04\
1481    \x0c\x04\x0f\x05\x1a\xb1\x01\x20Serve\x20the\x20latest\x20versions\x20(i\
1482    .e.\x20the\x20ones\x20with\x20the\x20highest\x20version\n\x20numbers),\
1483    \x20among\x20those\x20found\x20on\x20disk.\n\n\x20This\x20is\x20the\x20d\
1484    efault\x20policy,\x20with\x20the\x20default\x20number\x20of\x20versions\
1485    \x20as\x201.\n\n\x0e\n\x07\x04\0\x03\0\x03\0\x01\x12\x03\x0c\x0c\x12\nJ\
1486    \n\x08\x04\0\x03\0\x03\0\x02\0\x12\x03\x0e\x06\x1e\x1a9\x20Number\x20of\
1487    \x20latest\x20versions\x20to\x20serve.\x20(The\x20default\x20is\x201.)\n\
1488    \n\x10\n\t\x04\0\x03\0\x03\0\x02\0\x05\x12\x03\x0e\x06\x0c\n\x10\n\t\x04\
1489    \0\x03\0\x03\0\x02\0\x01\x12\x03\x0e\r\x19\n\x10\n\t\x04\0\x03\0\x03\0\
1490    \x02\0\x03\x12\x03\x0e\x1c\x1d\n3\n\x06\x04\0\x03\0\x03\x01\x12\x04\x12\
1491    \x04\x13\x05\x1a#\x20Serve\x20all\x20versions\x20found\x20on\x20disk.\n\
1492    \n\x0e\n\x07\x04\0\x03\0\x03\x01\x01\x12\x03\x12\x0c\x0f\n\xd6\x01\n\x06\
1493    \x04\0\x03\0\x03\x02\x12\x04\x1a\x04\x1d\x05\x1a\xc5\x01\x20Serve\x20a\
1494    \x20specific\x20version\x20(or\x20set\x20of\x20versions).\n\n\x20This\
1495    \x20policy\x20is\x20useful\x20for\x20rolling\x20back\x20to\x20a\x20speci\
1496    fic\x20version,\x20or\x20for\n\x20canarying\x20a\x20specific\x20version\
1497    \x20while\x20still\x20serving\x20a\x20separate\x20stable\n\x20version.\n\
1498    \n\x0e\n\x07\x04\0\x03\0\x03\x02\x01\x12\x03\x1a\x0c\x14\n0\n\x08\x04\0\
1499    \x03\0\x03\x02\x02\0\x12\x03\x1c\x06\"\x1a\x1f\x20The\x20version\x20numb\
1500    ers\x20to\x20serve.\n\n\x10\n\t\x04\0\x03\0\x03\x02\x02\0\x04\x12\x03\
1501    \x1c\x06\x0e\n\x10\n\t\x04\0\x03\0\x03\x02\x02\0\x05\x12\x03\x1c\x0f\x14\
1502    \n\x10\n\t\x04\0\x03\0\x03\x02\x02\0\x01\x12\x03\x1c\x15\x1d\n\x10\n\t\
1503    \x04\0\x03\0\x03\x02\x02\0\x03\x12\x03\x1c\x20!\n\x0e\n\x06\x04\0\x03\0\
1504    \x08\0\x12\x04\x1f\x04#\x05\n\x0e\n\x07\x04\0\x03\0\x08\0\x01\x12\x03\
1505    \x1f\n\x17\n\r\n\x06\x04\0\x03\0\x02\0\x12\x03\x20\x06\x1a\n\x0e\n\x07\
1506    \x04\0\x03\0\x02\0\x06\x12\x03\x20\x06\x0c\n\x0e\n\x07\x04\0\x03\0\x02\0\
1507    \x01\x12\x03\x20\r\x13\n\x0e\n\x07\x04\0\x03\0\x02\0\x03\x12\x03\x20\x16\
1508    \x19\n\r\n\x06\x04\0\x03\0\x02\x01\x12\x03!\x06\x14\n\x0e\n\x07\x04\0\
1509    \x03\0\x02\x01\x06\x12\x03!\x06\t\n\x0e\n\x07\x04\0\x03\0\x02\x01\x01\
1510    \x12\x03!\n\r\n\x0e\n\x07\x04\0\x03\0\x02\x01\x03\x12\x03!\x10\x13\n\r\n\
1511    \x06\x04\0\x03\0\x02\x02\x12\x03\"\x06\x1e\n\x0e\n\x07\x04\0\x03\0\x02\
1512    \x02\x06\x12\x03\"\x06\x0e\n\x0e\n\x07\x04\0\x03\0\x02\x02\x01\x12\x03\"\
1513    \x0f\x17\n\x0e\n\x07\x04\0\x03\0\x02\x02\x03\x12\x03\"\x1a\x1d\nS\n\x04\
1514    \x04\0\x03\x01\x12\x04'\x025\x03\x1aE\x20A\x20servable\x20name\x20and\
1515    \x20base\x20path\x20to\x20look\x20for\x20versions\x20of\x20the\x20servab\
1516    le.\n\n\x0c\n\x05\x04\0\x03\x01\x01\x12\x03'\n\x1b\n\x9d\x01\n\x06\x04\0\
1517    \x03\x01\x02\0\x12\x03*\x04\x1d\x1a\x8d\x01\x20The\x20servable\x20name\
1518    \x20to\x20supply\x20in\x20aspired-versions\x20callback\x20calls.\x20Chil\
1519    d\n\x20paths\x20of\x20'base_path'\x20are\x20considered\x20to\x20be\x20ve\
1520    rsions\x20of\x20this\x20servable.\n\n\x0e\n\x07\x04\0\x03\x01\x02\0\x05\
1521    \x12\x03*\x04\n\n\x0e\n\x07\x04\0\x03\x01\x02\0\x01\x12\x03*\x0b\x18\n\
1522    \x0e\n\x07\x04\0\x03\x01\x02\0\x03\x12\x03*\x1b\x1c\nZ\n\x06\x04\0\x03\
1523    \x01\x02\x01\x12\x03-\x04\x19\x1aK\x20The\x20path\x20to\x20monitor,\x20i\
1524    .e.\x20look\x20for\x20child\x20paths\x20of\x20the\x20form\x20base_path/1\
1525    23.\n\n\x0e\n\x07\x04\0\x03\x01\x02\x01\x05\x12\x03-\x04\n\n\x0e\n\x07\
1526    \x04\0\x03\x01\x02\x01\x01\x12\x03-\x0b\x14\n\x0e\n\x07\x04\0\x03\x01\
1527    \x02\x01\x03\x12\x03-\x17\x18\nq\n\x06\x04\0\x03\x01\x02\x02\x12\x041\
1528    \x042$\x1aa\x20The\x20policy\x20to\x20determines\x20the\x20number\x20of\
1529    \x20versions\x20of\x20the\x20servable\x20to\x20be\n\x20served\x20at\x20t\
1530    he\x20same\x20time.\n\n\x0e\n\x07\x04\0\x03\x01\x02\x02\x06\x12\x031\x04\
1531    N\n\x0e\n\x07\x04\0\x03\x01\x02\x02\x01\x12\x032\x08\x1f\n\x0e\n\x07\x04\
1532    \0\x03\x01\x02\x02\x03\x12\x032\"#\n1\n\x05\x04\0\x03\x01\t\x12\x034\x04\
1533    \x0f\"#\x20Legacy\x20version_policy\x20definition.\n\n\r\n\x06\x04\0\x03\
1534    \x01\t\0\x12\x034\r\x0e\n\x0e\n\x07\x04\0\x03\x01\t\0\x01\x12\x034\r\x0e\
1535    \n\x0e\n\x07\x04\0\x03\x01\t\0\x02\x12\x034\r\x0e\nE\n\x04\x04\0\x02\0\
1536    \x12\x038\x02+\x1a8\x20The\x20servables\x20to\x20monitor\x20for\x20new\
1537    \x20versions,\x20and\x20aspire.\n\n\x0c\n\x05\x04\0\x02\0\x04\x12\x038\
1538    \x02\n\n\x0c\n\x05\x04\0\x02\0\x06\x12\x038\x0b\x1c\n\x0c\n\x05\x04\0\
1539    \x02\0\x01\x12\x038\x1d&\n\x0c\n\x05\x04\0\x02\0\x03\x12\x038)*\n\xb4\
1540    \x01\n\x04\x04\0\x02\x01\x12\x03=\x02/\x1a\xa6\x01\x20A\x20single\x20ser\
1541    vable\x20name/base_path\x20pair\x20to\x20monitor.\n\x20DEPRECATED:\x20Us\
1542    e\x20'servables'\x20instead.\n\x20TODO(b/30898016):\x20Stop\x20using\x20\
1543    these\x20fields,\x20and\x20ultimately\x20remove\x20them\x20here.\n\n\x0c\
1544    \n\x05\x04\0\x02\x01\x05\x12\x03=\x02\x08\n\x0c\n\x05\x04\0\x02\x01\x01\
1545    \x12\x03=\t\x16\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03=\x19\x1a\n\x0c\n\
1546    \x05\x04\0\x02\x01\x08\x12\x03=\x1b.\n\r\n\x06\x04\0\x02\x01\x08\x03\x12\
1547    \x03=\x1c-\n\x0b\n\x04\x04\0\x02\x02\x12\x03>\x02+\n\x0c\n\x05\x04\0\x02\
1548    \x02\x05\x12\x03>\x02\x08\n\x0c\n\x05\x04\0\x02\x02\x01\x12\x03>\t\x12\n\
1549    \x0c\n\x05\x04\0\x02\x02\x03\x12\x03>\x15\x16\n\x0c\n\x05\x04\0\x02\x02\
1550    \x08\x12\x03>\x17*\n\r\n\x06\x04\0\x02\x02\x08\x03\x12\x03>\x18)\n\xff\
1551    \x01\n\x04\x04\0\x02\x03\x12\x03E\x02*\x1a\xf1\x01\x20How\x20long\x20to\
1552    \x20wait\x20between\x20file-system\x20polling\x20to\x20look\x20for\x20ch\
1553    ildren\x20of\n\x20'base_path',\x20in\x20seconds.\n\n\x20If\x20set\x20to\
1554    \x20zero,\x20filesystem\x20will\x20be\x20polled\x20exactly\x20once.\x20I\
1555    f\x20set\x20to\x20a\n\x20negative\x20value\x20(for\x20testing\x20use\x20\
1556    only),\x20polling\x20will\x20be\x20entirely\x20disabled.\n\n\x0c\n\x05\
1557    \x04\0\x02\x03\x05\x12\x03E\x02\x07\n\x0c\n\x05\x04\0\x02\x03\x01\x12\
1558    \x03E\x08%\n\x0c\n\x05\x04\0\x02\x03\x03\x12\x03E()\n\xcf\x03\n\x04\x04\
1559    \0\x02\x04\x12\x03O\x02@\x1a\xc1\x03\x20If\x20true,\x20then\x20FileSyste\
1560    mStoragePathSource::Create()\x20and\x20::UpdateConfig()\n\x20fail\x20if,\
1561    \x20for\x20any\x20configured\x20servables,\x20the\x20file\x20system\x20d\
1562    oesn't\x20currently\n\x20contain\x20at\x20least\x20one\x20version\x20und\
1563    er\x20the\x20base\x20path.\n\x20(Otherwise,\x20it\x20will\x20emit\x20a\
1564    \x20warning\x20and\x20keep\x20pinging\x20the\x20file\x20system\x20to\n\
1565    \x20check\x20for\x20a\x20version\x20to\x20appear\x20later.)\n\x20DEPRECA\
1566    TED:\x20Use\x20'servable_versions_always_present'\x20instead,\x20which\
1567    \x20includes\n\x20this\x20behavior.\n\x20TODO(b/30898016):\x20Remove\x20\
1568    2019-10-31\x20or\x20later.\n\n\x0c\n\x05\x04\0\x02\x04\x05\x12\x03O\x02\
1569    \x06\n\x0c\n\x05\x04\0\x02\x04\x01\x12\x03O\x07'\n\x0c\n\x05\x04\0\x02\
1570    \x04\x03\x12\x03O*+\n\x0c\n\x05\x04\0\x02\x04\x08\x12\x03O,?\n\r\n\x06\
1571    \x04\0\x02\x04\x08\x03\x12\x03O->\n\xfe\x02\n\x04\x04\0\x02\x05\x12\x03V\
1572    \x02,\x1a\xf0\x02\x20If\x20true,\x20the\x20servable\x20is\x20always\x20e\
1573    xpected\x20to\x20exist\x20on\x20the\x20underlying\n\x20filesystem.\x20Fi\
1574    leSystemStoragePathSource::Create()\x20and\x20::UpdateConfig()\x20will\n\
1575    \x20fail\x20if,\x20for\x20any\x20configured\x20servables,\x20the\x20file\
1576    \x20system\x20doesn't\x20currently\n\x20contain\x20at\x20least\x20one\
1577    \x20version\x20under\x20the\x20base\x20path.\x20In\x20addition,\x20if\
1578    \x20a\x20polling\n\x20loop\x20find\x20the\x20base\x20path\x20empty,\x20i\
1579    t\x20will\x20not\x20unload\x20existing\x20servables.\n\n\x0c\n\x05\x04\0\
1580    \x02\x05\x05\x12\x03V\x02\x06\n\x0c\n\x05\x04\0\x02\x05\x01\x12\x03V\x07\
1581    '\n\x0c\n\x05\x04\0\x02\x05\x03\x12\x03V*+b\x06proto3\
1582";
1583
1584static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy::INIT;
1585
1586fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
1587    ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap()
1588}
1589
1590pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
1591    unsafe {
1592        file_descriptor_proto_lazy.get(|| {
1593            parse_descriptor_proto()
1594        })
1595    }
1596}