// Autogenerated by Thrift Compiler (0.15.0) // DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING #![allow(unused_imports)] #![allow(unused_extern_crates)] #![allow(clippy::too_many_arguments, clippy::type_complexity, clippy::vec_box)] #![cfg_attr(rustfmt, rustfmt_skip)] use std::cell::RefCell; use std::collections::{BTreeMap, BTreeSet}; use std::convert::{From, TryFrom}; use std::default::Default; use std::error::Error; use std::fmt; use std::fmt::{Display, Formatter}; use std::rc::Rc; use thrift::OrderedFloat; use thrift::{ApplicationError, ApplicationErrorKind, ProtocolError, ProtocolErrorKind, TThriftClient}; use thrift::protocol::{TFieldIdentifier, TListIdentifier, TMapIdentifier, TMessageIdentifier, TMessageType, TInputProtocol, TOutputProtocol, TSetIdentifier, TStructIdentifier, TType}; use thrift::protocol::field_id; use thrift::protocol::verify_expected_message_type; use thrift::protocol::verify_expected_sequence_number; use thrift::protocol::verify_expected_service_call; use thrift::protocol::verify_required_field_exists; use thrift::server::TProcessor; /// Common status reporting mechanism across all services #[derive(Copy, Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] pub struct Fb303Status(pub i32); impl Fb303Status { pub const DEAD: Fb303Status = Fb303Status(0); pub const STARTING: Fb303Status = Fb303Status(1); pub const ALIVE: Fb303Status = Fb303Status(2); pub const STOPPING: Fb303Status = Fb303Status(3); pub const STOPPED: Fb303Status = Fb303Status(4); pub const WARNING: Fb303Status = Fb303Status(5); pub const ENUM_VALUES: &'static [Self] = &[ Self::DEAD, Self::STARTING, Self::ALIVE, Self::STOPPING, Self::STOPPED, Self::WARNING, ]; #[allow(clippy::trivially_copy_pass_by_ref)] pub fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { o_prot.write_i32(self.0) } pub fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { let enum_value = i_prot.read_i32()?; Ok(Fb303Status::from(enum_value)) } } impl From for Fb303Status { fn from(i: i32) -> Self { match i { 0 => Fb303Status::DEAD, 1 => Fb303Status::STARTING, 2 => Fb303Status::ALIVE, 3 => Fb303Status::STOPPING, 4 => Fb303Status::STOPPED, 5 => Fb303Status::WARNING, _ => Fb303Status(i) } } } impl From<&i32> for Fb303Status { fn from(i: &i32) -> Self { Fb303Status::from(*i) } } impl From for i32 { fn from(e: Fb303Status) -> i32 { e.0 } } impl From<&Fb303Status> for i32 { fn from(e: &Fb303Status) -> i32 { e.0 } } // // BaseService service client // /// Standard base service interface. /// /// This interface provides methods to get some service metadata that is common /// across many services. pub trait TBaseServiceSyncClient { /// Gets the status of this service fn get_status(&mut self) -> thrift::Result; /// Returns a descriptive name of the service fn get_name(&mut self) -> thrift::Result; /// Returns the version of the service fn get_version(&mut self) -> thrift::Result; /// User friendly description of status, such as why the service is in /// the dead or warning state, or what is being started or stopped. fn get_status_details(&mut self) -> thrift::Result; /// Gets the counters for this service fn get_counters(&mut self) -> thrift::Result>; /// Gets a subset of counters which match a /// Perl Compatible Regular Expression for this service fn get_regex_counters(&mut self, regex: String) -> thrift::Result>; /// Get counter values for a specific list of keys. Returns a map from /// key to counter value; if a requested counter doesn't exist, it won't /// be in the returned map. fn get_selected_counters(&mut self, keys: Vec) -> thrift::Result>; /// Gets the value of a single counter fn get_counter(&mut self, key: String) -> thrift::Result; /// Gets the exported string values for this service fn get_exported_values(&mut self) -> thrift::Result>; /// Get exported strings for a specific list of keys. Returns a map from /// key to string value; if a requested key doesn't exist, it won't /// be in the returned map. fn get_selected_exported_values(&mut self, keys: Vec) -> thrift::Result>; /// Gets a subset of exported values which match a /// Perl Compatible Regular Expression for this service fn get_regex_exported_values(&mut self, regex: String) -> thrift::Result>; /// Gets the value of a single exported string fn get_exported_value(&mut self, key: String) -> thrift::Result; /// Sets an option fn set_option(&mut self, key: String, value: String) -> thrift::Result<()>; /// Gets an option fn get_option(&mut self, key: String) -> thrift::Result; /// Gets all options fn get_options(&mut self) -> thrift::Result>; /// Returns the unix time that the server has been running since fn alive_since(&mut self) -> thrift::Result; } pub trait TBaseServiceSyncClientMarker {} pub struct BaseServiceSyncClient where IP: TInputProtocol, OP: TOutputProtocol { _i_prot: IP, _o_prot: OP, _sequence_number: i32, } impl BaseServiceSyncClient where IP: TInputProtocol, OP: TOutputProtocol { pub fn new(input_protocol: IP, output_protocol: OP) -> BaseServiceSyncClient { BaseServiceSyncClient { _i_prot: input_protocol, _o_prot: output_protocol, _sequence_number: 0 } } } impl TThriftClient for BaseServiceSyncClient where IP: TInputProtocol, OP: TOutputProtocol { fn i_prot_mut(&mut self) -> &mut dyn TInputProtocol { &mut self._i_prot } fn o_prot_mut(&mut self) -> &mut dyn TOutputProtocol { &mut self._o_prot } fn sequence_number(&self) -> i32 { self._sequence_number } fn increment_sequence_number(&mut self) -> i32 { self._sequence_number += 1; self._sequence_number } } impl TBaseServiceSyncClientMarker for BaseServiceSyncClient where IP: TInputProtocol, OP: TOutputProtocol {} impl TBaseServiceSyncClient for C { fn get_status(&mut self) -> thrift::Result { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getStatus", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetStatusArgs { }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getStatus", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetStatusResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_name(&mut self) -> thrift::Result { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getName", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetNameArgs { }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getName", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetNameResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_version(&mut self) -> thrift::Result { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getVersion", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetVersionArgs { }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getVersion", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetVersionResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_status_details(&mut self) -> thrift::Result { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getStatusDetails", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetStatusDetailsArgs { }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getStatusDetails", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetStatusDetailsResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_counters(&mut self) -> thrift::Result> { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getCounters", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetCountersArgs { }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getCounters", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetCountersResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_regex_counters(&mut self, regex: String) -> thrift::Result> { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getRegexCounters", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetRegexCountersArgs { regex }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getRegexCounters", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetRegexCountersResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_selected_counters(&mut self, keys: Vec) -> thrift::Result> { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getSelectedCounters", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetSelectedCountersArgs { keys }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getSelectedCounters", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetSelectedCountersResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_counter(&mut self, key: String) -> thrift::Result { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getCounter", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetCounterArgs { key }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getCounter", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetCounterResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_exported_values(&mut self) -> thrift::Result> { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getExportedValues", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetExportedValuesArgs { }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getExportedValues", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetExportedValuesResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_selected_exported_values(&mut self, keys: Vec) -> thrift::Result> { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getSelectedExportedValues", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetSelectedExportedValuesArgs { keys }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getSelectedExportedValues", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetSelectedExportedValuesResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_regex_exported_values(&mut self, regex: String) -> thrift::Result> { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getRegexExportedValues", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetRegexExportedValuesArgs { regex }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getRegexExportedValues", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetRegexExportedValuesResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_exported_value(&mut self, key: String) -> thrift::Result { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getExportedValue", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetExportedValueArgs { key }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getExportedValue", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetExportedValueResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn set_option(&mut self, key: String, value: String) -> thrift::Result<()> { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("setOption", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceSetOptionArgs { key, value }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("setOption", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceSetOptionResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_option(&mut self, key: String) -> thrift::Result { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getOption", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetOptionArgs { key }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getOption", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetOptionResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn get_options(&mut self) -> thrift::Result> { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("getOptions", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceGetOptionsArgs { }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("getOptions", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceGetOptionsResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } fn alive_since(&mut self) -> thrift::Result { ( { self.increment_sequence_number(); let message_ident = TMessageIdentifier::new("aliveSince", TMessageType::Call, self.sequence_number()); let call_args = BaseServiceAliveSinceArgs { }; self.o_prot_mut().write_message_begin(&message_ident)?; call_args.write_to_out_protocol(self.o_prot_mut())?; self.o_prot_mut().write_message_end()?; self.o_prot_mut().flush() } )?; { let message_ident = self.i_prot_mut().read_message_begin()?; verify_expected_sequence_number(self.sequence_number(), message_ident.sequence_number)?; verify_expected_service_call("aliveSince", &message_ident.name)?; if message_ident.message_type == TMessageType::Exception { let remote_error = thrift::Error::read_application_error_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; return Err(thrift::Error::Application(remote_error)) } verify_expected_message_type(TMessageType::Reply, message_ident.message_type)?; let result = BaseServiceAliveSinceResult::read_from_in_protocol(self.i_prot_mut())?; self.i_prot_mut().read_message_end()?; result.ok_or() } } } // // BaseService service processor // /// Standard base service interface. /// /// This interface provides methods to get some service metadata that is common /// across many services. pub trait BaseServiceSyncHandler { /// Gets the status of this service fn handle_get_status(&self) -> thrift::Result; /// Returns a descriptive name of the service fn handle_get_name(&self) -> thrift::Result; /// Returns the version of the service fn handle_get_version(&self) -> thrift::Result; /// User friendly description of status, such as why the service is in /// the dead or warning state, or what is being started or stopped. fn handle_get_status_details(&self) -> thrift::Result; /// Gets the counters for this service fn handle_get_counters(&self) -> thrift::Result>; /// Gets a subset of counters which match a /// Perl Compatible Regular Expression for this service fn handle_get_regex_counters(&self, regex: String) -> thrift::Result>; /// Get counter values for a specific list of keys. Returns a map from /// key to counter value; if a requested counter doesn't exist, it won't /// be in the returned map. fn handle_get_selected_counters(&self, keys: Vec) -> thrift::Result>; /// Gets the value of a single counter fn handle_get_counter(&self, key: String) -> thrift::Result; /// Gets the exported string values for this service fn handle_get_exported_values(&self) -> thrift::Result>; /// Get exported strings for a specific list of keys. Returns a map from /// key to string value; if a requested key doesn't exist, it won't /// be in the returned map. fn handle_get_selected_exported_values(&self, keys: Vec) -> thrift::Result>; /// Gets a subset of exported values which match a /// Perl Compatible Regular Expression for this service fn handle_get_regex_exported_values(&self, regex: String) -> thrift::Result>; /// Gets the value of a single exported string fn handle_get_exported_value(&self, key: String) -> thrift::Result; /// Sets an option fn handle_set_option(&self, key: String, value: String) -> thrift::Result<()>; /// Gets an option fn handle_get_option(&self, key: String) -> thrift::Result; /// Gets all options fn handle_get_options(&self) -> thrift::Result>; /// Returns the unix time that the server has been running since fn handle_alive_since(&self) -> thrift::Result; } pub struct BaseServiceSyncProcessor { handler: H, } impl BaseServiceSyncProcessor { pub fn new(handler: H) -> BaseServiceSyncProcessor { BaseServiceSyncProcessor { handler, } } fn process_get_status(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_status(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_name(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_name(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_version(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_version(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_status_details(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_status_details(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_counters(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_counters(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_regex_counters(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_regex_counters(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_selected_counters(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_selected_counters(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_counter(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_counter(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_exported_values(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_exported_values(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_selected_exported_values(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_selected_exported_values(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_regex_exported_values(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_regex_exported_values(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_exported_value(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_exported_value(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_set_option(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_set_option(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_option(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_option(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_get_options(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_get_options(&self.handler, incoming_sequence_number, i_prot, o_prot) } fn process_alive_since(&self, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { TBaseServiceProcessFunctions::process_alive_since(&self.handler, incoming_sequence_number, i_prot, o_prot) } } pub struct TBaseServiceProcessFunctions; impl TBaseServiceProcessFunctions { pub fn process_get_status(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let _ = BaseServiceGetStatusArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_status() { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getStatus", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetStatusResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getStatus", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getStatus", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_name(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let _ = BaseServiceGetNameArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_name() { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getName", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetNameResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getName", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getName", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_version(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let _ = BaseServiceGetVersionArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_version() { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getVersion", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetVersionResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getVersion", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getVersion", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_status_details(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let _ = BaseServiceGetStatusDetailsArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_status_details() { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getStatusDetails", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetStatusDetailsResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getStatusDetails", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getStatusDetails", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_counters(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let _ = BaseServiceGetCountersArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_counters() { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getCounters", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetCountersResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getCounters", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getCounters", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_regex_counters(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let args = BaseServiceGetRegexCountersArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_regex_counters(args.regex) { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getRegexCounters", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetRegexCountersResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getRegexCounters", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getRegexCounters", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_selected_counters(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let args = BaseServiceGetSelectedCountersArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_selected_counters(args.keys) { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getSelectedCounters", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetSelectedCountersResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getSelectedCounters", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getSelectedCounters", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_counter(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let args = BaseServiceGetCounterArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_counter(args.key) { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getCounter", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetCounterResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getCounter", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getCounter", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_exported_values(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let _ = BaseServiceGetExportedValuesArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_exported_values() { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getExportedValues", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetExportedValuesResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getExportedValues", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getExportedValues", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_selected_exported_values(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let args = BaseServiceGetSelectedExportedValuesArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_selected_exported_values(args.keys) { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getSelectedExportedValues", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetSelectedExportedValuesResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getSelectedExportedValues", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getSelectedExportedValues", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_regex_exported_values(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let args = BaseServiceGetRegexExportedValuesArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_regex_exported_values(args.regex) { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getRegexExportedValues", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetRegexExportedValuesResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getRegexExportedValues", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getRegexExportedValues", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_exported_value(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let args = BaseServiceGetExportedValueArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_exported_value(args.key) { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getExportedValue", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetExportedValueResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getExportedValue", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getExportedValue", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_set_option(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let args = BaseServiceSetOptionArgs::read_from_in_protocol(i_prot)?; match handler.handle_set_option(args.key, args.value) { Ok(_) => { let message_ident = TMessageIdentifier::new("setOption", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceSetOptionResult { }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("setOption", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("setOption", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_option(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let args = BaseServiceGetOptionArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_option(args.key) { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getOption", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetOptionResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getOption", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getOption", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_get_options(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let _ = BaseServiceGetOptionsArgs::read_from_in_protocol(i_prot)?; match handler.handle_get_options() { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("getOptions", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceGetOptionsResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("getOptions", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("getOptions", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } pub fn process_alive_since(handler: &H, incoming_sequence_number: i32, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let _ = BaseServiceAliveSinceArgs::read_from_in_protocol(i_prot)?; match handler.handle_alive_since() { Ok(handler_return) => { let message_ident = TMessageIdentifier::new("aliveSince", TMessageType::Reply, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; let ret = BaseServiceAliveSinceResult { result_value: Some(handler_return) }; ret.write_to_out_protocol(o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, Err(e) => { match e { thrift::Error::Application(app_err) => { let message_ident = TMessageIdentifier::new("aliveSince", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&app_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, _ => { let ret_err = { ApplicationError::new( ApplicationErrorKind::Unknown, e.to_string() ) }; let message_ident = TMessageIdentifier::new("aliveSince", TMessageType::Exception, incoming_sequence_number); o_prot.write_message_begin(&message_ident)?; thrift::Error::write_application_error_to_out_protocol(&ret_err, o_prot)?; o_prot.write_message_end()?; o_prot.flush() }, } }, } } } impl TProcessor for BaseServiceSyncProcessor { fn process(&self, i_prot: &mut dyn TInputProtocol, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let message_ident = i_prot.read_message_begin()?; let res = match &*message_ident.name { "getStatus" => { self.process_get_status(message_ident.sequence_number, i_prot, o_prot) }, "getName" => { self.process_get_name(message_ident.sequence_number, i_prot, o_prot) }, "getVersion" => { self.process_get_version(message_ident.sequence_number, i_prot, o_prot) }, "getStatusDetails" => { self.process_get_status_details(message_ident.sequence_number, i_prot, o_prot) }, "getCounters" => { self.process_get_counters(message_ident.sequence_number, i_prot, o_prot) }, "getRegexCounters" => { self.process_get_regex_counters(message_ident.sequence_number, i_prot, o_prot) }, "getSelectedCounters" => { self.process_get_selected_counters(message_ident.sequence_number, i_prot, o_prot) }, "getCounter" => { self.process_get_counter(message_ident.sequence_number, i_prot, o_prot) }, "getExportedValues" => { self.process_get_exported_values(message_ident.sequence_number, i_prot, o_prot) }, "getSelectedExportedValues" => { self.process_get_selected_exported_values(message_ident.sequence_number, i_prot, o_prot) }, "getRegexExportedValues" => { self.process_get_regex_exported_values(message_ident.sequence_number, i_prot, o_prot) }, "getExportedValue" => { self.process_get_exported_value(message_ident.sequence_number, i_prot, o_prot) }, "setOption" => { self.process_set_option(message_ident.sequence_number, i_prot, o_prot) }, "getOption" => { self.process_get_option(message_ident.sequence_number, i_prot, o_prot) }, "getOptions" => { self.process_get_options(message_ident.sequence_number, i_prot, o_prot) }, "aliveSince" => { self.process_alive_since(message_ident.sequence_number, i_prot, o_prot) }, method => { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::UnknownMethod, format!("unknown method {}", method) ) ) ) }, }; thrift::server::handle_process_result(&message_ident, res, o_prot) } } // // BaseServiceGetStatusArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetStatusArgs { } impl BaseServiceGetStatusArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetStatusArgs {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getStatus_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetStatusResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetStatusResult { result_value: Option, } impl BaseServiceGetStatusResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let val = Fb303Status::read_from_in_protocol(i_prot)?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetStatusResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetStatusResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::I32, 0))?; fld_var.write_to_out_protocol(o_prot)?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetStatus" ) ) ) } } } // // BaseServiceGetNameArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetNameArgs { } impl BaseServiceGetNameArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetNameArgs {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getName_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetNameResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetNameResult { result_value: Option, } impl BaseServiceGetNameResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let val = i_prot.read_string()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetNameResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetNameResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::String, 0))?; o_prot.write_string(fld_var)?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetName" ) ) ) } } } // // BaseServiceGetVersionArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetVersionArgs { } impl BaseServiceGetVersionArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetVersionArgs {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getVersion_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetVersionResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetVersionResult { result_value: Option, } impl BaseServiceGetVersionResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let val = i_prot.read_string()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetVersionResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetVersionResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::String, 0))?; o_prot.write_string(fld_var)?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetVersion" ) ) ) } } } // // BaseServiceGetStatusDetailsArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetStatusDetailsArgs { } impl BaseServiceGetStatusDetailsArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetStatusDetailsArgs {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getStatusDetails_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetStatusDetailsResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetStatusDetailsResult { result_value: Option, } impl BaseServiceGetStatusDetailsResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let val = i_prot.read_string()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetStatusDetailsResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetStatusDetailsResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::String, 0))?; o_prot.write_string(fld_var)?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetStatusDetails" ) ) ) } } } // // BaseServiceGetCountersArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetCountersArgs { } impl BaseServiceGetCountersArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetCountersArgs {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getCounters_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetCountersResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetCountersResult { result_value: Option>, } impl BaseServiceGetCountersResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let map_ident = i_prot.read_map_begin()?; let mut val: BTreeMap = BTreeMap::new(); for _ in 0..map_ident.size { let map_key_0 = i_prot.read_string()?; let map_val_1 = i_prot.read_i64()?; val.insert(map_key_0, map_val_1); } i_prot.read_map_end()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetCountersResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetCountersResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::Map, 0))?; o_prot.write_map_begin(&TMapIdentifier::new(TType::String, TType::I64, fld_var.len() as i32))?; for (k, v) in fld_var { o_prot.write_string(k)?; o_prot.write_i64(*v)?; } o_prot.write_map_end()?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result> { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetCounters" ) ) ) } } } // // BaseServiceGetRegexCountersArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetRegexCountersArgs { regex: String, } impl BaseServiceGetRegexCountersArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_1: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 1 => { let val = i_prot.read_string()?; f_1 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; verify_required_field_exists("BaseServiceGetRegexCountersArgs.regex", &f_1)?; let ret = BaseServiceGetRegexCountersArgs { regex: f_1.expect("auto-generated code should have checked for presence of required fields"), }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getRegexCounters_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_begin(&TFieldIdentifier::new("regex", TType::String, 1))?; o_prot.write_string(&self.regex)?; o_prot.write_field_end()?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetRegexCountersResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetRegexCountersResult { result_value: Option>, } impl BaseServiceGetRegexCountersResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let map_ident = i_prot.read_map_begin()?; let mut val: BTreeMap = BTreeMap::new(); for _ in 0..map_ident.size { let map_key_2 = i_prot.read_string()?; let map_val_3 = i_prot.read_i64()?; val.insert(map_key_2, map_val_3); } i_prot.read_map_end()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetRegexCountersResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetRegexCountersResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::Map, 0))?; o_prot.write_map_begin(&TMapIdentifier::new(TType::String, TType::I64, fld_var.len() as i32))?; for (k, v) in fld_var { o_prot.write_string(k)?; o_prot.write_i64(*v)?; } o_prot.write_map_end()?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result> { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetRegexCounters" ) ) ) } } } // // BaseServiceGetSelectedCountersArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetSelectedCountersArgs { keys: Vec, } impl BaseServiceGetSelectedCountersArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_1: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 1 => { let list_ident = i_prot.read_list_begin()?; let mut val: Vec = Vec::with_capacity(list_ident.size as usize); for _ in 0..list_ident.size { let list_elem_4 = i_prot.read_string()?; val.push(list_elem_4); } i_prot.read_list_end()?; f_1 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; verify_required_field_exists("BaseServiceGetSelectedCountersArgs.keys", &f_1)?; let ret = BaseServiceGetSelectedCountersArgs { keys: f_1.expect("auto-generated code should have checked for presence of required fields"), }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getSelectedCounters_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_begin(&TFieldIdentifier::new("keys", TType::List, 1))?; o_prot.write_list_begin(&TListIdentifier::new(TType::String, self.keys.len() as i32))?; for e in &self.keys { o_prot.write_string(e)?; } o_prot.write_list_end()?; o_prot.write_field_end()?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetSelectedCountersResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetSelectedCountersResult { result_value: Option>, } impl BaseServiceGetSelectedCountersResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let map_ident = i_prot.read_map_begin()?; let mut val: BTreeMap = BTreeMap::new(); for _ in 0..map_ident.size { let map_key_5 = i_prot.read_string()?; let map_val_6 = i_prot.read_i64()?; val.insert(map_key_5, map_val_6); } i_prot.read_map_end()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetSelectedCountersResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetSelectedCountersResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::Map, 0))?; o_prot.write_map_begin(&TMapIdentifier::new(TType::String, TType::I64, fld_var.len() as i32))?; for (k, v) in fld_var { o_prot.write_string(k)?; o_prot.write_i64(*v)?; } o_prot.write_map_end()?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result> { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetSelectedCounters" ) ) ) } } } // // BaseServiceGetCounterArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetCounterArgs { key: String, } impl BaseServiceGetCounterArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_1: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 1 => { let val = i_prot.read_string()?; f_1 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; verify_required_field_exists("BaseServiceGetCounterArgs.key", &f_1)?; let ret = BaseServiceGetCounterArgs { key: f_1.expect("auto-generated code should have checked for presence of required fields"), }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getCounter_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_begin(&TFieldIdentifier::new("key", TType::String, 1))?; o_prot.write_string(&self.key)?; o_prot.write_field_end()?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetCounterResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetCounterResult { result_value: Option, } impl BaseServiceGetCounterResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let val = i_prot.read_i64()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetCounterResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetCounterResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::I64, 0))?; o_prot.write_i64(fld_var)?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetCounter" ) ) ) } } } // // BaseServiceGetExportedValuesArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetExportedValuesArgs { } impl BaseServiceGetExportedValuesArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetExportedValuesArgs {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getExportedValues_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetExportedValuesResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetExportedValuesResult { result_value: Option>, } impl BaseServiceGetExportedValuesResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let map_ident = i_prot.read_map_begin()?; let mut val: BTreeMap = BTreeMap::new(); for _ in 0..map_ident.size { let map_key_7 = i_prot.read_string()?; let map_val_8 = i_prot.read_string()?; val.insert(map_key_7, map_val_8); } i_prot.read_map_end()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetExportedValuesResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetExportedValuesResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::Map, 0))?; o_prot.write_map_begin(&TMapIdentifier::new(TType::String, TType::String, fld_var.len() as i32))?; for (k, v) in fld_var { o_prot.write_string(k)?; o_prot.write_string(v)?; } o_prot.write_map_end()?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result> { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetExportedValues" ) ) ) } } } // // BaseServiceGetSelectedExportedValuesArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetSelectedExportedValuesArgs { keys: Vec, } impl BaseServiceGetSelectedExportedValuesArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_1: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 1 => { let list_ident = i_prot.read_list_begin()?; let mut val: Vec = Vec::with_capacity(list_ident.size as usize); for _ in 0..list_ident.size { let list_elem_9 = i_prot.read_string()?; val.push(list_elem_9); } i_prot.read_list_end()?; f_1 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; verify_required_field_exists("BaseServiceGetSelectedExportedValuesArgs.keys", &f_1)?; let ret = BaseServiceGetSelectedExportedValuesArgs { keys: f_1.expect("auto-generated code should have checked for presence of required fields"), }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getSelectedExportedValues_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_begin(&TFieldIdentifier::new("keys", TType::List, 1))?; o_prot.write_list_begin(&TListIdentifier::new(TType::String, self.keys.len() as i32))?; for e in &self.keys { o_prot.write_string(e)?; } o_prot.write_list_end()?; o_prot.write_field_end()?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetSelectedExportedValuesResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetSelectedExportedValuesResult { result_value: Option>, } impl BaseServiceGetSelectedExportedValuesResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let map_ident = i_prot.read_map_begin()?; let mut val: BTreeMap = BTreeMap::new(); for _ in 0..map_ident.size { let map_key_10 = i_prot.read_string()?; let map_val_11 = i_prot.read_string()?; val.insert(map_key_10, map_val_11); } i_prot.read_map_end()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetSelectedExportedValuesResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetSelectedExportedValuesResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::Map, 0))?; o_prot.write_map_begin(&TMapIdentifier::new(TType::String, TType::String, fld_var.len() as i32))?; for (k, v) in fld_var { o_prot.write_string(k)?; o_prot.write_string(v)?; } o_prot.write_map_end()?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result> { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetSelectedExportedValues" ) ) ) } } } // // BaseServiceGetRegexExportedValuesArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetRegexExportedValuesArgs { regex: String, } impl BaseServiceGetRegexExportedValuesArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_1: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 1 => { let val = i_prot.read_string()?; f_1 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; verify_required_field_exists("BaseServiceGetRegexExportedValuesArgs.regex", &f_1)?; let ret = BaseServiceGetRegexExportedValuesArgs { regex: f_1.expect("auto-generated code should have checked for presence of required fields"), }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getRegexExportedValues_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_begin(&TFieldIdentifier::new("regex", TType::String, 1))?; o_prot.write_string(&self.regex)?; o_prot.write_field_end()?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetRegexExportedValuesResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetRegexExportedValuesResult { result_value: Option>, } impl BaseServiceGetRegexExportedValuesResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let map_ident = i_prot.read_map_begin()?; let mut val: BTreeMap = BTreeMap::new(); for _ in 0..map_ident.size { let map_key_12 = i_prot.read_string()?; let map_val_13 = i_prot.read_string()?; val.insert(map_key_12, map_val_13); } i_prot.read_map_end()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetRegexExportedValuesResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetRegexExportedValuesResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::Map, 0))?; o_prot.write_map_begin(&TMapIdentifier::new(TType::String, TType::String, fld_var.len() as i32))?; for (k, v) in fld_var { o_prot.write_string(k)?; o_prot.write_string(v)?; } o_prot.write_map_end()?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result> { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetRegexExportedValues" ) ) ) } } } // // BaseServiceGetExportedValueArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetExportedValueArgs { key: String, } impl BaseServiceGetExportedValueArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_1: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 1 => { let val = i_prot.read_string()?; f_1 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; verify_required_field_exists("BaseServiceGetExportedValueArgs.key", &f_1)?; let ret = BaseServiceGetExportedValueArgs { key: f_1.expect("auto-generated code should have checked for presence of required fields"), }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getExportedValue_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_begin(&TFieldIdentifier::new("key", TType::String, 1))?; o_prot.write_string(&self.key)?; o_prot.write_field_end()?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetExportedValueResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetExportedValueResult { result_value: Option, } impl BaseServiceGetExportedValueResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let val = i_prot.read_string()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetExportedValueResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetExportedValueResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::String, 0))?; o_prot.write_string(fld_var)?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetExportedValue" ) ) ) } } } // // BaseServiceSetOptionArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceSetOptionArgs { key: String, value: String, } impl BaseServiceSetOptionArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_1: Option = None; let mut f_2: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 1 => { let val = i_prot.read_string()?; f_1 = Some(val); }, 2 => { let val = i_prot.read_string()?; f_2 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; verify_required_field_exists("BaseServiceSetOptionArgs.key", &f_1)?; verify_required_field_exists("BaseServiceSetOptionArgs.value", &f_2)?; let ret = BaseServiceSetOptionArgs { key: f_1.expect("auto-generated code should have checked for presence of required fields"), value: f_2.expect("auto-generated code should have checked for presence of required fields"), }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("setOption_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_begin(&TFieldIdentifier::new("key", TType::String, 1))?; o_prot.write_string(&self.key)?; o_prot.write_field_end()?; o_prot.write_field_begin(&TFieldIdentifier::new("value", TType::String, 2))?; o_prot.write_string(&self.value)?; o_prot.write_field_end()?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceSetOptionResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceSetOptionResult { } impl BaseServiceSetOptionResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceSetOptionResult {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceSetOptionResult"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result<()> { Ok(()) } } // // BaseServiceGetOptionArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetOptionArgs { key: String, } impl BaseServiceGetOptionArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_1: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 1 => { let val = i_prot.read_string()?; f_1 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; verify_required_field_exists("BaseServiceGetOptionArgs.key", &f_1)?; let ret = BaseServiceGetOptionArgs { key: f_1.expect("auto-generated code should have checked for presence of required fields"), }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getOption_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_begin(&TFieldIdentifier::new("key", TType::String, 1))?; o_prot.write_string(&self.key)?; o_prot.write_field_end()?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetOptionResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetOptionResult { result_value: Option, } impl BaseServiceGetOptionResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let val = i_prot.read_string()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetOptionResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetOptionResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::String, 0))?; o_prot.write_string(fld_var)?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetOption" ) ) ) } } } // // BaseServiceGetOptionsArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetOptionsArgs { } impl BaseServiceGetOptionsArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetOptionsArgs {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("getOptions_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceGetOptionsResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceGetOptionsResult { result_value: Option>, } impl BaseServiceGetOptionsResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option> = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let map_ident = i_prot.read_map_begin()?; let mut val: BTreeMap = BTreeMap::new(); for _ in 0..map_ident.size { let map_key_14 = i_prot.read_string()?; let map_val_15 = i_prot.read_string()?; val.insert(map_key_14, map_val_15); } i_prot.read_map_end()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceGetOptionsResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceGetOptionsResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(ref fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::Map, 0))?; o_prot.write_map_begin(&TMapIdentifier::new(TType::String, TType::String, fld_var.len() as i32))?; for (k, v) in fld_var { o_prot.write_string(k)?; o_prot.write_string(v)?; } o_prot.write_map_end()?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result> { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceGetOptions" ) ) ) } } } // // BaseServiceAliveSinceArgs // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceAliveSinceArgs { } impl BaseServiceAliveSinceArgs { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceAliveSinceArgs {}; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("aliveSince_args"); o_prot.write_struct_begin(&struct_ident)?; o_prot.write_field_stop()?; o_prot.write_struct_end() } } // // BaseServiceAliveSinceResult // #[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)] struct BaseServiceAliveSinceResult { result_value: Option, } impl BaseServiceAliveSinceResult { fn read_from_in_protocol(i_prot: &mut dyn TInputProtocol) -> thrift::Result { i_prot.read_struct_begin()?; let mut f_0: Option = None; loop { let field_ident = i_prot.read_field_begin()?; if field_ident.field_type == TType::Stop { break; } let field_id = field_id(&field_ident)?; match field_id { 0 => { let val = i_prot.read_i64()?; f_0 = Some(val); }, _ => { i_prot.skip(field_ident.field_type)?; }, }; i_prot.read_field_end()?; } i_prot.read_struct_end()?; let ret = BaseServiceAliveSinceResult { result_value: f_0, }; Ok(ret) } fn write_to_out_protocol(&self, o_prot: &mut dyn TOutputProtocol) -> thrift::Result<()> { let struct_ident = TStructIdentifier::new("BaseServiceAliveSinceResult"); o_prot.write_struct_begin(&struct_ident)?; if let Some(fld_var) = self.result_value { o_prot.write_field_begin(&TFieldIdentifier::new("result_value", TType::I64, 0))?; o_prot.write_i64(fld_var)?; o_prot.write_field_end()? } o_prot.write_field_stop()?; o_prot.write_struct_end() } fn ok_or(self) -> thrift::Result { if self.result_value.is_some() { Ok(self.result_value.unwrap()) } else { Err( thrift::Error::Application( ApplicationError::new( ApplicationErrorKind::MissingResult, "no result received for BaseServiceAliveSince" ) ) ) } } }