Loading...
Searching...
No Matches
receiver

A channel for receiving messages. More...

`#include <receiver.hpp>`

Inheritance diagram for receiver:
[legend]
Collaboration diagram for receiver:
[legend]

## Public Member Functions

| receiver ()=default
| Create an empty receiver.
void | open ()
| Open the receiver.
void | open (const receiver_options &opts)
| Open the receiver.
class source | source () const
| Get the source node.
class target | target () const
| Get the target node.
void | add_credit (uint32_t)
| Increment the credit available to the sender.
void | drain ()
| Unsettled API - Commence a drain cycle.
Public Member Functions inherited from link
| link ()
| Create an empty link.
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.
void | close ()
| Close the endpoint.
void | close (const error_condition &)
| Close the endpoint with an error condition.
void | detach ()
| Suspend the link without closing it.
int | credit () const
| Credit available on the link.
bool | draining ()
| Unsettled API - True for a receiver if a drain cycle has been started and the corresponding `on_receiver_drain_finish` event is still pending.
std::string | name () const
| Get the link name.
class container & | container () const
| The container for this link.
class work_queue & | work_queue () const
| Get the work_queue for the link.
class connection | connection () const
| The connection that owns this link.
class session | session () const
| The session that owns this link.
std::map< symbol, value > | properties () const
| Unsettled API - Properties supplied by the remote link endpoint.

## Detailed Description

A channel for receiving messages.

Examples
  broker.cpp, client.cpp, multithreaded_client_flow_control.cpp, service_bus.cpp, and simple_recv.cpp.

## Member Function Documentation

## open()

void open | ( | const receiver_options & | opts | ) |

Open the receiver.

## add_credit()

void add_credit | ( | uint32_t |  | ) |

Increment the credit available to the sender.

Credit granted during a drain cycle is not communicated to the receiver until the drain completes.

Examples
  multithreaded_client_flow_control.cpp.

## drain()

void drain | ( |  | ) |

Unsettled API - Commence a drain cycle.

If there is positive credit, a request is sent to the sender to immediately use up all of the existing credit balance by sending messages that are immediately available and releasing any unused credit (see sender::return_credit). Throws proton::error if a drain cycle is already in progress. An on_receiver_drain_finish event will be generated when the outstanding drained credit reaches zero.

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

- proton/receiver.hpp