OSI/AS Programming Manual

OSI Upper-Layer Concepts
APS Procedures Programming Concepts
056783 Tandem Computers Incorporated 2–15
Table 2-10. Procedures Giving Completion Information
Request Procedure Information Next Procedure
APS_ACTIVITY_ENDREQ_ Serial number APS_ACTIVITY_GETPARAM_
APS_ASSOC_ATTACH_ OSI address APS_ASSOC_GETPARAM_
APS_ASSOC_CONNECTREQ_ OSI addresses APS_ASSOC_GETPARAM_
APS_SYNC_MAJORREQ_ Serial number APS_SYNC_GETPARAM_
APS_SYNC_MINORREQ_ Serial number APS_SYNC_GETPARAM_
Receiving an Event When your application receives an indication or confirm primitive, it is said to be
“receiving an event.”
To be notified of an event, you must call APS_EVENT_RECEIVE_ , using the CEPI (the
connection endpoint identifier, described later in this section) to specify the
connection. When you receive an event, you then call APS_STATUS_ to find out
which primitive you have received. The procedures you should call next to retrieve
information about the event depend on the primitive you have received. See Table 2-2
for the procedures to call to retrieve information after an indication primitive, and
Table 2-4 for the procedures to call to retrieve information after a confirm primitive.
Note that only one call to APS_EVENT_RECEIVE_ can be outstanding at any one time
to a particular CEPI. This means that if you have called APS_EVENT_RECEIVE_ in
nowait mode, you cannot call APS_EVENT_RECEIVE_ again until the first call
completes.
Exception Reports Exception reports indicate that a problem has occurred on the connection. They can
be issued by a user or by the service provider. For example, you issue an exception
report if you receive data in the wrong sequence. When you issue an exception report,
all undelivered data is lost.
Sending Exception Reports
To issue an exception report, call APS_EXCEPTIONREQ_ as described in Section 3.
Handling Incoming Exception Reports
You receive incoming exception reports as events that show the receipt of a provider
exception report indication or a user exception report indication.
If you receive such an event, you should call APS_SYNC_GETPARAM_ to get the
reason for the exception. If the event is a user exception report, you should also call
APS_DATA_GETPARAM_ to get any user data that the remote user has sent with the
exception report. You should then take action to clear the exception, using the
exception reason code as a guide.