Print Friendly  .  About this website   .  Search 

 

 

 

Index Data  >  YAZ  >  YAZ User's Guide and Reference  >  Events

Events

If you're developing non-blocking applications, you have to deal with events.

    int ZOOM_event(int no, ZOOM_connection *cs);
   

The ZOOM_event executes pending events for a number of connections. Supply the number of connections in no and an array of connections in cs (cs[0] ... cs[no-1]). A pending event could be a sending a search, receiving a response, etc. When an event has occurred for one of the connections, this function returns a positive integer n denoting that an event occurred for connection cs[n-1]. When no events are pending for the connections, a value of zero is returned. To ensure that all outstanding requests are performed call this function repeatedly until zero is returned.

If ZOOM_event returns and returns non-zero, the last event that occurred can be expected.

    int ZOOM_connection_last_event(ZOOM_connection cs);
   

ZOOM_connection_last_event returns an event type (integer) for the last event.

Table 3.10. ZOOM Event IDs

Event Description
ZOOM_EVENT_NONE No event has occurred
ZOOM_EVENT_CONNECT TCP/IP connect has initiated
ZOOM_EVENT_SEND_DATA Data has been transmitted (sending)
ZOOM_EVENT_RECV_DATA Data has been received)
ZOOM_EVENT_TIMEOUT Timeout
ZOOM_EVENT_UNKNOWN Unknown event
ZOOM_EVENT_SEND_APDU An APDU has been transmitted (sending)
ZOOM_EVENT_RECV_APDU An APDU has been received
ZOOM_EVENT_RECV_RECORD A result-set record has been received
ZOOM_EVENT_RECV_SEARCH A search result been received