Qpid Proton C API  0.37.0
event.h File Reference

Protocol and transport events. More...

#include <proton/import_export.h>
#include <proton/type_compat.h>
#include <proton/object.h>
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct pn_event_t pn_event_t
 Notification of a state change in the protocol engine. More...
 

Enumerations

enum  pn_event_type_t {
  PN_EVENT_NONE , PN_REACTOR_INIT , PN_REACTOR_QUIESCED , PN_REACTOR_FINAL ,
  PN_TIMER_TASK , PN_CONNECTION_INIT , PN_CONNECTION_BOUND , PN_CONNECTION_UNBOUND ,
  PN_CONNECTION_LOCAL_OPEN , PN_CONNECTION_REMOTE_OPEN , PN_CONNECTION_LOCAL_CLOSE , PN_CONNECTION_REMOTE_CLOSE ,
  PN_CONNECTION_FINAL , PN_SESSION_INIT , PN_SESSION_LOCAL_OPEN , PN_SESSION_REMOTE_OPEN ,
  PN_SESSION_LOCAL_CLOSE , PN_SESSION_REMOTE_CLOSE , PN_SESSION_FINAL , PN_LINK_INIT ,
  PN_LINK_LOCAL_OPEN , PN_LINK_REMOTE_OPEN , PN_LINK_LOCAL_CLOSE , PN_LINK_REMOTE_CLOSE ,
  PN_LINK_LOCAL_DETACH , PN_LINK_REMOTE_DETACH , PN_LINK_FLOW , PN_LINK_FINAL ,
  PN_DELIVERY , PN_TRANSPORT , PN_TRANSPORT_AUTHENTICATED , PN_TRANSPORT_ERROR ,
  PN_TRANSPORT_HEAD_CLOSED , PN_TRANSPORT_TAIL_CLOSED , PN_TRANSPORT_CLOSED , PN_SELECTABLE_INIT ,
  PN_SELECTABLE_UPDATED , PN_SELECTABLE_READABLE , PN_SELECTABLE_WRITABLE , PN_SELECTABLE_ERROR ,
  PN_SELECTABLE_EXPIRED , PN_SELECTABLE_FINAL , PN_CONNECTION_WAKE , PN_LISTENER_ACCEPT ,
  PN_LISTENER_CLOSE , PN_PROACTOR_INTERRUPT , PN_PROACTOR_TIMEOUT , PN_PROACTOR_INACTIVE ,
  PN_LISTENER_OPEN , PN_RAW_CONNECTION_CONNECTED , PN_RAW_CONNECTION_CLOSED_READ , PN_RAW_CONNECTION_CLOSED_WRITE ,
  PN_RAW_CONNECTION_DISCONNECTED , PN_RAW_CONNECTION_NEED_READ_BUFFERS , PN_RAW_CONNECTION_NEED_WRITE_BUFFERS , PN_RAW_CONNECTION_READ ,
  PN_RAW_CONNECTION_WRITTEN , PN_RAW_CONNECTION_WAKE , PN_RAW_CONNECTION_DRAIN_BUFFERS
}
 An event type. More...
 

Functions

const char * pn_event_type_name (pn_event_type_t type)
 Get a human readable name for an event type. More...
 
pn_collector_tpn_collector (void)
 Construct a collector. More...
 
void pn_collector_free (pn_collector_t *collector)
 Free a collector. More...
 
void pn_collector_release (pn_collector_t *collector)
 Release a collector. More...
 
void pn_collector_drain (pn_collector_t *collector)
 Drain a collector: remove and discard all events. More...
 
pn_event_tpn_collector_put (pn_collector_t *collector, const pn_class_t *clazz, void *context, pn_event_type_t type)
 Place a new event on a collector. More...
 
pn_event_tpn_collector_peek (pn_collector_t *collector)
 Access the head event contained by a collector. More...
 
bool pn_collector_pop (pn_collector_t *collector)
 Remove the head event on a collector. More...
 
pn_event_tpn_collector_next (pn_collector_t *collector)
 Pop and return the head event, returns NULL if the collector is empty. More...
 
pn_event_tpn_collector_prev (pn_collector_t *collector)
 Return the same pointer as the most recent call to pn_collector_next(). More...
 
bool pn_collector_more (pn_collector_t *collector)
 Check if there are more events after the current head event. More...
 
pn_event_type_t pn_event_type (pn_event_t *event)
 Get the type of an event. More...
 
const pn_class_t * pn_event_class (pn_event_t *event)
 Get the class associated with the event context. More...
 
void * pn_event_context (pn_event_t *event)
 Get the context associated with an event.
 
pn_connection_tpn_event_connection (pn_event_t *event)
 Get the connection associated with an event. More...
 
pn_session_tpn_event_session (pn_event_t *event)
 Get the session associated with an event. More...
 
pn_link_tpn_event_link (pn_event_t *event)
 Get the link associated with an event. More...
 
pn_delivery_tpn_event_delivery (pn_event_t *event)
 Get the delivery associated with an event. More...
 
pn_transport_tpn_event_transport (pn_event_t *event)
 Get the transport associated with an event. More...
 
pn_record_t * pn_event_attachments (pn_event_t *event)
 Get any attachments associated with an event. More...
 
struct pn_condition_tpn_event_condition (pn_event_t *event)
 If the event context object has a condition and the condition is set return it, otherwise return NULL. More...
 

Detailed Description

Protocol and transport events.