qpid::messaging::Connection Class Reference

Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET | Apache Qpid Documentation

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Types | Protected Attributes
qpid::messaging::Connection Class Reference
Qpid C++ Client API

A connection represents a network connection to a remote endpoint. More...

`#include <qpid/messaging/Connection.h>`

List of all members.

## Public Member Functions
| Connection (ConnectionImpl *impl)
| Connection (const Connection &)
| Connection ()
| Connection (const std::string &url, const qpid::types::Variant::Map &options=qpid::types::Variant::Map())
| Current implementation supports the following options:
| 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.
| ~Connection ()
Connection & | operator= (const Connection &)
void | setOption (const std::string &name, const qpid::types::Variant &value)
void | open ()
bool | isOpen ()
bool | isOpen () const
void | close ()
| Closes a connection and all sessions associated with it.
Session | createTransactionalSession (const std::string &name=std::string())
Session | createSession (const std::string &name=std::string())
Session | getSession (const std::string &name) const
std::string | getAuthenticatedUsername ()
QPID_MESSAGING_INLINE_EXTERN bool | isValid () const
QPID_MESSAGING_INLINE_EXTERN bool | isNull () const
QPID_MESSAGING_INLINE_EXTERN | operator bool () const
| Conversion to bool supports idiom if (handle) { handle->...
QPID_MESSAGING_INLINE_EXTERN bool | operator! () const
| Operator ! supports idiom if (!handle) { do_if_handle_is_null(); }.
void | swap (Handle< T > &h)
## Protected Types
typedef T | Impl
## Protected Attributes
Impl * | impl

## Detailed Description

A connection represents a network connection to a remote endpoint.

## Member Typedef Documentation

typedef T qpid::messaging::Handle::Impl`[protected, inherited]`

Definition at line 57 of file Handle.h.

## Constructor & Destructor Documentation

qpid::messaging::Connection::Connection | ( | ConnectionImpl * | impl | ) |

qpid::messaging::Connection::Connection | ( | const Connection & |  | ) |

qpid::messaging::Connection::Connection | ( |  | ) |

qpid::messaging::Connection::Connection | ( | const std::string & | url,
|  | const qpid::types::Variant::Map & | options = `qpid::types::Variant::Map()`
| ) |  |

Current implementation supports the following options:

- username
- password
- heartbeat
- tcp_nodelay
- sasl_mechanisms
- sasl_service
- sasl_min_ssf
- sasl_max_ssf
- transport

Reconnect behaviour can be controlled through the following options:

- reconnect: true/false (enables/disables reconnect entirely)
- reconnect_timeout: seconds (give up and report failure after specified time)
- reconnect_limit: n (give up and report failure after specified number of attempts)
- reconnect_interval_min: seconds (initial delay between failed reconnection attempts)
- reconnect_interval_max: seconds (maximum delay between failed reconnection attempts)
- reconnect_interval: shorthand for setting the same reconnect_interval_min/max
- reconnect_urls: list of alternate urls to try when connecting

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.

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.

Exceptions:

  InvalidOptionString | if the string does not match the correct syntax

qpid::messaging::Connection::~Connection | ( |  | ) |

## Member Function Documentation

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.

Session qpid::messaging::Connection::createSession | ( | const std::string & | name = `std::string()` | ) |

Session qpid::messaging::Connection::createTransactionalSession | ( | const std::string & | name = `std::string()` | ) |

std::string qpid::messaging::Connection::getAuthenticatedUsername | ( |  | ) |

Session qpid::messaging::Connection::getSession | ( | const std::string & | name | ) | const

QPID_MESSAGING_INLINE_EXTERN bool qpid::messaging::Handle::isNull | ( |  | ) | const`[inline, inherited]`

Returns:
  true if handle is null. It is an error to call any function on a null handle.

Definition at line 46 of file Handle.h.

bool qpid::messaging::Connection::isOpen | ( |  | ) |

bool qpid::messaging::Connection::isOpen | ( |  | ) | const

QPID_MESSAGING_INLINE_EXTERN bool qpid::messaging::Handle::isValid | ( |  | ) | const`[inline, inherited]`

Returns:
  true if handle is valid, i.e. not null.

Definition at line 43 of file Handle.h.

void qpid::messaging::Connection::open | ( |  | ) |

QPID_MESSAGING_INLINE_EXTERN qpid::messaging::Handle::operator bool | ( |  | ) | const`[inline, inherited]`

Conversion to bool supports idiom if (handle) { handle->...

}

Definition at line 49 of file Handle.h.

QPID_MESSAGING_INLINE_EXTERN bool qpid::messaging::Handle::operator! | ( |  | ) | const`[inline, inherited]`

Operator ! supports idiom if (!handle) { do_if_handle_is_null(); }.

Definition at line 52 of file Handle.h.

Connection& qpid::messaging::Connection::operator= | ( | const Connection & |  | ) |

void qpid::messaging::Connection::setOption | ( | const std::string & | name,
|  | const qpid::types::Variant & | value
| ) |  |

void qpid::messaging::Handle::swap | ( | Handle< T > & | h | ) | `[inline, inherited]`

Definition at line 54 of file Handle.h.

## Member Data Documentation

Impl* qpid::messaging::Handle::impl`[protected, inherited]`

Definition at line 64 of file Handle.h.

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

- qpid/messaging/Connection.h