Qpid C++ Messaging API  0.20
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
qpid::messaging::Connection Class Reference

#include <Connection.h>

Inheritance diagram for qpid::messaging::Connection:
Collaboration diagram for qpid::messaging::Connection:

Public Member Functions

QPID_MESSAGING_EXTERN Connection (ConnectionImpl *impl)
 
QPID_MESSAGING_EXTERN Connection (const Connection &)
 
QPID_MESSAGING_EXTERN 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 ()
 
QPID_MESSAGING_EXTERN Connectionoperator= (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 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 Member Functions inherited from qpid::messaging::Handle< ConnectionImpl >
QPID_MESSAGING_INLINE_EXTERN Handle ()
 
QPID_MESSAGING_EXTERN Handle (const Handle &)
 
QPID_MESSAGING_EXTERN Handleoperator= (const Handle &)
 
- Protected Attributes inherited from qpid::messaging::Handle< ConnectionImpl >
Impl * impl
 

Detailed Description

A connection represents a network connection to a remote endpoint.

Constructor & Destructor Documentation

QPID_MESSAGING_EXTERN qpid::messaging::Connection::Connection ( ConnectionImpl *  impl)
QPID_MESSAGING_EXTERN qpid::messaging::Connection::Connection ( const Connection )
QPID_MESSAGING_EXTERN qpid::messaging::Connection::Connection ( )
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:

  • 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_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.

Exceptions
InvalidOptionStringif the string does not match the correct syntax
QPID_MESSAGING_EXTERN qpid::messaging::Connection::~Connection ( )

Member Function Documentation

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 Session qpid::messaging::Connection::createSession ( const std::string &  name = std::string())
QPID_MESSAGING_EXTERN Session qpid::messaging::Connection::createTransactionalSession ( const std::string &  name = std::string())
QPID_MESSAGING_EXTERN std::string qpid::messaging::Connection::getAuthenticatedUsername ( )
QPID_MESSAGING_EXTERN Session qpid::messaging::Connection::getSession ( const std::string &  name) const
QPID_MESSAGING_EXTERN bool qpid::messaging::Connection::isOpen ( )
QPID_MESSAGING_EXTERN bool qpid::messaging::Connection::isOpen ( ) const
QPID_MESSAGING_EXTERN void qpid::messaging::Connection::open ( )
QPID_MESSAGING_EXTERN Connection& qpid::messaging::Connection::operator= ( const Connection )
QPID_MESSAGING_EXTERN void qpid::messaging::Connection::setOption ( const std::string &  name,
const qpid::types::Variant value 
)

Friends And Related Function Documentation


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