Created
February 22, 2021 22:40
-
-
Save SmallEndian/2e605b5cdd24dea7abf25087fd28ce85 to your computer and use it in GitHub Desktop.
Auto generated DBus rust
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // This code was autogenerated with `dbus-codegen-rust -nd org.freedesktop.DBus`, see https://github.com/diwic/dbus-rs | |
| use dbus as dbus; | |
| #[allow(unused_imports)] | |
| use dbus::arg; | |
| use dbus_tree as tree; | |
| pub trait OrgFreedesktopDBus { | |
| fn hello(&self) -> Result<String, tree::MethodErr>; | |
| fn request_name(&self, arg0: &str, arg1: u32) -> Result<u32, tree::MethodErr>; | |
| fn release_name(&self, arg0: &str) -> Result<u32, tree::MethodErr>; | |
| fn start_service_by_name(&self, arg0: &str, arg1: u32) -> Result<u32, tree::MethodErr>; | |
| fn update_activation_environment(&self, arg0: ::std::collections::HashMap<&str, &str>) -> Result<(), tree::MethodErr>; | |
| fn name_has_owner(&self, arg0: &str) -> Result<bool, tree::MethodErr>; | |
| fn list_names(&self) -> Result<Vec<String>, tree::MethodErr>; | |
| fn list_activatable_names(&self) -> Result<Vec<String>, tree::MethodErr>; | |
| fn add_match(&self, arg0: &str) -> Result<(), tree::MethodErr>; | |
| fn remove_match(&self, arg0: &str) -> Result<(), tree::MethodErr>; | |
| fn get_name_owner(&self, arg0: &str) -> Result<String, tree::MethodErr>; | |
| fn list_queued_owners(&self, arg0: &str) -> Result<Vec<String>, tree::MethodErr>; | |
| fn get_connection_unix_user(&self, arg0: &str) -> Result<u32, tree::MethodErr>; | |
| fn get_connection_unix_process_id(&self, arg0: &str) -> Result<u32, tree::MethodErr>; | |
| fn get_adt_audit_session_data(&self, arg0: &str) -> Result<Vec<u8>, tree::MethodErr>; | |
| fn get_connection_selinux_security_context(&self, arg0: &str) -> Result<Vec<u8>, tree::MethodErr>; | |
| fn reload_config(&self) -> Result<(), tree::MethodErr>; | |
| fn get_id(&self) -> Result<String, tree::MethodErr>; | |
| fn get_connection_credentials(&self, arg0: &str) -> Result<arg::PropMap, tree::MethodErr>; | |
| fn features(&self) -> Result<Vec<String>, tree::MethodErr>; | |
| fn interfaces(&self) -> Result<Vec<String>, tree::MethodErr>; | |
| } | |
| pub fn org_freedesktop_dbus_server<F, T, D>(factory: &tree::Factory<tree::MTFn<D>, D>, data: D::Interface, f: F) -> tree::Interface<tree::MTFn<D>, D> | |
| where | |
| D: tree::DataType, | |
| D::Method: Default, | |
| D::Property: Default, | |
| D::Signal: Default, | |
| T: OrgFreedesktopDBus, | |
| F: 'static + for <'z> Fn(& 'z tree::MethodInfo<tree::MTFn<D>, D>) -> & 'z T, | |
| { | |
| let i = factory.interface("org.freedesktop.DBus", data); | |
| let f = ::std::sync::Arc::new(f); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let d = fclone(minfo); | |
| let arg0 = d.hello()?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("Hello", Default::default(), h); | |
| let m = m.out_arg(("", "s")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let arg1: u32 = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.request_name(arg0, arg1)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("RequestName", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.in_arg(("", "u")); | |
| let m = m.out_arg(("", "u")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.release_name(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("ReleaseName", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "u")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let arg1: u32 = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.start_service_by_name(arg0, arg1)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("StartServiceByName", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.in_arg(("", "u")); | |
| let m = m.out_arg(("", "u")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: ::std::collections::HashMap<&str, &str> = i.read()?; | |
| let d = fclone(minfo); | |
| d.update_activation_environment(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("UpdateActivationEnvironment", Default::default(), h); | |
| let m = m.in_arg(("", "a{ss}")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.name_has_owner(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("NameHasOwner", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "b")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let d = fclone(minfo); | |
| let arg0 = d.list_names()?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("ListNames", Default::default(), h); | |
| let m = m.out_arg(("", "as")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let d = fclone(minfo); | |
| let arg0 = d.list_activatable_names()?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("ListActivatableNames", Default::default(), h); | |
| let m = m.out_arg(("", "as")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| d.add_match(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("AddMatch", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| d.remove_match(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("RemoveMatch", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.get_name_owner(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("GetNameOwner", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "s")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.list_queued_owners(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("ListQueuedOwners", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "as")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.get_connection_unix_user(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("GetConnectionUnixUser", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "u")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.get_connection_unix_process_id(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("GetConnectionUnixProcessID", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "u")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.get_adt_audit_session_data(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("GetAdtAuditSessionData", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "ay")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.get_connection_selinux_security_context(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("GetConnectionSELinuxSecurityContext", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "ay")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let d = fclone(minfo); | |
| d.reload_config()?; | |
| let rm = minfo.msg.method_return(); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("ReloadConfig", Default::default(), h); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let d = fclone(minfo); | |
| let arg0 = d.get_id()?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("GetId", Default::default(), h); | |
| let m = m.out_arg(("", "s")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let mut i = minfo.msg.iter_init(); | |
| let arg0: &str = i.read()?; | |
| let d = fclone(minfo); | |
| let arg0 = d.get_connection_credentials(arg0)?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("GetConnectionCredentials", Default::default(), h); | |
| let m = m.in_arg(("", "s")); | |
| let m = m.out_arg(("", "a{sv}")); | |
| let i = i.add_m(m); | |
| let p = factory.property::<Vec<&str>, _>("Features", Default::default()); | |
| let p = p.access(tree::Access::Read); | |
| let fclone = f.clone(); | |
| let p = p.on_get(move |a, pinfo| { | |
| let minfo = pinfo.to_method_info(); | |
| let d = fclone(&minfo); | |
| a.append(d.features()?); | |
| Ok(()) | |
| }); | |
| let i = i.add_p(p); | |
| let p = factory.property::<Vec<&str>, _>("Interfaces", Default::default()); | |
| let p = p.access(tree::Access::Read); | |
| let fclone = f.clone(); | |
| let p = p.on_get(move |a, pinfo| { | |
| let minfo = pinfo.to_method_info(); | |
| let d = fclone(&minfo); | |
| a.append(d.interfaces()?); | |
| Ok(()) | |
| }); | |
| let i = i.add_p(p); | |
| let s = factory.signal("NameOwnerChanged", Default::default()); | |
| let s = s.arg(("", "s")); | |
| let s = s.arg(("", "s")); | |
| let s = s.arg(("", "s")); | |
| let i = i.add_s(s); | |
| let s = factory.signal("NameLost", Default::default()); | |
| let s = s.arg(("", "s")); | |
| let i = i.add_s(s); | |
| let s = factory.signal("NameAcquired", Default::default()); | |
| let s = s.arg(("", "s")); | |
| let i = i.add_s(s); | |
| i | |
| } | |
| #[derive(Debug)] | |
| pub struct OrgFreedesktopDBusNameOwnerChanged { | |
| pub arg0: String, | |
| pub arg1: String, | |
| pub arg2: String, | |
| } | |
| impl arg::AppendAll for OrgFreedesktopDBusNameOwnerChanged { | |
| fn append(&self, i: &mut arg::IterAppend) { | |
| arg::RefArg::append(&self.arg0, i); | |
| arg::RefArg::append(&self.arg1, i); | |
| arg::RefArg::append(&self.arg2, i); | |
| } | |
| } | |
| impl arg::ReadAll for OrgFreedesktopDBusNameOwnerChanged { | |
| fn read(i: &mut arg::Iter) -> Result<Self, arg::TypeMismatchError> { | |
| Ok(OrgFreedesktopDBusNameOwnerChanged { | |
| arg0: i.read()?, | |
| arg1: i.read()?, | |
| arg2: i.read()?, | |
| }) | |
| } | |
| } | |
| impl dbus::message::SignalArgs for OrgFreedesktopDBusNameOwnerChanged { | |
| const NAME: &'static str = "NameOwnerChanged"; | |
| const INTERFACE: &'static str = "org.freedesktop.DBus"; | |
| } | |
| #[derive(Debug)] | |
| pub struct OrgFreedesktopDBusNameLost { | |
| pub arg0: String, | |
| } | |
| impl arg::AppendAll for OrgFreedesktopDBusNameLost { | |
| fn append(&self, i: &mut arg::IterAppend) { | |
| arg::RefArg::append(&self.arg0, i); | |
| } | |
| } | |
| impl arg::ReadAll for OrgFreedesktopDBusNameLost { | |
| fn read(i: &mut arg::Iter) -> Result<Self, arg::TypeMismatchError> { | |
| Ok(OrgFreedesktopDBusNameLost { | |
| arg0: i.read()?, | |
| }) | |
| } | |
| } | |
| impl dbus::message::SignalArgs for OrgFreedesktopDBusNameLost { | |
| const NAME: &'static str = "NameLost"; | |
| const INTERFACE: &'static str = "org.freedesktop.DBus"; | |
| } | |
| #[derive(Debug)] | |
| pub struct OrgFreedesktopDBusNameAcquired { | |
| pub arg0: String, | |
| } | |
| impl arg::AppendAll for OrgFreedesktopDBusNameAcquired { | |
| fn append(&self, i: &mut arg::IterAppend) { | |
| arg::RefArg::append(&self.arg0, i); | |
| } | |
| } | |
| impl arg::ReadAll for OrgFreedesktopDBusNameAcquired { | |
| fn read(i: &mut arg::Iter) -> Result<Self, arg::TypeMismatchError> { | |
| Ok(OrgFreedesktopDBusNameAcquired { | |
| arg0: i.read()?, | |
| }) | |
| } | |
| } | |
| impl dbus::message::SignalArgs for OrgFreedesktopDBusNameAcquired { | |
| const NAME: &'static str = "NameAcquired"; | |
| const INTERFACE: &'static str = "org.freedesktop.DBus"; | |
| } | |
| pub const ORG_FREEDESKTOP_DBUS_NAME: &str = "org.freedesktop.DBus"; | |
| #[derive(Copy, Clone, Debug)] | |
| pub struct OrgFreedesktopDBusProperties<'a>(pub &'a arg::PropMap); | |
| impl<'a> OrgFreedesktopDBusProperties<'a> { | |
| pub fn from_interfaces( | |
| interfaces: &'a ::std::collections::HashMap<String, arg::PropMap>, | |
| ) -> Option<Self> { | |
| interfaces.get("org.freedesktop.DBus").map(Self) | |
| } | |
| pub fn features(&self) -> Option<&Vec<String>> { | |
| arg::prop_cast(self.0, "Features") | |
| } | |
| pub fn interfaces(&self) -> Option<&Vec<String>> { | |
| arg::prop_cast(self.0, "Interfaces") | |
| } | |
| } | |
| pub trait OrgFreedesktopDBusIntrospectable { | |
| fn introspect(&self) -> Result<String, tree::MethodErr>; | |
| } | |
| pub fn org_freedesktop_dbus_introspectable_server<F, T, D>(factory: &tree::Factory<tree::MTFn<D>, D>, data: D::Interface, f: F) -> tree::Interface<tree::MTFn<D>, D> | |
| where | |
| D: tree::DataType, | |
| D::Method: Default, | |
| T: OrgFreedesktopDBusIntrospectable, | |
| F: 'static + for <'z> Fn(& 'z tree::MethodInfo<tree::MTFn<D>, D>) -> & 'z T, | |
| { | |
| let i = factory.interface("org.freedesktop.DBus.Introspectable", data); | |
| let f = ::std::sync::Arc::new(f); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let d = fclone(minfo); | |
| let arg0 = d.introspect()?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("Introspect", Default::default(), h); | |
| let m = m.out_arg(("", "s")); | |
| let i = i.add_m(m); | |
| i | |
| } | |
| pub const ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_NAME: &str = "org.freedesktop.DBus.Introspectable"; | |
| pub trait OrgFreedesktopDBusPeer { | |
| fn get_machine_id(&self) -> Result<String, tree::MethodErr>; | |
| fn ping(&self) -> Result<(), tree::MethodErr>; | |
| } | |
| pub fn org_freedesktop_dbus_peer_server<F, T, D>(factory: &tree::Factory<tree::MTFn<D>, D>, data: D::Interface, f: F) -> tree::Interface<tree::MTFn<D>, D> | |
| where | |
| D: tree::DataType, | |
| D::Method: Default, | |
| T: OrgFreedesktopDBusPeer, | |
| F: 'static + for <'z> Fn(& 'z tree::MethodInfo<tree::MTFn<D>, D>) -> & 'z T, | |
| { | |
| let i = factory.interface("org.freedesktop.DBus.Peer", data); | |
| let f = ::std::sync::Arc::new(f); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let d = fclone(minfo); | |
| let arg0 = d.get_machine_id()?; | |
| let rm = minfo.msg.method_return(); | |
| let rm = rm.append1(arg0); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("GetMachineId", Default::default(), h); | |
| let m = m.out_arg(("", "s")); | |
| let i = i.add_m(m); | |
| let fclone = f.clone(); | |
| let h = move |minfo: &tree::MethodInfo<tree::MTFn<D>, D>| { | |
| let d = fclone(minfo); | |
| d.ping()?; | |
| let rm = minfo.msg.method_return(); | |
| Ok(vec!(rm)) | |
| }; | |
| let m = factory.method("Ping", Default::default(), h); | |
| let i = i.add_m(m); | |
| i | |
| } | |
| pub const ORG_FREEDESKTOP_DBUS_PEER_NAME: &str = "org.freedesktop.DBus.Peer"; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment