dbus-core-0.8.2: Low-level D-Bus protocol implementation

DBus.Connection

Synopsis

Documentation

connect :: Mechanism -> Address -> IO ConnectionSource

Open a connection to some address, using a given authentication mechanism. If the connection fails, a ConnectionError will be thrown.

connectFirst :: [(Mechanism, Address)] -> IO ConnectionSource

Try to open a connection to various addresses, returning the first connection which could be successfully opened.

connectionClose :: Connection -> IO ()Source

Close an open connection. Once closed, the Connection is no longer valid and must not be used.

send :: Message a => Connection -> (Serial -> IO b) -> a -> IO (Either MarshalError b)Source

Send a single message, with a generated Serial. The second parameter exists to prevent race conditions when registering a reply handler; it receives the serial the message will be sent with, before it's actually sent.

Only one message may be sent at a time; if multiple threads attempt to send messages in parallel, one will block until after the other has finished.

receive :: Connection -> IO (Either UnmarshalError ReceivedMessage)Source

Receive the next message from the connection, blocking until one is available.

Only one message may be received at a time; if multiple threads attempt to receive messages in parallel, one will block until after the other has finished.