#include <Connection.h>
Public Member Functions | |
QPID_MESSAGING_EXTERN | Connection (ConnectionImpl *impl) |
QPID_MESSAGING_EXTERN | Connection (const Connection &) |
QPID_MESSAGING_EXTERN | Connection (const std::string &url, const qpid::types::Variant::Map &options=qpid::types::Variant::Map()) |
QPID_MESSAGING_EXTERN | Connection (const std::string &url, const std::string &options) |
QPID_MESSAGING_EXTERN Connection & | operator= (const Connection &) |
QPID_MESSAGING_EXTERN void | setOption (const std::string &name, const qpid::types::Variant &value) |
QPID_MESSAGING_EXTERN void | open () |
QPID_MESSAGING_EXTERN bool | isOpen () |
QPID_MESSAGING_EXTERN bool | isOpen () const |
QPID_MESSAGING_EXTERN void | reconnect (const std::string &url) |
QPID_MESSAGING_EXTERN void | reconnect () |
QPID_MESSAGING_EXTERN std::string | getUrl () const |
QPID_MESSAGING_EXTERN void | close () |
QPID_MESSAGING_EXTERN Session | createTransactionalSession (const std::string &name=std::string()) |
QPID_MESSAGING_EXTERN Session | createSession (const std::string &name=std::string()) |
QPID_MESSAGING_EXTERN Session | getSession (const std::string &name) const |
QPID_MESSAGING_EXTERN std::string | getAuthenticatedUsername () |
Public Member Functions inherited from qpid::messaging::Handle< ConnectionImpl > | |
QPID_MESSAGING_INLINE_EXTERN bool | isValid () const |
QPID_MESSAGING_INLINE_EXTERN bool | isNull () const |
QPID_MESSAGING_INLINE_EXTERN | operator bool () const |
QPID_MESSAGING_INLINE_EXTERN bool | operator! () const |
void | swap (Handle< ConnectionImpl > &h) |
Friends | |
class | qpid::messaging::PrivateImplRef< Connection > |
Additional Inherited Members | |
Protected Types inherited from qpid::messaging::Handle< ConnectionImpl > | |
typedef ConnectionImpl | Impl |
Protected Attributes inherited from qpid::messaging::Handle< ConnectionImpl > | |
Impl * | impl |
A connection represents a network connection to a remote endpoint.
QPID_MESSAGING_EXTERN qpid::messaging::Connection::Connection | ( | const std::string & | url, |
const qpid::types::Variant::Map & | options = qpid::types::Variant::Map() |
||
) |
Current implementation supports the following options:
(Note: the transports and/or protocols recognised may depend on which plugins are loaded. AT present support for heartbeats is missing in AMQP 1.0)
Reconnect behaviour can be controlled through the following options:
The reconnect_interval is the time that the client waits for after a failed attempt to reconnect before retrying. It starts at the value of the min_retry_interval and is doubled every failure until the value of max_retry_interval is reached.
Values in seconds can be fractional, for example 0.001 is a millisecond delay.
If the SSL transport is used, the following options apply:
When AMQP 0-10 is used, the following options apply:
When AMQP 1.0 is used, the following options apply:
The following options can be used to tune behaviour if needed (these are not yet supported over AMQP 1.0):
QPID_MESSAGING_EXTERN qpid::messaging::Connection::Connection | ( | const std::string & | url, |
const std::string & | options | ||
) |
Creates a connection using an option string of the form {name:value,name2:value2...}, see above for options supported.
InvalidOptionString | if the string does not match the correct syntax |
QPID_MESSAGING_EXTERN void qpid::messaging::Connection::close | ( | ) |
Closes a connection and all sessions associated with it. An opened connection must be closed before the last handle is allowed to go out of scope.
QPID_MESSAGING_EXTERN std::string qpid::messaging::Connection::getUrl | ( | ) | const |
returns a url reprsenting the broker the client is currently connected to (or an empty string if it is not connected).
QPID_MESSAGING_EXTERN void qpid::messaging::Connection::reconnect | ( | const std::string & | url | ) |
Attempts to reconnect to the specified url, re-establish existing sessions, senders and receivers and resend any indoubt messages.
This can be used to directly control reconnect behaviour rather than using the reconnect option for automatically handling that.
QPID_MESSAGING_EXTERN void qpid::messaging::Connection::reconnect | ( | ) |
Attempts to reconnect to the original url, including any specified reconnect_urls, re-establish existing sessions, senders and receivers and resend any indoubt messages.
This can be used to directly control reconnect behaviour rather than using the reconnect option for automatically handling that.