[][src]Struct dbus::blocking::Proxy

pub struct Proxy<'a, C> {
    pub destination: BusName<'a>,
    pub path: Path<'a>,
    pub timeout: Duration,
    pub connection: C,
}

A struct that wraps a connection, destination and path.

A D-Bus "Proxy" is a client-side object that corresponds to a remote object on the server side. Calling methods on the proxy object calls methods on the remote object. Read more in the D-Bus tutorial

Fields

destination: BusName<'a>

Destination, i e what D-Bus service you're communicating with

path: Path<'a>

Object path on the destination

timeout: Duration

Timeout for method calls

connection: C

Some way to send and/or receive messages, either blocking or non-blocking.

Methods

impl<'a, C> Proxy<'a, C>[src]

pub fn new<D: Into<BusName<'a>>, P: Into<Path<'a>>>(
    dest: D,
    path: P,
    timeout: Duration,
    connection: C
) -> Self
[src]

Creates a new proxy struct.

impl<'a, T: BlockingSender, C: Deref<Target = T>> Proxy<'a, C>[src]

pub fn method_call<'i, 'm, R: ReadAll, A: AppendAll, I: Into<Interface<'i>>, M: Into<Member<'m>>>(
    &self,
    i: I,
    m: M,
    args: A
) -> Result<R, Error>
[src]

Make a method call using typed input and output arguments, then block waiting for a reply.

Example

use dbus::blocking::{Connection, Proxy};

let conn = Connection::new_session()?;
let proxy = Proxy::new("org.freedesktop.DBus", "/", std::time::Duration::from_millis(5000), &conn);
let (has_owner,): (bool,) = proxy.method_call("org.freedesktop.DBus", "NameHasOwner", ("dummy.name.without.owner",))?;
assert_eq!(has_owner, false);

pub fn match_start(
    &self,
    mr: MatchRule<'static>,
    call_add_match: bool,
    f: <T as MatchingReceiver>::F
) -> Result<Token, Error> where
    T: MatchingReceiver
[src]

Starts matching incoming messages on this destination and path.

For matching signals, match_signal_local or match_signal_sync might be more convenient.

The match rule will be modified to include this path and destination only.

If call_add_match is true, will notify the D-Bus server that matching should start.

pub fn match_stop(
    &self,
    id: Token,
    call_remove_match: bool
) -> Result<(), Error> where
    T: MatchingReceiver
[src]

Stops matching a signal added with match_start, match_signal_local or match_signal_sync.

If call_add_match is true, will notify the D-Bus server that matching should stop, this should be true in case match_signal_local or match_signal_sync was used.

pub fn match_signal<S: SignalArgs + ReadAll, F>(
    &self,
    f: F
) -> Result<Token, Error> where
    T: MatchingReceiver,
    F: MakeSignal<<T as MatchingReceiver>::F, S, T>, 
[src]

Sets up an incoming signal match, that calls the supplied callback every time the signal is received.

The returned value can be used to remove the match. The match is also removed if the callback returns "false".

Trait Implementations

impl<'a, C: Clone> Clone for Proxy<'a, C>[src]

impl<'a, C: Debug> Debug for Proxy<'a, C>[src]

impl<'a, C: Deref<Target = Connection>> Introspectable for Proxy<'a, C>[src]

impl<'a, C: Deref<Target = Connection>> ObjectManager for Proxy<'a, C>[src]

impl<'a, C: Deref<Target = Connection>> Peer for Proxy<'a, C>[src]

impl<'a, T: BlockingSender, C: Deref<Target = T>> Properties for Proxy<'a, C>[src]

Auto Trait Implementations

impl<'a, C> RefUnwindSafe for Proxy<'a, C> where
    C: RefUnwindSafe

impl<'a, C> Send for Proxy<'a, C> where
    C: Send

impl<'a, C> Sync for Proxy<'a, C> where
    C: Sync

impl<'a, C> Unpin for Proxy<'a, C> where
    C: Unpin

impl<'a, C> UnwindSafe for Proxy<'a, C> where
    C: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.