A source or target for messages. More...
Typedefs | |
typedef struct pn_terminus_t | pn_terminus_t |
Encapsulates the endpoint state associated with an AMQP Terminus. More... | |
Enumerations | |
enum | pn_terminus_type_t { PN_UNSPECIFIED , PN_SOURCE , PN_TARGET , PN_COORDINATOR } |
Type of an AMQP terminus. More... | |
enum | pn_durability_t { PN_NONDURABLE , PN_CONFIGURATION , PN_DELIVERIES } |
Durability mode of an AMQP terminus. More... | |
enum | pn_expiry_policy_t { PN_EXPIRE_WITH_LINK , PN_EXPIRE_WITH_SESSION , PN_EXPIRE_WITH_CONNECTION , PN_EXPIRE_NEVER } |
Expiry policy of an AMQP terminus. More... | |
enum | pn_distribution_mode_t { PN_DIST_MODE_UNSPECIFIED , PN_DIST_MODE_COPY , PN_DIST_MODE_MOVE } |
Distribution mode of an AMQP terminus. More... | |
Functions | |
pn_terminus_type_t | pn_terminus_get_type (pn_terminus_t *terminus) |
Get the type of a terminus object. More... | |
int | pn_terminus_set_type (pn_terminus_t *terminus, pn_terminus_type_t type) |
Set the type of a terminus object. More... | |
const char * | pn_terminus_get_address (pn_terminus_t *terminus) |
Get the address of a terminus object. More... | |
int | pn_terminus_set_address (pn_terminus_t *terminus, const char *address) |
Set the address of a terminus object. More... | |
pn_distribution_mode_t | pn_terminus_get_distribution_mode (const pn_terminus_t *terminus) |
Get the distribution mode of a terminus object. More... | |
int | pn_terminus_set_distribution_mode (pn_terminus_t *terminus, pn_distribution_mode_t mode) |
Set the distribution mode of a terminus object. More... | |
pn_durability_t | pn_terminus_get_durability (pn_terminus_t *terminus) |
Get the durability mode of a terminus object. More... | |
int | pn_terminus_set_durability (pn_terminus_t *terminus, pn_durability_t durability) |
Set the durability mode of a terminus object. More... | |
pn_expiry_policy_t | pn_terminus_get_expiry_policy (pn_terminus_t *terminus) |
Get the expiry policy of a terminus object. More... | |
bool | pn_terminus_has_expiry_policy (const pn_terminus_t *terminus) |
Return true if the terminus has an explicit expiry policy set, false if it does not. More... | |
int | pn_terminus_set_expiry_policy (pn_terminus_t *terminus, pn_expiry_policy_t policy) |
Set the expiry policy of a terminus object. More... | |
pn_seconds_t | pn_terminus_get_timeout (pn_terminus_t *terminus) |
Get the timeout of a terminus object. More... | |
int | pn_terminus_set_timeout (pn_terminus_t *terminus, pn_seconds_t timeout) |
Set the timeout of a terminus object. More... | |
bool | pn_terminus_is_dynamic (pn_terminus_t *terminus) |
Get the dynamic flag for a terminus object. More... | |
int | pn_terminus_set_dynamic (pn_terminus_t *terminus, bool dynamic) |
Set the dynamic flag for a terminus object. More... | |
pn_data_t * | pn_terminus_properties (pn_terminus_t *terminus) |
Access/modify the AMQP properties data for a terminus object. More... | |
pn_data_t * | pn_terminus_capabilities (pn_terminus_t *terminus) |
Access/modify the AMQP capabilities data for a terminus object. More... | |
pn_data_t * | pn_terminus_outcomes (pn_terminus_t *terminus) |
Access/modify the AMQP outcomes for a terminus object. More... | |
pn_data_t * | pn_terminus_filter (pn_terminus_t *terminus) |
Access/modify the AMQP filter set for a terminus object. More... | |
int | pn_terminus_copy (pn_terminus_t *terminus, pn_terminus_t *src) |
Copy a terminus object. More... | |
A source or target for messages.
typedef struct pn_terminus_t pn_terminus_t |
Encapsulates the endpoint state associated with an AMQP Terminus.
An AMQP Terminus acts as either a source or target for messages, but never both. Every AMQP link is associated with both a source terminus and a target terminus that is negotiated during link establishment. A terminus consists of an AMQP address, along with a number of other properties defining the quality of service and behaviour of the link.
enum pn_terminus_type_t |
enum pn_durability_t |
Durability mode of an AMQP terminus.
An AMQP terminus may provide durable storage for its state, thereby permitting link recovery in the event of endpoint failures. This durability may be applied to the configuration of the terminus only, or to all delivery state as well.
enum pn_expiry_policy_t |
Expiry policy of an AMQP terminus.
An orphaned terminus can only exist for the timeout configured by pn_terminus_set_timeout. The expiry policy determines when a terminus is considered orphaned, i.e. when the expiry timer starts counting down.
Distribution mode of an AMQP terminus.
The distribution mode of a source terminus defines the behaviour when multiple receiving links provide addresses that resolve to the same node.
Enumerator | |
---|---|
PN_DIST_MODE_UNSPECIFIED | the behaviour is defined by the node |
PN_DIST_MODE_COPY | the receiver gets all messages |
PN_DIST_MODE_MOVE | the receiver competes for messages |
pn_terminus_type_t pn_terminus_get_type | ( | pn_terminus_t * | terminus | ) |
Get the type of a terminus object.
[in] | terminus | a terminus object |
int pn_terminus_set_type | ( | pn_terminus_t * | terminus, |
pn_terminus_type_t | type | ||
) |
Set the type of a terminus object.
[in] | terminus | a terminus object |
[in] | type | the terminus type |
const char* pn_terminus_get_address | ( | pn_terminus_t * | terminus | ) |
Get the address of a terminus object.
The pointer returned by this operation is valid until pn_terminus_set_address is called or until the terminus is freed due to its parent link being freed.
[in] | terminus | a terminus object |
int pn_terminus_set_address | ( | pn_terminus_t * | terminus, |
const char * | address | ||
) |
pn_distribution_mode_t pn_terminus_get_distribution_mode | ( | const pn_terminus_t * | terminus | ) |
Get the distribution mode of a terminus object.
[in] | terminus | a terminus object |
int pn_terminus_set_distribution_mode | ( | pn_terminus_t * | terminus, |
pn_distribution_mode_t | mode | ||
) |
Set the distribution mode of a terminus object.
[in] | terminus | a terminus object |
[in] | mode | the distribution mode for the terminus |
pn_durability_t pn_terminus_get_durability | ( | pn_terminus_t * | terminus | ) |
Get the durability mode of a terminus object.
[in] | terminus | a terminus object |
int pn_terminus_set_durability | ( | pn_terminus_t * | terminus, |
pn_durability_t | durability | ||
) |
Set the durability mode of a terminus object.
[in] | terminus | a terminus object |
[in] | durability | the terminus durability mode |
pn_expiry_policy_t pn_terminus_get_expiry_policy | ( | pn_terminus_t * | terminus | ) |
Get the expiry policy of a terminus object.
[in] | terminus | a terminus object |
bool pn_terminus_has_expiry_policy | ( | const pn_terminus_t * | terminus | ) |
Return true if the terminus has an explicit expiry policy set, false if it does not.
[in] | terminus | a terminus object |
int pn_terminus_set_expiry_policy | ( | pn_terminus_t * | terminus, |
pn_expiry_policy_t | policy | ||
) |
Set the expiry policy of a terminus object.
[in] | terminus | a terminus object |
[in] | policy | the expiry policy for the terminus |
pn_seconds_t pn_terminus_get_timeout | ( | pn_terminus_t * | terminus | ) |
Get the timeout of a terminus object.
[in] | terminus | a terminus object |
int pn_terminus_set_timeout | ( | pn_terminus_t * | terminus, |
pn_seconds_t | timeout | ||
) |
Set the timeout of a terminus object.
[in] | terminus | a terminus object |
[in] | timeout | the timeout for the terminus |
bool pn_terminus_is_dynamic | ( | pn_terminus_t * | terminus | ) |
Get the dynamic flag for a terminus object.
[in] | terminus | a terminus object |
int pn_terminus_set_dynamic | ( | pn_terminus_t * | terminus, |
bool | dynamic | ||
) |
Set the dynamic flag for a terminus object.
[in] | terminus | a terminus object |
[in] | dynamic | the dynamic flag for the terminus |
pn_data_t* pn_terminus_properties | ( | pn_terminus_t * | terminus | ) |
Access/modify the AMQP properties data for a terminus object.
This operation will return a pointer to a pn_data_t object that is valid until the terminus object is freed due to its parent link being freed. Any data contained by the pn_data_t object will be sent as the AMQP properties for the parent terminus object. Note that this MUST take the form of a symbol keyed map to be valid.
[in] | terminus | a terminus object |
pn_data_t* pn_terminus_capabilities | ( | pn_terminus_t * | terminus | ) |
Access/modify the AMQP capabilities data for a terminus object.
This operation will return a pointer to a pn_data_t object that is valid until the terminus object is freed due to its parent link being freed. Any data contained by the pn_data_t object will be sent as the AMQP capabilities for the parent terminus object. Note that this MUST take the form of an array of symbols to be valid.
[in] | terminus | a terminus object |
pn_data_t* pn_terminus_outcomes | ( | pn_terminus_t * | terminus | ) |
Access/modify the AMQP outcomes for a terminus object.
This operation will return a pointer to a pn_data_t object that is valid until the terminus object is freed due to its parent link being freed. Any data contained by the pn_data_t object will be sent as the AMQP outcomes for the parent terminus object. Note that this MUST take the form of an array of symbols to be valid.
[in] | terminus | a terminus object |
pn_data_t* pn_terminus_filter | ( | pn_terminus_t * | terminus | ) |
Access/modify the AMQP filter set for a terminus object.
This operation will return a pointer to a pn_data_t object that is valid until the terminus object is freed due to its parent link being freed. Any data contained by the pn_data_t object will be sent as the AMQP filter set for the parent terminus object. Note that this MUST take the form of a symbol keyed map to be valid.
[in] | terminus | a source terminus object |
int pn_terminus_copy | ( | pn_terminus_t * | terminus, |
pn_terminus_t * | src | ||
) |
Copy a terminus object.
[in] | terminus | the terminus object to be copied into |
[in] | src | the terminus to be copied from |