A connection to a remote AMQP peer. More...
#include <connection.hpp>
Public Member Functions | |
connection () | |
Create an empty 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 container & | container () const |
Get the container. More... | |
class work_queue & | work_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. | |
std::string | url () const |
Return the url for the connection. | |
void | open () |
Open the connection. More... | |
void | open (const connection_options &) |
Open the connection. More... | |
void | close () |
Close the connection. More... | |
void | close (const error_condition &) |
Close the connection. More... | |
session | open_session () |
Open a new session. | |
session | open_session (const session_options &) |
Open a new session. More... | |
session | default_session () |
Get the default session. More... | |
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 &) |
Open a sender for addr on default_session(). More... | |
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 &) |
Open a receiver for addr on default_session(). More... | |
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. More... | |
uint16_t | max_sessions () const |
Get the maximum number of open sessions allowed by the remote peer. More... | |
std::vector< symbol > | offered_capabilities () const |
Unsettled API - Extension capabilities offered by the remote peer. | |
std::vector< symbol > | desired_capabilities () const |
Unsettled API - Extension capabilities desired by the remote peer. | |
std::map< symbol, value > | properties () const |
Unsettled API - Connection properties | |
uint32_t | idle_timeout () const |
Get the idle timeout set by the remote peer. More... | |
void | wake () const |
Unsettled API - Trigger an event from another thread. More... | |
bool | reconnected () const |
Unsettled API - True if this connection has been automatically re-connected. More... | |
void | update_options (const connection_options &) |
Unsettled API - Update the connection options for this connection More... | |
A connection to a remote AMQP peer.
Get the container.
proton::error | if this connection is not managed by a container |
void open | ( | ) |
void open | ( | const connection_options & | ) |
Open the connection.
|
virtual |
|
virtual |
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.
uint16_t max_sessions | ( | ) | const |
Get the maximum number of open sessions allowed 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.
This method can be called from any thread. The Proton library will call messaging_handler::on_connection_wake()
as soon as possible in the correct event-handling thread.
Thread-safety - This is the only proton::connection
function that can be called from outside the handler thread.
messaging_handler::on_connection_wake()
calls can occur even if the application does not call wake()
.wake()
may be coalesced into a single call to messaging_handler::on_connection_wake()
that occurs after all of them.The proton::work_queue
interface provides an easier way execute code safely in the event-handler thread.
bool reconnected | ( | ) | const |
Unsettled API - True if this connection has been automatically re-connected.
void update_options | ( | const connection_options & | ) |
Unsettled API - Update the connection options for this connection
This method can be used to update the connection options used with this connection. Usually the connection options are only used during the initial connection attempt so this ability is only useful when automatically reconnect is enabled and you wish to change the connection options before the next reconnect attempt. This would usually be in the handler for the on_transport_error
event
connection_options::update()
was used.