pub struct ConfigurationNodeProxyBlocking<'c>(/* private fields */);
Expand description
Configuration Object
Implementations§
Source§impl<'c> ConfigurationNodeProxyBlocking<'c>
impl<'c> ConfigurationNodeProxyBlocking<'c>
Sourcepub fn new(conn: &Connection) -> Result<ConfigurationNodeProxyBlocking<'c>>
pub fn new(conn: &Connection) -> Result<ConfigurationNodeProxyBlocking<'c>>
Creates a new proxy with the default service and path.
Sourcepub fn builder(conn: &Connection) -> ProxyBuilder<'c, Self>
pub fn builder(conn: &Connection) -> ProxyBuilder<'c, Self>
Returns a customizable builder for this proxy.
Sourcepub fn into_inner(self) -> Proxy<'c>
pub fn into_inner(self) -> Proxy<'c>
Consumes self
, returning the underlying zbus::Proxy
.
Sourcepub fn access_grant(&self, uid: u32) -> Result<()>
pub fn access_grant(&self, uid: u32) -> Result<()>
AccessGrant method
By default, only the user ID (UID) who imported the configuration have access to it. This method used to grant other users access to the configuration.
§Arguments
uid
- The UID to the user account which is granted access.
Sourcepub fn access_revoke(&self, uid: u32) -> Result<()>
pub fn access_revoke(&self, uid: u32) -> Result<()>
AccessRevoke method
This revokes access to a configuration object for a specific user. Please note that the owner (the user which imported the configuration) cannot have its access revoked.
§Arguments
uid
- The UID to the user account which gets the access revoked.
Sourcepub fn fetch(&self) -> Result<String>
pub fn fetch(&self) -> Result<String>
Fetch method
This method will return a string of the stored configuration profile as it is stored. This should be contain the same information which was imported. It will not necessarily be an identical copy of what was imported, as it has been processed during the import.
§Returns
The configuration file as a plain string blob.
Sourcepub fn fetch_json(&self) -> Result<String>
pub fn fetch_json(&self) -> Result<String>
FetchJSON method
This is a variant of Fetch, which returns the configuration profile formatted as a JSON string blob. The intention of this is for user front-ends to have a simple API to retrieve the complete configuration profile in a format which can easily be parsed and presented in a user interface.
§Returns
The configuration file as a JSON formatted string blob.
Sourcepub fn remove(&self) -> Result<()>
pub fn remove(&self) -> Result<()>
Remove method
Removes a VPN profile from the configuration manager. If the configuration is persistent, it will be removed from the disk as well. This method takes no arguments and does not return anything on success. If an error occurs, a D-Bus error is returned.
Sourcepub fn seal(&self) -> Result<()>
pub fn seal(&self) -> Result<()>
Seal method
This method makes the configuration read-only. That means it can no longer be manipulated, nor removed.
Sourcepub fn set_option(&self, option: &str, value: &str) -> Result<()>
pub fn set_option(&self, option: &str, value: &str) -> Result<()>
SetOption method
This method allows manipulation of a stored configuration. This is targeted at user front-ends to be able to easily manipulate imported configuration files.
** WARNING: ** This method is currently not implemented!
§Arguments
option
- String containing the name of the option to be modified.value
- String containing the new value of the option.
Sourcepub fn set_override(&self, name: &str, value: &Value<'_>) -> Result<()>
pub fn set_override(&self, name: &str, value: &Value<'_>) -> Result<()>
SetOverride method
Modifies an override parameter in the configuration profile.
§Arguments
name
- Property name to modify.value
- The new value the property should have. The data type ov must match the data type of the property in the D-Bus object.
Sourcepub fn unset_override(&self, name: &str) -> Result<()>
pub fn unset_override(&self, name: &str) -> Result<()>
Sourcepub fn cached_acl(
&self,
) -> Result<Option<<Result<Vec<u32>> as ResultAdapter>::Ok>, <Result<Vec<u32>> as ResultAdapter>::Err>
pub fn cached_acl( &self, ) -> Result<Option<<Result<Vec<u32>> as ResultAdapter>::Ok>, <Result<Vec<u32>> as ResultAdapter>::Err>
Get the cached value of the acl
property, or None
if the property is not cached.
Sourcepub fn receive_acl_changed(
&self,
) -> PropertyIterator<'c, <Result<Vec<u32>> as ResultAdapter>::Ok>
pub fn receive_acl_changed( &self, ) -> PropertyIterator<'c, <Result<Vec<u32>> as ResultAdapter>::Ok>
Create a stream for the acl
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn dco(&self) -> Result<bool>
pub fn dco(&self) -> Result<bool>
If set to true, the VPN tunnel will make use of the kernel accelerated Data Channel Offload (DCO) feature (requires kernel support).
Sourcepub fn cached_dco(
&self,
) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
pub fn cached_dco( &self, ) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
Get the cached value of the dco
property, or None
if the property is not cached.
Sourcepub fn receive_dco_changed(
&self,
) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
pub fn receive_dco_changed( &self, ) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
Create a stream for the dco
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
pub fn set_dco(&self, value: bool) -> Result<()>
Sourcepub fn import_timestamp(&self) -> Result<u64>
pub fn import_timestamp(&self) -> Result<u64>
Unix Epoch timestamp of the import time.
Sourcepub fn cached_import_timestamp(
&self,
) -> Result<Option<<Result<u64> as ResultAdapter>::Ok>, <Result<u64> as ResultAdapter>::Err>
pub fn cached_import_timestamp( &self, ) -> Result<Option<<Result<u64> as ResultAdapter>::Ok>, <Result<u64> as ResultAdapter>::Err>
Get the cached value of the import_timestamp
property, or None
if the property is not cached.
Sourcepub fn receive_import_timestamp_changed(
&self,
) -> PropertyIterator<'c, <Result<u64> as ResultAdapter>::Ok>
pub fn receive_import_timestamp_changed( &self, ) -> PropertyIterator<'c, <Result<u64> as ResultAdapter>::Ok>
Create a stream for the import_timestamp
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn last_used_timestamp(&self) -> Result<u64>
pub fn last_used_timestamp(&self) -> Result<u64>
Unix Epoch timestamp of the last time it Fetch was called.
It will track/count Fetch
usage only if the calling user is openvpn
.
Sourcepub fn cached_last_used_timestamp(
&self,
) -> Result<Option<<Result<u64> as ResultAdapter>::Ok>, <Result<u64> as ResultAdapter>::Err>
pub fn cached_last_used_timestamp( &self, ) -> Result<Option<<Result<u64> as ResultAdapter>::Ok>, <Result<u64> as ResultAdapter>::Err>
Get the cached value of the last_used_timestamp
property, or None
if the property is not cached.
Sourcepub fn receive_last_used_timestamp_changed(
&self,
) -> PropertyIterator<'c, <Result<u64> as ResultAdapter>::Ok>
pub fn receive_last_used_timestamp_changed( &self, ) -> PropertyIterator<'c, <Result<u64> as ResultAdapter>::Ok>
Create a stream for the last_used_timestamp
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn locked_down(&self) -> Result<bool>
pub fn locked_down(&self) -> Result<bool>
If set to true, only the owner and openvpn user can retrieve the configuration file. Other users granted access can only use this profile to start a new tunnel.
Sourcepub fn cached_locked_down(
&self,
) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
pub fn cached_locked_down( &self, ) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
Get the cached value of the locked_down
property, or None
if the property is not cached.
Sourcepub fn receive_locked_down_changed(
&self,
) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
pub fn receive_locked_down_changed( &self, ) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
Create a stream for the locked_down
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
pub fn set_locked_down(&self, value: bool) -> Result<()>
Sourcepub fn name(&self) -> Result<String>
pub fn name(&self) -> Result<String>
Contains the user friendly name of the configuration profile
Sourcepub fn cached_name(
&self,
) -> Result<Option<<Result<String> as ResultAdapter>::Ok>, <Result<String> as ResultAdapter>::Err>
pub fn cached_name( &self, ) -> Result<Option<<Result<String> as ResultAdapter>::Ok>, <Result<String> as ResultAdapter>::Err>
Get the cached value of the name
property, or None
if the property is not cached.
Sourcepub fn receive_name_changed(
&self,
) -> PropertyIterator<'c, <Result<String> as ResultAdapter>::Ok>
pub fn receive_name_changed( &self, ) -> PropertyIterator<'c, <Result<String> as ResultAdapter>::Ok>
Create a stream for the name
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
pub fn set_name(&self, value: &str) -> Result<()>
Sourcepub fn overrides(&self) -> Result<HashMap<String, OwnedValue>>
pub fn overrides(&self) -> Result<HashMap<String, OwnedValue>>
Contains all the override settings enabled. This is stored as a key/value based dictionary, where value can be any arbitrary data type.
Sourcepub fn cached_overrides(
&self,
) -> Result<Option<<Result<HashMap<String, OwnedValue>> as ResultAdapter>::Ok>, <Result<HashMap<String, OwnedValue>> as ResultAdapter>::Err>
pub fn cached_overrides( &self, ) -> Result<Option<<Result<HashMap<String, OwnedValue>> as ResultAdapter>::Ok>, <Result<HashMap<String, OwnedValue>> as ResultAdapter>::Err>
Get the cached value of the overrides
property, or None
if the property is not cached.
Sourcepub fn receive_overrides_changed(
&self,
) -> PropertyIterator<'c, <Result<HashMap<String, OwnedValue>> as ResultAdapter>::Ok>
pub fn receive_overrides_changed( &self, ) -> PropertyIterator<'c, <Result<HashMap<String, OwnedValue>> as ResultAdapter>::Ok>
Create a stream for the overrides
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn cached_owner(
&self,
) -> Result<Option<<Result<u32> as ResultAdapter>::Ok>, <Result<u32> as ResultAdapter>::Err>
pub fn cached_owner( &self, ) -> Result<Option<<Result<u32> as ResultAdapter>::Ok>, <Result<u32> as ResultAdapter>::Err>
Get the cached value of the owner
property, or None
if the property is not cached.
Sourcepub fn receive_owner_changed(
&self,
) -> PropertyIterator<'c, <Result<u32> as ResultAdapter>::Ok>
pub fn receive_owner_changed( &self, ) -> PropertyIterator<'c, <Result<u32> as ResultAdapter>::Ok>
Create a stream for the owner
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn persistent(&self) -> Result<bool>
pub fn persistent(&self) -> Result<bool>
If set to true, this configuration will be saved to disk by the configuration manager. The location of the file storage is managed by the configuration manager itself and the configuration manager will load persistent profiles each time it starts.
Sourcepub fn cached_persistent(
&self,
) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
pub fn cached_persistent( &self, ) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
Get the cached value of the persistent
property, or None
if the property is not cached.
Sourcepub fn receive_persistent_changed(
&self,
) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
pub fn receive_persistent_changed( &self, ) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
Create a stream for the persistent
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn public_access(&self) -> Result<bool>
pub fn public_access(&self) -> Result<bool>
If set to true, access control is disabled. But only owner may change this property, modify the ACL or delete the configuration.
Sourcepub fn cached_public_access(
&self,
) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
pub fn cached_public_access( &self, ) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
Get the cached value of the public_access
property, or None
if the property is not cached.
Sourcepub fn receive_public_access_changed(
&self,
) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
pub fn receive_public_access_changed( &self, ) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
Create a stream for the public_access
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
pub fn set_public_access(&self, value: bool) -> Result<()>
Sourcepub fn readonly(&self) -> Result<bool>
pub fn readonly(&self) -> Result<bool>
If set to true, the configuration have been sealed and can no longer be modified.
Sourcepub fn cached_readonly(
&self,
) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
pub fn cached_readonly( &self, ) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
Get the cached value of the readonly
property, or None
if the property is not cached.
Sourcepub fn receive_readonly_changed(
&self,
) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
pub fn receive_readonly_changed( &self, ) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
Create a stream for the readonly
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn single_use(&self) -> Result<bool>
pub fn single_use(&self) -> Result<bool>
If set to true, this configuration profile will be automatically removed after the first Fetch
call. This is intended to be used by command line clients providing a similar user experience as the OpenVPN 2.x versions provides.
Sourcepub fn cached_single_use(
&self,
) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
pub fn cached_single_use( &self, ) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
Get the cached value of the single_use
property, or None
if the property is not cached.
Sourcepub fn receive_single_use_changed(
&self,
) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
pub fn receive_single_use_changed( &self, ) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
Create a stream for the single_use
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn transfer_owner_session(&self) -> Result<bool>
pub fn transfer_owner_session(&self) -> Result<bool>
If set to true, another user granted access to this profile will transfer the VPN session ownership back to the profile owner at start up.
Sourcepub fn cached_transfer_owner_session(
&self,
) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
pub fn cached_transfer_owner_session( &self, ) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
Get the cached value of the transfer_owner_session
property, or None
if the property is not cached.
Sourcepub fn receive_transfer_owner_session_changed(
&self,
) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
pub fn receive_transfer_owner_session_changed( &self, ) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
Create a stream for the transfer_owner_session
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
pub fn set_transfer_owner_session(&self, value: bool) -> Result<()>
Sourcepub fn used_count(&self) -> Result<u32>
pub fn used_count(&self) -> Result<u32>
Number of times Fetch has been called.
It will track/count Fetch
usage only if the calling user is openvpn
.
Sourcepub fn cached_used_count(
&self,
) -> Result<Option<<Result<u32> as ResultAdapter>::Ok>, <Result<u32> as ResultAdapter>::Err>
pub fn cached_used_count( &self, ) -> Result<Option<<Result<u32> as ResultAdapter>::Ok>, <Result<u32> as ResultAdapter>::Err>
Get the cached value of the used_count
property, or None
if the property is not cached.
Sourcepub fn receive_used_count_changed(
&self,
) -> PropertyIterator<'c, <Result<u32> as ResultAdapter>::Ok>
pub fn receive_used_count_changed( &self, ) -> PropertyIterator<'c, <Result<u32> as ResultAdapter>::Ok>
Create a stream for the used_count
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Sourcepub fn valid(&self) -> Result<bool>
pub fn valid(&self) -> Result<bool>
Contains an indication if the configuration profile is considered functional for a VPN session.
Sourcepub fn cached_valid(
&self,
) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
pub fn cached_valid( &self, ) -> Result<Option<<Result<bool> as ResultAdapter>::Ok>, <Result<bool> as ResultAdapter>::Err>
Get the cached value of the valid
property, or None
if the property is not cached.
Sourcepub fn receive_valid_changed(
&self,
) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
pub fn receive_valid_changed( &self, ) -> PropertyIterator<'c, <Result<bool> as ResultAdapter>::Ok>
Create a stream for the valid
property changes. This is a convenient wrapper around zbus::blocking::Proxy::receive_property_changed
.
Methods from Deref<Target = Proxy<'c>>§
Sourcepub fn connection(&self) -> &Connection
pub fn connection(&self) -> &Connection
Get a reference to the associated connection.
Sourcepub fn destination(&self) -> &BusName<'_>
pub fn destination(&self) -> &BusName<'_>
Get a reference to the destination service name.
Sourcepub fn path(&self) -> &ObjectPath<'_>
pub fn path(&self) -> &ObjectPath<'_>
Get a reference to the object path.
Sourcepub fn interface(&self) -> &InterfaceName<'_>
pub fn interface(&self) -> &InterfaceName<'_>
Get a reference to the interface.
Sourcepub fn introspect(&self) -> Result<String, Error>
pub fn introspect(&self) -> Result<String, Error>
Introspect the associated object, and return the XML description.
See the xml module for parsing the result.
Sourcepub fn cached_property<T>(
&self,
property_name: &str,
) -> Result<Option<T>, Error>
pub fn cached_property<T>( &self, property_name: &str, ) -> Result<Option<T>, Error>
Get the cached value of the property property_name
.
This returns None
if the property is not in the cache. This could be because the cache
was invalidated by an update, because caching was disabled for this property or proxy, or
because the cache has not yet been populated. Use get_property
to fetch the value from
the peer.
Sourcepub fn cached_property_raw<'p>(
&'p self,
property_name: &'p str,
) -> Option<impl Deref<Target = Value<'static>> + 'p>
pub fn cached_property_raw<'p>( &'p self, property_name: &'p str, ) -> Option<impl Deref<Target = Value<'static>> + 'p>
Get the cached value of the property property_name
.
Same as cached_property
, but gives you access to the raw value stored in the cache. This
is useful if you want to avoid allocations and cloning.
Sourcepub fn get_property<T>(&self, property_name: &str) -> Result<T, Error>
pub fn get_property<T>(&self, property_name: &str) -> Result<T, Error>
Get the property property_name
.
Get the property value from the cache or call the Get
method of the
org.freedesktop.DBus.Properties
interface.
Sourcepub fn set_property<'t, T>(
&self,
property_name: &str,
value: T,
) -> Result<(), Error>
pub fn set_property<'t, T>( &self, property_name: &str, value: T, ) -> Result<(), Error>
Set the property property_name
.
Effectively, call the Set
method of the org.freedesktop.DBus.Properties
interface.
Sourcepub fn call_method<'m, M, B>(
&self,
method_name: M,
body: &B,
) -> Result<Arc<Message>, Error>where
M: TryInto<MemberName<'m>>,
<M as TryInto<MemberName<'m>>>::Error: Into<Error>,
B: Serialize + DynamicType,
pub fn call_method<'m, M, B>(
&self,
method_name: M,
body: &B,
) -> Result<Arc<Message>, Error>where
M: TryInto<MemberName<'m>>,
<M as TryInto<MemberName<'m>>>::Error: Into<Error>,
B: Serialize + DynamicType,
Call a method and return the reply.
Typically, you would want to use call
method instead. Use this method if you need to
deserialize the reply message manually (this way, you can avoid the memory
allocation/copying, by deserializing the reply to an unowned type).
Sourcepub fn call<'m, M, B, R>(&self, method_name: M, body: &B) -> Result<R, Error>where
M: TryInto<MemberName<'m>>,
<M as TryInto<MemberName<'m>>>::Error: Into<Error>,
B: Serialize + DynamicType,
R: DeserializeOwned + Type,
pub fn call<'m, M, B, R>(&self, method_name: M, body: &B) -> Result<R, Error>where
M: TryInto<MemberName<'m>>,
<M as TryInto<MemberName<'m>>>::Error: Into<Error>,
B: Serialize + DynamicType,
R: DeserializeOwned + Type,
Call a method and return the reply body.
Use call_method
instead if you need to deserialize the reply manually/separately.
Sourcepub fn call_with_flags<'m, M, B, R>(
&self,
method_name: M,
flags: BitFlags<MethodFlags>,
body: &B,
) -> Result<Option<R>, Error>where
M: TryInto<MemberName<'m>>,
<M as TryInto<MemberName<'m>>>::Error: Into<Error>,
B: Serialize + DynamicType,
R: DeserializeOwned + Type,
pub fn call_with_flags<'m, M, B, R>(
&self,
method_name: M,
flags: BitFlags<MethodFlags>,
body: &B,
) -> Result<Option<R>, Error>where
M: TryInto<MemberName<'m>>,
<M as TryInto<MemberName<'m>>>::Error: Into<Error>,
B: Serialize + DynamicType,
R: DeserializeOwned + Type,
Call a method and return the reply body, optionally supplying a set of method flags to control the way the method call message is sent and handled.
Use call
instead if you do not need any special handling via additional flags.
If the NoReplyExpected
flag is passed , this will return None immediately
after sending the message, similar to call_noreply
Sourcepub fn call_noreply<'m, M, B>(
&self,
method_name: M,
body: &B,
) -> Result<(), Error>where
M: TryInto<MemberName<'m>>,
<M as TryInto<MemberName<'m>>>::Error: Into<Error>,
B: Serialize + DynamicType,
pub fn call_noreply<'m, M, B>(
&self,
method_name: M,
body: &B,
) -> Result<(), Error>where
M: TryInto<MemberName<'m>>,
<M as TryInto<MemberName<'m>>>::Error: Into<Error>,
B: Serialize + DynamicType,
Call a method without expecting a reply
This sets the NoReplyExpected
flag on the calling message and does not wait for a reply.
Sourcepub fn receive_signal<'m, M>(
&self,
signal_name: M,
) -> Result<SignalIterator<'m>, Error>
pub fn receive_signal<'m, M>( &self, signal_name: M, ) -> Result<SignalIterator<'m>, Error>
Create a stream for signal named signal_name
.
§Errors
Apart from general I/O errors that can result from socket communications, calling this method will also result in an error if the destination service has not yet registered its well-known name with the bus (assuming you’re using the well-known name as destination).
Sourcepub fn receive_signal_with_args<'m, M>(
&self,
signal_name: M,
args: &[(u8, &str)],
) -> Result<SignalIterator<'m>, Error>
pub fn receive_signal_with_args<'m, M>( &self, signal_name: M, args: &[(u8, &str)], ) -> Result<SignalIterator<'m>, Error>
Same as Proxy::receive_signal
but with a filter.
The D-Bus specification allows you to filter signals by their arguments, which helps avoid a lot of unnecessary traffic and processing since the filter is run on the server side. Use this method where possible. Note that this filtering is limited to arguments of string types.
The arguments are passed as a tuples of argument index and expected value.
Sourcepub fn receive_all_signals(&self) -> Result<SignalIterator<'static>, Error>
pub fn receive_all_signals(&self) -> Result<SignalIterator<'static>, Error>
Create a stream for all signals emitted by this service.
§Errors
Apart from general I/O errors that can result from socket communications, calling this method will also result in an error if the destination service has not yet registered its well-known name with the bus (assuming you’re using the well-known name as destination).
Sourcepub fn receive_property_changed<'name, T>(
&self,
name: &'name str,
) -> PropertyIterator<'a, T>where
'name: 'a,
pub fn receive_property_changed<'name, T>(
&self,
name: &'name str,
) -> PropertyIterator<'a, T>where
'name: 'a,
Get an iterator to receive owner changed events.
If the proxy destination is a unique name, the stream will be notified of the peer
disconnection from the bus (with a None
value).
If the proxy destination is a well-known name, the stream will be notified whenever the name
owner is changed, either by a new peer being granted ownership (Some
value) or when the
name is released (with a None
value).
Note that zbus doesn’t queue the updates. If the listener is slower than the receiver, it will only receive the last update.
Sourcepub fn receive_owner_changed(&self) -> Result<OwnerChangedIterator<'_>, Error>
pub fn receive_owner_changed(&self) -> Result<OwnerChangedIterator<'_>, Error>
Get an iterator to receive property changed events.
Note that zbus doesn’t queue the updates. If the listener is slower than the receiver, it will only receive the last update.
Trait Implementations§
Source§impl<'c> AsMut<Proxy<'c>> for ConfigurationNodeProxyBlocking<'c>
impl<'c> AsMut<Proxy<'c>> for ConfigurationNodeProxyBlocking<'c>
Source§impl<'c> AsRef<Proxy<'c>> for ConfigurationNodeProxyBlocking<'c>
impl<'c> AsRef<Proxy<'c>> for ConfigurationNodeProxyBlocking<'c>
Source§impl<'c> Clone for ConfigurationNodeProxyBlocking<'c>
impl<'c> Clone for ConfigurationNodeProxyBlocking<'c>
Source§fn clone(&self) -> ConfigurationNodeProxyBlocking<'c>
fn clone(&self) -> ConfigurationNodeProxyBlocking<'c>
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read more