1 #ifndef PROTON_SESSION_HPP
2 #define PROTON_SESSION_HPP
26 #include "./internal/export.hpp"
42 PN_CPP_CLASS_EXTERN
session :
public internal::object<pn_session_t>,
public endpoint {
45 PN_CPP_EXTERN
session(pn_session_t* s) : internal::object<pn_session_t>(s) {}
50 session() : internal::object<pn_session_t>(0) {}
97 PN_CPP_EXTERN sender_range
senders()
const;
103 friend class internal::factory<
session>;
104 friend class session_iterator;
111 class session_iterator :
public internal::iter_base<session, session_iterator> {
113 explicit session_iterator(
session s = 0) : internal::iter_base<
session, session_iterator>(s) {}
116 PN_CPP_EXTERN session_iterator operator++();
120 typedef internal::iter_range<session_iterator> session_range;
A connection to a remote AMQP peer.
Definition: connection.hpp:47
A top-level container of connections, sessions, and links.
Definition: container.hpp:50
The base class for session, connection, and link.
Definition: endpoint.hpp:36
Describes an endpoint error state.
Definition: error_condition.hpp:39
Options for creating a receiver.
Definition: receiver_options.hpp:59
A channel for receiving messages.
Definition: receiver.hpp:41
Options for creating a sender.
Definition: sender_options.hpp:60
A channel for sending messages.
Definition: sender.hpp:40
Options for creating a session.
Definition: session_options.hpp:41
A container of senders and receivers.
Definition: session.hpp:42
receiver open_receiver(const std::string &addr, const receiver_options &opts)
Open a receiver for addr.
sender_range senders() const
Return the senders on this session.
class container & container() const
Get the container for this session.
void close()
Close the endpoint.
receiver_range receivers() const
Return the receivers on this session.
void open(const session_options &opts)
Open the session.
void close(const error_condition &)
Close the endpoint with an error condition.
session()
Create an empty session.
Definition: session.hpp:50
void open()
Open the session.
receiver open_receiver(const std::string &addr)
Open a receiver for addr.
bool uninitialized() const
True if the local end is uninitialized.
sender open_sender(const std::string &addr, const sender_options &opts)
Open a sender for addr.
bool active() const
True if the local end is active.
bool closed() const
True if the local and remote ends are closed.
sender open_sender(const std::string &addr)
Open a sender for addr.
size_t outgoing_bytes() const
The number of outgoing bytes currently buffered.
size_t incoming_bytes() const
The number of incoming bytes currently buffered.
Unsettled API - A context for thread-safe execution of work.
Definition: work_queue.hpp:327
The base class for session, connection, and link.
The main Proton namespace.
Definition: annotation_key.hpp:33
A channel for receiving messages.
A channel for sending messages.
The base Proton error.
Definition: error.hpp:40