Struct zbus::fdo::ObjectManager
source · [−]pub struct ObjectManager;
Expand description
Service-side Object Manager interface implementation.
The recommended path to add this interface at is the path form of the well-known name of a D-Bus
service, or below. For example, if a D-Bus service is available at the well-known name
net.example.ExampleService1
, this interface should typically be registered at
/net/example/ExampleService1
, or below (to allow for multiple object managers in a service).
It is supported, but not recommended, to add this interface at the root path, /
.
When added to an ObjectServer
, InterfacesAdded
signal is emitted for all the objects under
the path
its added at. You can use this fact to minimize the signal emissions by populating
the entire (sub)tree under path
before registering an object manager.
Implementations
sourceimpl ObjectManager
impl ObjectManager
sourcepub async fn interfaces_added(
ctxt: &SignalContext<'_>,
object_path: &ObjectPath<'_>,
interfaces_and_properties: &HashMap<InterfaceName<'_>, HashMap<&str, Value<'_>>>
) -> Result<()>
pub async fn interfaces_added(
ctxt: &SignalContext<'_>,
object_path: &ObjectPath<'_>,
interfaces_and_properties: &HashMap<InterfaceName<'_>, HashMap<&str, Value<'_>>>
) -> Result<()>
This signal is emitted when either a new object is added or when an existing object gains
one or more interfaces. The interfaces_and_properties
argument contains a map with the
interfaces and properties (if any) that have been added to the given object path.
sourcepub async fn interfaces_removed(
ctxt: &SignalContext<'_>,
object_path: &ObjectPath<'_>,
interfaces: &[InterfaceName<'_>]
) -> Result<()>
pub async fn interfaces_removed(
ctxt: &SignalContext<'_>,
object_path: &ObjectPath<'_>,
interfaces: &[InterfaceName<'_>]
) -> Result<()>
This signal is emitted whenever an object is removed or it loses one or more interfaces.
The interfaces
parameters contains a list of the interfaces that were removed.
Trait Implementations
sourceimpl Clone for ObjectManager
impl Clone for ObjectManager
sourcefn clone(&self) -> ObjectManager
fn clone(&self) -> ObjectManager
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for ObjectManager
impl Debug for ObjectManager
sourceimpl Interface for ObjectManager
impl Interface for ObjectManager
sourcefn name() -> InterfaceName<'static>
fn name() -> InterfaceName<'static>
Return the name of the interface. Ex: “org.foo.MyInterface”
sourcefn get<'life0, 'life1, 'async_trait>(
&'life0 self,
property_name: &'life1 str
) -> Pin<Box<dyn Future<Output = Option<Result<OwnedValue>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
property_name: &'life1 str
) -> Pin<Box<dyn Future<Output = Option<Result<OwnedValue>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get a property value. Returns None
if the property doesn’t exist.
sourcefn get_all<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = HashMap<String, OwnedValue>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_all<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = HashMap<String, OwnedValue>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Return all the properties.
sourcefn set<'call>(
&'call self,
property_name: &'call str,
value: &'call Value<'_>,
signal_context: &'call SignalContext<'_>
) -> DispatchResult<'call>
fn set<'call>(
&'call self,
property_name: &'call str,
value: &'call Value<'_>,
signal_context: &'call SignalContext<'_>
) -> DispatchResult<'call>
Set a property value. Read more
sourcefn set_mut<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'async_trait>(
&'life0 mut self,
property_name: &'life1 str,
value: &'life2 Value<'life3>,
signal_context: &'life4 SignalContext<'life5>
) -> Pin<Box<dyn Future<Output = Option<Result<()>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
Self: 'async_trait,
fn set_mut<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'async_trait>(
&'life0 mut self,
property_name: &'life1 str,
value: &'life2 Value<'life3>,
signal_context: &'life4 SignalContext<'life5>
) -> Pin<Box<dyn Future<Output = Option<Result<()>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
Self: 'async_trait,
Set a property value. Read more
sourcefn call<'call>(
&'call self,
s: &'call ObjectServer,
c: &'call Connection,
m: &'call Message,
name: MemberName<'call>
) -> DispatchResult<'call>
fn call<'call>(
&'call self,
s: &'call ObjectServer,
c: &'call Connection,
m: &'call Message,
name: MemberName<'call>
) -> DispatchResult<'call>
Call a method. Read more
sourcefn call_mut<'call>(
&'call mut self,
s: &'call ObjectServer,
c: &'call Connection,
m: &'call Message,
name: MemberName<'call>
) -> DispatchResult<'call>
fn call_mut<'call>(
&'call mut self,
s: &'call ObjectServer,
c: &'call Connection,
m: &'call Message,
name: MemberName<'call>
) -> DispatchResult<'call>
Call a &mut self
method. Read more
sourcefn introspect_to_writer(&self, writer: &mut dyn Write, level: usize)
fn introspect_to_writer(&self, writer: &mut dyn Write, level: usize)
Write introspection XML to the writer, with the given indentation level.
Auto Trait Implementations
impl RefUnwindSafe for ObjectManager
impl Send for ObjectManager
impl Sync for ObjectManager
impl Unpin for ObjectManager
impl UnwindSafe for ObjectManager
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more