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
, the InterfacesAdded
signal is emitted for all the objects
under the path
it’s 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§
Source§impl ObjectManager
impl ObjectManager
Sourcepub async fn interfaces_added(
emitter: &SignalEmitter<'_>,
object_path: ObjectPath<'_>,
interfaces_and_properties: HashMap<InterfaceName<'_>, HashMap<&str, Value<'_>>>,
) -> Result<()>
pub async fn interfaces_added( emitter: &SignalEmitter<'_>, 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(
emitter: &SignalEmitter<'_>,
object_path: ObjectPath<'_>,
interfaces: Cow<'_, [InterfaceName<'_>]>,
) -> Result<()>
pub async fn interfaces_removed( emitter: &SignalEmitter<'_>, object_path: ObjectPath<'_>, interfaces: Cow<'_, [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§
Source§impl Clone for ObjectManager
impl Clone for ObjectManager
Source§fn clone(&self) -> ObjectManager
fn clone(&self) -> ObjectManager
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ObjectManager
impl Debug for ObjectManager
Source§impl Interface for ObjectManager
impl Interface for ObjectManager
Source§fn name() -> InterfaceName<'static>
fn name() -> InterfaceName<'static>
Source§fn spawn_tasks_for_methods(&self) -> bool
fn spawn_tasks_for_methods(&self) -> bool
Source§fn get<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'life7, 'async_trait>(
&'life0 self,
__zbus__property_name: &'life1 str,
__zbus__object_server: &'life2 ObjectServer,
__zbus__connection: &'life3 Connection,
__zbus__header: Option<&'life4 Header<'life5>>,
__zbus__signal_emitter: &'life6 SignalEmitter<'life7>,
) -> Pin<Box<dyn Future<Output = Option<Result<OwnedValue>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
'life6: 'async_trait,
'life7: 'async_trait,
fn get<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'life7, 'async_trait>(
&'life0 self,
__zbus__property_name: &'life1 str,
__zbus__object_server: &'life2 ObjectServer,
__zbus__connection: &'life3 Connection,
__zbus__header: Option<&'life4 Header<'life5>>,
__zbus__signal_emitter: &'life6 SignalEmitter<'life7>,
) -> Pin<Box<dyn Future<Output = Option<Result<OwnedValue>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
'life6: 'async_trait,
'life7: 'async_trait,
None
if the property doesn’t exist. Read moreSource§fn get_all<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'async_trait>(
&'life0 self,
__zbus__object_server: &'life1 ObjectServer,
__zbus__connection: &'life2 Connection,
__zbus__header: Option<&'life3 Header<'life4>>,
__zbus__signal_emitter: &'life5 SignalEmitter<'life6>,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, OwnedValue>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
'life6: 'async_trait,
fn get_all<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'async_trait>(
&'life0 self,
__zbus__object_server: &'life1 ObjectServer,
__zbus__connection: &'life2 Connection,
__zbus__header: Option<&'life3 Header<'life4>>,
__zbus__signal_emitter: &'life5 SignalEmitter<'life6>,
) -> Pin<Box<dyn Future<Output = Result<HashMap<String, OwnedValue>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
'life6: 'async_trait,
Source§fn set<'call>(
&'call self,
__zbus__property_name: &'call str,
value: &'call Value<'_>,
__zbus__object_server: &'call ObjectServer,
__zbus__connection: &'call Connection,
__zbus__header: Option<&'call Header<'_>>,
__zbus__signal_emitter: &'call SignalEmitter<'_>,
) -> DispatchResult<'call>
fn set<'call>( &'call self, __zbus__property_name: &'call str, value: &'call Value<'_>, __zbus__object_server: &'call ObjectServer, __zbus__connection: &'call Connection, __zbus__header: Option<&'call Header<'_>>, __zbus__signal_emitter: &'call SignalEmitter<'_>, ) -> DispatchResult<'call>
Source§fn set_mut<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'life7, 'life8, 'life9, 'async_trait>(
&'life0 mut self,
__zbus__property_name: &'life1 str,
value: &'life2 Value<'life3>,
__zbus__object_server: &'life4 ObjectServer,
__zbus__connection: &'life5 Connection,
__zbus__header: Option<&'life6 Header<'life7>>,
__zbus__signal_emitter: &'life8 SignalEmitter<'life9>,
) -> Pin<Box<dyn Future<Output = Option<Result<()>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
'life6: 'async_trait,
'life7: 'async_trait,
'life8: 'async_trait,
'life9: 'async_trait,
fn set_mut<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'life7, 'life8, 'life9, 'async_trait>(
&'life0 mut self,
__zbus__property_name: &'life1 str,
value: &'life2 Value<'life3>,
__zbus__object_server: &'life4 ObjectServer,
__zbus__connection: &'life5 Connection,
__zbus__header: Option<&'life6 Header<'life7>>,
__zbus__signal_emitter: &'life8 SignalEmitter<'life9>,
) -> Pin<Box<dyn Future<Output = Option<Result<()>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
'life6: 'async_trait,
'life7: 'async_trait,
'life8: 'async_trait,
'life9: 'async_trait,
Source§fn call<'call>(
&'call self,
__zbus__object_server: &'call ObjectServer,
__zbus__connection: &'call Connection,
__zbus__message: &'call Message,
name: MemberName<'call>,
) -> DispatchResult<'call>
fn call<'call>( &'call self, __zbus__object_server: &'call ObjectServer, __zbus__connection: &'call Connection, __zbus__message: &'call Message, name: MemberName<'call>, ) -> DispatchResult<'call>
Source§fn call_mut<'call>(
&'call mut self,
__zbus__object_server: &'call ObjectServer,
__zbus__connection: &'call Connection,
__zbus__message: &'call Message,
name: MemberName<'call>,
) -> DispatchResult<'call>
fn call_mut<'call>( &'call mut self, __zbus__object_server: &'call ObjectServer, __zbus__connection: &'call Connection, __zbus__message: &'call Message, name: MemberName<'call>, ) -> DispatchResult<'call>
&mut self
method. Read more