The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Protocol::DBus::Client

SYNOPSIS

    my $dbus = Protocol::DBus::Client::system();

    $dbus->initialize();

DESCRIPTION

This is the end class for use in DBus client applications. It subclasses Protocol::DBus::Peer.

NOTE: This module will automatically send a “Hello” message after authentication completes. That message’s response will be processed automatically. Because this is part of the protocol’s handshake logic rather than something useful for callers, it is abstracted away from the caller. It is neither necessary nor productive for callers to send a “Hello” message.

STATIC FUNCTIONS

system()

Creates an instance of this class that includes a connection to the system’s message bus.

This does not do authentication; you’ll need to do that via the class’s methods.

login_session()

Like system() but for the login session’s message bus.

METHODS

$done_yn = OBJ->initialize()

This returns truthy once the connection is ready to use and falsy until then. In blocking I/O contexts the call will block.

Note that this automatically handles D-Bus’s initial Hello message and its response.

Previously this function was called do_authn() and did not wait for the Hello message’s response. The older name is retained as an alias for backward compatibility.

$yn = OBJ->init_pending_send()

This indicates whether there is data queued up to send for the initialization. Only useful with non-blocking I/O.

This function was previously called authn_pending_send(); the former name is retained for backward compatibility.

$yn = OBJ->supports_unix_fd()

Boolean that indicates whether this client supports UNIX FD passing.

$msg = OBJ->get_message()

Same as in the base class, but for clients the initial “Hello” message and its response are abstracted

$name = OBJ->get_unique_bus_name()

Returns the connection’s unique bus name.

get_connection_name() is a historical alias for this method.