connection Class Reference

A connection to a remote AMQP peer. More...

#include <connection.hpp>

Inheritance diagram for connection:
endpoint

List of all members.

Public Member Functions

 connection ()
bool uninitialized () const
 True if the local end is uninitialized.
bool active () const
 True if the local end is active.
bool closed () const
 True if the local and remote ends are closed.
class error_condition error () const
 Get the error condition of the remote endpoint.
class containercontainer () const
 Get the container.
class work_queuework_queue () const
 Get the work_queue for the connection.
class transport transport () const
 Get the transport for the connection.
std::string virtual_host () const
 Return the remote AMQP hostname attribute for the connection.
std::string container_id () const
 Return the remote container ID for the connection.
std::string user () const
 Return authenticated user for the connection Note: The value returned is not stable until the on_transport_open event is received.
void open ()
 Open the connection.
void open (const connection_options &)
void close ()
 Close the endpoint.
void close (const error_condition &)
 Close the endpoint with an error condition.
session open_session ()
 Open a new session.
session open_session (const session_options &)
session default_session ()
 Get the default session.
sender open_sender (const std::string &addr)
 Open a sender for `addr` on default_session().
sender open_sender (const std::string &addr, const sender_options &)
receiver open_receiver (const std::string &addr)
 Open a receiver for `addr` on default_session().
receiver open_receiver (const std::string &addr, const receiver_options &)
class sender_options sender_options () const
class receiver_options receiver_options () const
session_range sessions () const
 Return all sessions on this connection.
receiver_range receivers () const
 Return all receivers on this connection.
sender_range senders () const
 Return all senders on this connection.
uint32_t max_frame_size () const
 Get the maximum frame size allowed by the remote peer.
uint16_t max_sessions () const
 Get the maximum number of open sessions allowed by the remote peer.
std::vector< symboloffered_capabilities () const
 **Unsettled API** - Extension capabilities offered by the remote peer.
std::vector< symboldesired_capabilities () const
 **Unsettled API** - Extension capabilities desired by the remote peer.
uint32_t idle_timeout () const
 Get the idle timeout set by the remote peer.
void wake () const
 **Unsettled API** - Trigger an event from another thread.

Detailed Description

A connection to a remote AMQP peer.

Examples:

broker.cpp, helloworld.cpp, multithreaded_client.cpp, server.cpp, and service_bus.cpp.


Constructor & Destructor Documentation

connection (  )  [inline]

Create an empty connection.


Member Function Documentation

class container& container (  )  const

Get the container.

Exceptions:
proton::error if this connection is not managed by a container
void open (  ) 

Open the connection.

See also:
endpoint_lifecycle
void open ( const connection_options  ) 

Open the connection.

See also:
endpoint_lifecycle

void close (  )  [virtual]

Close the endpoint.

See also:
endpoint_lifecycle

Implements endpoint.

void close ( const error_condition  )  [virtual]

Close the endpoint with an error condition.

See also:
endpoint_lifecycle

Implements endpoint.

session open_session ( const session_options  ) 

Open a new session.

session default_session (  ) 

Get the default session.

A default session is created on the first call and reused for the lifetime of the connection.

sender open_sender ( const std::string &  addr,
const sender_options  
)

Open a sender for `addr` on default_session().

receiver open_receiver ( const std::string &  addr,
const receiver_options  
)

Open a receiver for `addr` on default_session().

class sender_options sender_options (  )  const
class receiver_options receiver_options (  )  const
uint32_t max_frame_size (  )  const

Get the maximum frame size allowed by the remote peer.

See also:
connection_options::max_frame_size
uint16_t max_sessions (  )  const

Get the maximum number of open sessions allowed by the remote peer.

See also:
connection_options::max_sessions
uint32_t idle_timeout (  )  const

Get the idle timeout set by the remote peer.

See also:
connection_options::idle_timeout
void wake (  )  const

**Unsettled API** - Trigger an event from another thread.

This method can be called from any thread. The Proton library will call `messaging_handleron_connection_wake()` as soon as possible in the correct event-handling thread.

Thread-safety** - This is the *only* `protonconnection` function that can be called from outside the handler thread.

Note:
Spurious `messaging_handleron_connection_wake()` calls can occur even if the application does not call `wake()`.
Multiple calls to `wake()` may be coalesced into a single call to `messaging_handleron_connection_wake()` that occurs after all of them.

The `protonwork_queue` interface provides an easier way execute code safely in the event-handler thread.


The documentation for this class was generated from the following file:

Generated on 17 Jan 2019 for Qpid Proton C++ by  doxygen 1.6.1